Devenus une denrée rare, les développeurs seront-ils un jour remplacés par une IA ? La question mérite d’être posée avec la présentation du système AlphaCode de Deepmind. Le spécialiste de l’intelligence artificielle se lance dans l’aventure de la programmation autonome. Dans un blog, la filiale de Google explique avoir mis au point un système capable « d’écrire du code à un niveau de compétition ».

Ce dernier point est important, car Deepmind aime bien éprouver ses modèles d’IA aux humains lors de compétitions. Dans ce cadre, AlphaCode a été inscrit à des concours de programmation réalisés par la plateforme Codeforces. Le jeu est simple, un problème est posé et le développeur doit créer un programme pour le résoudre. AlphaCode a participé à une dizaine de tests pour connaître son niveau. En général, ces exercices consistent à placer des immeubles et des routes avec des contraintes. Il s’est finalement révélé un développeur moyen. Un résultat qui satisfait Deepmind pour un premier essai.

Une concurrence rude et des questions

En levant le voile sur AlphaCode, Deepmind entre en concurrence avec Copilot de GitHub (filiale de Microsoft) et de CodeT5 de Salesforce. Le premier a été le pionnier en s’appuyant sur l’API Codex d’OpenAI (le laboratoire d’intelligence artificielle d’Elon Musk) pour créer un assistant à la programmation. Le second se sert du framework T5 développé par Google. La compétition est donc rude sur ce marché de l’automatisation du code qui soulève plusieurs questions.

Parmi elles, il y a l’interrogation sur la fiabilité du code. Des chercheurs ont évalué par exemple le code généré par Copilot et ont constaté que le système reproduisait des bugs contenus dans les projets GitHub sur lesquels il a été entraîné. Des associations comme la FSF (Free Software Fondation) avaient dénoncé le lancement de Copilot, en s’interrogeant sur son équité, sa légitimité et sa légalité. Reste à savoir la position des développeurs eux-mêmes qui peuvent voir dans les assistants à base d’IA, une aide ou au contraire un adversaire.