🔴 Soldes : jusqu'à - 70% sur le high-tech 🔴 Soldes d'hiver : jusqu'à - 70% sur le high-tech

GitHub lance Copilot, une fonctionnalité d'aide au développement basée sur l'intelligence artificielle

30 juin 2021 à 17h23
7
Github logo
© GitHub

GitHub et OpenAI ont présenté leur nouvel outil pour les développeurs, Copilot.

Copilot est décrit comme une aide à la programmation qui interprète le contexte d'un code et des commentaires écrits précédemment pour faire des suggestions afin de les compléter.

Du code généré automatiquement à partir de commentaires

Copilot est, comme son nom l'indique, une aide à la programmation censée simuler une sorte de pair programming. Développé à l'aide d'OpenIA, le programme a été entraîné grâce à des milliards de lignes de code public et est censé pouvoir comprendre le contexte d'un code écrit par un développeur pour lui faire des suggestions.

Dans les exemples donnés par GitHub, on peut voir un commentaire décrivant la logique d'une fonction et le nom de celle-ci être interprétés par Copilot, qui propose alors des lignes de code pour créer la fonction en question.

Il peut également être utilisé pour générer automatiquement du code répétitif ou même des tests de fonctions créées précédemment, et si la première suggestion ne convient pas, il est possible d'en choisir facilement une autre.

Il faut noter que pour le moment, Copilot ne comprend que l'anglais et que les commentaires et les noms des fonctions devront donc être écrits dans cette langue pour pouvoir être interprétés. GitHub indique qu'il fonctionne particulièrement bien avec JavaScript, TypeScript, Python, Ruby et Go, mais qu'il comprend des douzaines de langages de programmation.

Des fonctionnalités encore imparfaites

Si les promesses sont impressionnantes, il faut tout de même garder en tête que Copilot n'a pas vocation à remplacer les développeurs. Ayant été entraîné sur du code public et ne pouvant pas pour le moment tester ses suggestions lui-même, il est possible que ses propositions contiennent des erreurs, voire du code déprécié et qui peut poser des problèmes de sécurité. Il est donc nécessaire de les vérifier et de les tester avant de les utiliser en production. De plus, il n'est pour le moment pas capable que d'interpréter ce qui a été écrit sur le fichier en cours de modification.

Quant aux questions de droits, les développeurs pourront d'utiliser tout code généré par le programme sans avoir à le créditer et celui-ci leur appartiendra. De plus, des tests ont été réalisés pour s'assurer qu'il ne copiait pas du code provenant de son entraînement et GitHub a trouvé qu'il ne le faisait que dans 0,1 % des cas.

Pour le moment, Copilot est disponible en tant qu'extension de Visual Studio Code pour un nombre limité de testeurs. Si vous souhaitez en faire partie, il est nécessaire de s'inscrire sur GitHub. Si les tests sont concluants, Copilot deviendra une fonctionnalité payante.

Sources : The Hacker News, GitHub

