Les avancées de l'IA annoncent des changements dans le codage
L'avenir du développement logiciel et de l'intégration de l'intelligence artificielle soulève de nombreuses questions, notamment sur leur plein potentiel et l'impact sur les rôles humains.
5 minutes
7th of August, 2024

Cet article a été initialement publié dans Thinkers & Makers, le magazine d'Akkodis dédié à la Smart Industry.
Le lancement très médiatisé du premier ingénieur logiciel en IA au monde pourrait marquer le début d'une convergence entre l'IA et le développement logiciel, déclare Danny Hucke, chef d'équipe et ingénieur logiciel chez Akkodis en Allemagne. Mais cela soulève également de nombreuses questions.
Hucke est titulaire d'un doctorat en informatique théorique de l'Université de Siegen, en Allemagne, et s'intéresse de près à l'IA, tant sur le plan théorique que pratique. Il est donc particulièrement bien placé pour évaluer le potentiel de l'outil Devin, lancé en mars par la start-up de la Silicon Valley, Cognition AI.
Son rôle consiste à créer et à mettre en œuvre des solutions d'IA. Il fait également office d'interlocuteur entre Akkodis et le monde de la recherche académique, ce qui lui permet de rester informé des avancées théoriques.
Le lancement de Devin a attiré son attention – et celle de toute la communauté des développeurs. Pour l'heure, il reste difficile d'évaluer pleinement le potentiel de l'outil en matière de codage, précise Hucke. Quoi qu'il en soit, Cognition AI n'est pas isolé : des agents logiciels alimentés par l'IA émergent de tous côtés. Ils représentent l'avenir. Mais cet avenir, c'est maintenant.
Réduire les problèmes en sous-tâches
Le fait que Cognition AI se concentre sur le raisonnement, plutôt que sur le simple codage, est fascinant, explique Hucke. Ici, l'accent sur le raisonnement se définit comme la capacité d'un système à réfléchir à un problème et à le diviser en sous-tâches plus petites et plus faciles à résoudre.
« Le codage est une application très pure du raisonnement, comparé à la complexité d'interagir avec les humains et de résoudre des problèmes concrets. En matière de codage, les problèmes à résoudre sont précisément définis. Ainsi, le codage constitue l'approche initiale pour aborder la question plus large de la mise en œuvre du raisonnement avec des systèmes d'IA. »
Le système doit également être capable de détecter et de corriger ses erreurs. Hucke compare le modèle de langage à grande échelle (LLM) intégré au système à une intelligence brute. Le concept de raisonnement revient à construire un cerveau autour de cette intelligence pour qu'elle fonctionne correctement.
Daniel Hucke – Chef d'équipe et ingénieur logiciel, Akkodis Allemagne
S'agit-il d'une IA générale ?
Cela correspond à la définition de l'Intelligence Artificielle Générale (IAG), un type d'IA capable de performer au même niveau, voire mieux, que les humains sur diverses tâches cognitives. De nombreux scientifiques affirment que l'IAG est encore loin, mais Hucke n'en est pas si sûr.
« Nous ne savons vraiment pas. Le rythme est tellement effréné que plus personne ne peut formuler d'hypothèses raisonnables sur l'avenir de l'IA. Dans deux ans, nous pourrions voir l'IA atteindre des sommets et stagner jusqu'à une nouvelle percée, ou peut-être n'y parviendrons-nous jamais. »
D'un autre côté, il ajoute : « Il se pourrait aussi que nous disposions de systèmes d'IAG d'ici quelques années. Nous ne le savons tout simplement pas. »
L'ingrédient magique
Hucke n'est pas en train de couronner Devin comme le nouveau roi du codage – du moins, pas encore. L'outil possède un ingrédient magique : des agents, c'est-à-dire des programmes logiciels conçus pour recevoir des données de leur environnement et agir en fonction de celles-ci.
Les systèmes d'agents peuvent diviser les problèmes en parties plus petites et travailler sur chacune d'elles séparément, apprenant de leurs erreurs avant de reconstituer le tout pour résoudre le problème initial. Cela les distingue des systèmes de type ChatGPT, qui abordent immédiatement la problématique.
De plus, ces systèmes peuvent utiliser des outils, comme un navigateur capable de rechercher sur Internet des informations sur le problème à résoudre. Ils peuvent également écrire du code et l'exécuter. Si un système d'agent ne fonctionne pas correctement, il peut détecter et corriger ses erreurs.
Plusieurs projets open-source travaillent sur des solutions similaires. Les avancées dans ce domaine proviennent tant d'entreprises propriétaires, comme Cognition AI, que de la communauté open-source, sans oublier des géants tels que Microsoft et Google.
Mis à part l'IAG, le potentiel des agents d'IA spécialisés dans des tâches spécifiques, capables de surpasser les humains dans des activités comme le codage, est énorme. Hucke affirme que cette perspective est bien plus proche que ce que l'on imaginait il y a quelques années.
La nouvelle du lancement de Devin a été une surprise. « En tant qu'ingénieur logiciel et passionné d'IA, je me prépare à ce qui s'en vient, mais cette annonce m'a tenu sur le qui-vive », confie-t-il.
« À l'avenir, les programmeurs se concentreront davantage sur des tâches stratégiques. Par ailleurs, nous aurons besoin de compétences complémentaires, comme celles des philosophes, linguistes et logiciens. »
Daniel Hucke – Chef d'équipe et ingénieur logiciel, Akkodis Allemagne
Le changement est en marche
Les détails du système n'ont pas encore été rendus publics. Bien qu'il excelle dans la résolution de certains types de problèmes, il n'est pas capable de traiter de manière autonome des problèmes complexes. Il est donc trop tôt pour déclarer Devin le Saint Graal de l'ingénierie logicielle par IA. Cependant, Hucke est convaincu que son métier, ainsi que celui de nombreux autres ingénieurs logiciels, est voué à une transformation profonde.
« À l'avenir, les humains travailleront avec une équipe de bots ou d'agents. Nous nous chargerons de la planification, de l'architecture et des échanges avec les parties prenantes. La vision d'ensemble sera de notre ressort, tandis que les agents d'IA se chargeront des tâches de codage. »
Les humains resteront là pour réviser et corriger, mais leur rôle en matière de codage diminuera. « À l'avenir, les programmeurs se concentreront davantage sur les aspects stratégiques. De plus, nous aurons besoin de compétences complémentaires, comme celles des philosophes, linguistes et logiciens. J'ai lu que, dans le futur, le diplôme universitaire le plus rentable serait un master en anglais, car nous communiquons avec ces modèles d'IA via le langage. Je ne suis pas certain de la véracité de cette affirmation, mais il y a peut-être matière à réflexion. »
Une nouvelle ère du travail en équipe
Hucke ne suggère pas que chaque développeur doive retourner sur les bancs de l'école pour obtenir un diplôme avancé en langue anglaise. Toutefois, il estime qu'un changement profond s'annonce pour les équipes de développement logiciel partout dans le monde. La nature du travail en équipe va évoluer : il faudra s'adapter à l'utilisation d'outils de codage basés sur l'IA et aborder les problèmes sous un angle différent.
« Ma démarche face à ce défi est d'utiliser les outils d'IA autant que possible, même si je sais que je pourrais terminer une tâche plus rapidement autrement. Si je ne m'en sers que pour les problèmes qui me mettent mal à l'aise, je ne pourrai pas vraiment mesurer leur efficacité. Connaître exactement le résultat attendu me permet d'évaluer ce que l'IA fait de bien et ce qui peut être amélioré. Cela me donne l'occasion d'apprendre à optimiser ses performances. »