Depuis la sortie le 29 juin 2021 de Copilot, l'intelligence artificielle de Github, le logiciel est devenu un sujet de débat chez les développeurs. Est-il réellement une révolution pour les développeurs ? Va t-il nous remplacer ? Peut-on réellement faire confiance à cet assistant ?
Avec l'aide d'OpenAI, GitHub a développé un outil qui pourrait bien révolutionner le monde du développement. GitHub Copilot est une intelligence artificielle qui est capable de générer des lignes de code et de proposer des fonctions entières. Une extension a été créée pour aider les utilisateurs de Visual Studio Code en complétant automatiquement le code.
Le but de cet IA n'est pas de remplacer les développeurs, mais d’améliorer leur productivité et même de faciliter l'apprentissage du code. L’outil fonctionne avec Python, JavaScript, TypeScript, Ruby et Go et d’autres langages de programmation.
L'algorithme de GitHub Copilot fonctionne sur l’intelligence artificielle Codex , qui a été développée par OpenAI. Selon les deux sociétés à l'origine de cette intelligence artificielle, l’assistant a été entraîné sur des milliards de lignes de code en Open Source, dont de nombreuses sont par ailleurs hébergées et disponibles sur GitHub.
Voici comment fonctionne l’outil: lorsque vous écrivez du code pour développer un site web, GitHub Copilot vous propose la suite avec précision en suggérant du code au fur et à mesure que vous codez. Vous pouvez évidemment parcourir les suggestions pour décider de les accepter ou de les rejeter.
L'intelligence artificielle a parfait son sens de l'analyse. GitHub Copilot comprend la signification du code que vous écrivez afin de pouvoir vous proposer une suite logique. GitHub va nourrir son intelligence artificielle pour soumettre des suggestions. Par exemple, un serveur dans un restaurant proposant des plats au menu, le client est roi. Libre à vous de choisir ce qui vous convient le mieux.
Dans le cas où vous commencez à utiliser un nouveau langage, ou même si vous avez l’habitude d’utiliser des outils sans code ou en low code, ce genre d’intelligence artificielle vous sera très utile. Autrement dit, même si vous n’êtes pas un expert en développement web, si le code n’est pas votre tâche principale, GitHub Copilot peut être votre meilleur allié et vous faire gagner du temps.
Cette technologie a également son intérêt pour les développeurs en général. A titre d’exemple, si vous travaillez avec un nouveau framework, vous n’allez pas avoir besoin de lire la documentation dans son entièreté. GitHub Copilot connaît déjà les fonctions et les caractéristiques spécifiques de votre framework. Ce qui vous fera gagner un temps précieux. Il est également à noter que Copilot s'intègre directement à Visual Studio Code et peut être installé comme une extension ou être utilisé dans le cloud avec GitHub Codespaces.
Peu importe la manière dont vous codez, GitHub Copilot s'adaptera à votre manière de faire. Si vous rejetez plusieurs recommandations, l'intelligence artificielle le prendra en compte pour éviter de refaire les mêmes erreurs par la suite.
Le principe général de cette IA pose également un problème légal et éthique car Github a utilisé le code Open Source disponible sur sa plateforme. Le problème est que le code disponible sur la plateforme n'est pas nécessairement libre d'utilisation. Ce qui nous laisse perplexe quant au droit et à la possibilité d’exploiter le code des dépôts hébergés sur sa plateforme. Cela pose également problème du côté utilisateur qui pourrait se voir suggérer par inadvertance du code qui serait sous licence sans le savoir. Ce qui pourrait entraîner une violation du droit d’auteur.
Sujet qui suscite de l’agitation chez les développeurs, Github précise qu'une partie de votre code est envoyé sur leur serveur pour être utilisé comme contexte pour l'intelligence. Toutefois, si vous travaillez sur un fichier qui contient des données sensibles, ces données pourraient se retrouver sur les serveurs de Github et ainsi être exploitées par quelqu'un de mal intentionné. Une version en local sera probablement disponible dans les mois à venir afin de régler ce souci de sécurité.
Pour finir, le dernier problème qui questionne ses utilisateurs est la possibilité d’obtenir du “mauvais” code ou du code qui contient des failles de sécurité. Selon une étude de l’outil d'auto-complétion de VS Code, les développeurs doivent rester attentifs lorsque Copilot est activé, car ils font face à un taux de code défectueux de 40 %. En plus de cela, il est à noter que Copilot est dans l’incapacité à aller chercher du contexte au-delà du fichier sur lequel nous travaillons. Et même à exploiter pleinement ce fichier s’il est trop long.
Pour plus de renseignements à ce sujet, nous vous invitons à faire un tour sur “GitHub”.