Au début de l’été, GitHub a présenté en préversion technique limitée un outil d’aide à l'écriture de code baptisé Copilot. Dans un premier temps, celui-ci vient s'intégrer avec l’environnement de développement Visual Studio Code. Cet outil a été créé avec le laboratoire en intelligence artificielle OpenAI (co-fondé par Elon Musk) qui a sorti le 10 août une version API de Codex, le modèle d’IA sur lequel s’appuie Copilot.

Codex est un système d’IA qui traduit le langage naturel en code. « Nous le livrons à travers une API en version bêta privée », a indiqué OpenAI dans un billet en ajoutant que Codex maîtrisait plus d’une douzaine de langages de programmation. « Codex peut maintenant interpréter des commandes simples en langage naturel et les exécuter pour l’utilisateur, ce qui permet de créer une interface en langage naturel pour les applications existantes ». Les développeurs qui peuvent pouvoir en tester l’API peuvent s’inscrire sur une liste d’attente

Dans une vidéo sur YouTube, l'équipe d'OpenAI propose une démonstration de Codex.

Issue de GPT-3

Codex vient de l’API GPT-3 d’OpenAI, lancée il y a un an. Celle-ci est utilisée pour des applications de recherche, de conversation et de complétion de texte. C’est avec le langage Python qu’il fonctionne le mieux, mais il peut aussi être utilisé avec une douzaine de langages dont JavaScript, Go, PHP, Ruby, Swift et TypeScript. Codex dispose de la compréhension du langage naturel de GPT-3 tout en produisant du code fonctionnel. Il apporte un modèle de programmation d’usage général et peut être pratiquement appliqué à n’importe quelle tâche de programmation. OpenAI l’a utilisé pour la conversion de code source, l’explication de code et la restructuration de code. 

Copilot, l’outil conçu en collaboration entre GitHub et OpenAI a suscité certaines réactions lors de sa présentation. En particulier, la Free Software Foundation a pointé le fait qu’il nécessitait l’utilisation d’un logiciel, en l’occurrence Visual Studio Code ou bien de Visual Studio, qui ne sont pas libres.