Soyez toujours courtois dans vos commentaires.
Respectez le réglement de la communauté.
7
8
xryl
Bon article qui évoque bien les problématiques d’un tel logiciel. Merci Fanny!
Cynian90
Je viens de quitter mon cursus de software engineer, tout est fini, je me reconvertis dans le marketing parce qu’il y aura toujours des pigeons prêts à être manipulés
clockover
L’intelligence artificielle est sans doute bien plus efficace pour ça.
benben99
Cela va juste faire que la nouvelle génération de programmeur va encore faire du code plus merdique.<br /> Déjà, avec l’arrivée des garbage collectors dans plusieurs langages, et la montee en puissance des ordinateurs, il y en plein de «&nbsp;programmeurs&nbsp;» qui se sont mis a ne plus se soucier de faire du bon code, performant et leger.
Proutie66
Ben tant mieux pour toi ?<br /> SI tu fais du code performant et superbe, tu seras payer plus cher.<br /> Oh, wait…
ARTUSA
On dirait mon arrière grand père qui parle de combien l’assembleur c’était tellement mieux. Il y a toujours eu des codeurs qui ne se sont jamais soucié de faire du bon code, des titres AAA de jeux vidéos ont toujours eu des problèmes de gestion de mémoire par exemple. Aujourd’hui, même les titres amateurs gèrent un minimum bien leur mémoire grâce aux développements que tu dénonce, et rien n’empêche d’optimiser pour ceux qui le veulent. Il y a du bon dans l’abstraction.<br /> D’ailleurs, le niveau des développeurs ne devrait qu’augmenter : il y aura de moins en moins besoin de développeurs, donc une compétition bien plus féroce, ceux qui disent le contraire sont des moutons qui répètent la version officielle qu’on aura besoin de + en + de codeurs parce qu’ils basent tout leur raisonnement sur une seule statistique qui est le nombre de développeurs total, alors que la programmation a toujours été le premier secteur à se faire automatiser, pensons frameworks, plateformes génériques type Prestashop, API qui fournit un service qui était codé atomiquement auparavant… et le problème central est qu’il n’y a pas une infinité de services à créer.
sebstein
Stupide.<br /> Avec ou sans les GC, le problème est le même…<br /> Si la GC gère parfaitement le mémoire, ne plus s’en soucier n’est pas un problème et, dans le cas contraire, si la GC ne la gère pas parfaitement, ne pas s’en soucier est problématique puisqu’il y aura aussi des fuites de mémoire (pire, puisqu’elle le gère dans 99% des cas, il sera encore plus compliqué de déterminer d’où provient la fuite).<br /> Conclusion, avec ou sans GC, le problème est le même…
benben99
Ça montre que tu ne connais que peu de chose en gestion mémoire, et même en programmation. Un garbage collector est pratique car ca sauve du temps effectivement pour le programmeur et il n’a pas à faire son travail de débogger mais performance, non ce n’est pas efficient. Prend l’exemple du Java. La mémoire augmente sans cesse en acumulant des références à des objets «&nbsp;morts&nbsp;» puis quand c’est limite, le GC se met à faire le ménage en passant à travers les références, ce qui ralentit le programme considérablement et fait des pics de mémoire ridiculement élevés. Si tu sais ce que tu fais, gérer la mémoire n’est pas si sorcier, tout comme faire du bon code.<br /> C’est pourquoi pour revenir au sujet, ce genre de truc Github Copilot va pondre du code non efficient que les progammeurs en herbe vont se mette a utiliser plutôt que de résoudre eux-même le problème et pondre du code efficient.<br /> Apres on va voir des logiciels usine a gaz qui consomment des resources incroyables.<br /> Prend lexemple d’un logiciel mal codé… J’ai téléchargé Markdown Pad 2 . Le truc fait 82 mégaoctets + requierts d’installer .net etc. tout ça pour un éditeur de texte ridiculement simple. Si cela avait été bien codé, ca ne dépasserait pas quelques mégaoctets. Le type qui a pondu cette bouse s’est dit qu’il allait sauver du temps avec .net et un tas de librairies, mais son éditeur de texte est devenu une usine à gaz.<br /> Bref, c’est pour ça que je me méfie de Copilot. Le type qui va utiliser ca, va juste devenir paresseux.
sebstein
L’exemple type d’un gars qui aime prendre les autres de haut, mais est loin de valoir mieux…<br /> En quoi ce que je dis prouve que je ne «&nbsp;connais pas grand chose en gestion mémoire, ni même en programmation&nbsp;» ?
benben99
sebstein:<br /> L’exemple type d’un gars qui aime prendre les autres de haut, mais est loin de valoir mieux…<br /> En quoi ce que je dis prouve que je ne « connais pas grand chose en gestion mémoire, ni même en programmation » ?<br /> Fais un peu d’assembleur et de C++ pendant quelques années, lis les livres de Donal Knuth, algorithmiques et optimise ton code au lieu de juste faire du code qui fonctionne et tu vas apprendre beaucoup, puis va lire une couple de bouquins sur les GC et vu vas voir qu’un GC est pratique, mais que c’est loin d’être efficient.<br /> La réalité est que 3 quarts des programmeurs aujourd’hui ne savent pas coder de façon efficiente, et bien souvent ne comprennent même pas le hardware qu’ils utilisent.
sebstein
On se connaît ? Tu sais quoi de ce que je fais et connais ? Tu as déjà vu mon code ? On a tous les deux les réponses à ces questions, elles sont toute négatives… dès lors, pourquoi tu me parles comme si ce n’était pas le cas ? Ce que j’exècre ces gens qui penses tout savoir sur tout…
Blackalf
On se calme et on reste dans le sujet.
Voir tous les messages sur le forum

Derniers actualités

Lara Croft bientôt de retour dans une série Tomb Raider !
Samsung dévoile le premier écran plat Mini-LED pour joueurs, et il ne fait pas les choses à moitié
Profitez dès maintenant de ce kit RAM Corsair à son prix le plus pendant les soldes d'hiver !
Epic fail : un voleur se prend en selfie avec un iPhone fraîchement dérobé… et se fait arrêter
Vous avez vu ? L'app Google se fait une beauté sur Android !
Surveillance : comment ces vêtements peuvent vous invisibiliser aux yeux de la reconnaissance faciale
Faites vos valises ! Des hôtels e-sport en Chine s'équipent en GeForce RTX 4090
Sous la pression d’avocats humains, l'intelligence artificielle ne pourra finalement pas plaider
Xavier Niel : pourquoi le fondateur de Free veut investir dans Brut
Comprendre les avantages d'un VPN : voici un guide pour les débutants
Haut de page