Comment l’IA et le big data pourraient sauver les sociétés pétrolières et gazières des crises

Le logiciel est de plus en plus construit par l’IA, il est donc essentiel de savoir si on peut faire confiance

Le logiciel est omniprésent, alimentant presque tous les aspects de notre vie. Les systèmes informatisés de votre voiture intègrent à eux seuls des dizaines de millions de lignes de code. La transformation numérique croissante de notre société signifie que la demande de logiciels plus et de meilleure qualité devrait se poursuivre à l’avenir.

Le dilemme est qu’il n’y a pas assez de programmeurs humains pour créer tous ces logiciels. Cela signifie que de plus en plus du logiciel que vous utilisez chaque jour est construit avec l’aide de l’intelligence artificielle (IA).

Les développeurs de logiciels connaissent déjà très bien des outils tels que GitHub Copilot, une sorte de chatppt pour les programmeurs. Cela fonctionne quelque chose comme un outil de saisie semi-automatique intelligente pour augmenter la productivité des programmeurs humains.

Mais nous assistons maintenant à une révolution plus radicale, où les «agents» de l’IA sont prêts à effectuer de nombreux types de tâches de développement au nom des programmeurs humains. Les agents sont des programmes qui utilisent l’IA pour effectuer des tâches et atteindre des objectifs spécifiques pour un utilisateur humain. Les agents de l’IA peuvent apprendre et prendre des décisions avec un certain niveau d’autonomie, bien qu’ils soient toujours sous la supervision humaine – pour maintenant.

Nous prévoyons que dans un avenir proche, de nombreuses applications logicielles seront entièrement construites par des agents de l’IA. Les systèmes «agents» sont des communautés d’agents d’IA coopérant ensemble, chacune spécialisée dans la résolution d’un type spécifique de tâche. Avec un système agentique, vous pouvez générer une application logicielle à partir d’une description en anglais simple de ce que vous souhaitez que l’application fasse.

Cela a des impacts positifs potentiels. Les systèmes agentiques pourraient autoriser les utilisateurs sans compétences en programmation logicielle pour créer ou adapter des logiciels à leurs besoins. Il y a aussi des conséquences négatives potentielles. Les agents sont loin d’être parfaits et ils peuvent facilement générer du code vulnérable aux attaques, n’est pas efficace ou est biaisé contre certaines communautés.

Par exemple, un logiciel d’agent de recrutement de construction peut favoriser les hommes aux candidats féminines en raison de biais dans les données utilisées pour former ou améliorer le logiciel. Par conséquent, nous devons mettre en place des mécanismes pour minimiser ces risques, comme l’exige les réglementations de l’IA telles que la loi sur l’IA de l’UE.

Les chercheurs relèvent d’abord ce défi en testant intensivement les LLM (modèles de grande langue) qui sont au cœur de tout agent. Un LLM est un système d’IA formé sur des quantités massives de données. Les agents comptent sur leur LLM interne pour prédire et générer la meilleure réponse à une demande utilisateur.

En évaluant tous les principaux LLM contre un certain nombre de préoccupations telles que la précision, les vulnérabilités de sécurité et les biais, les développeurs de logiciels peuvent choisir le meilleur LLM pour un agent d’IA. Cela dépendrait des tâches spécifiques dans lesquelles l’agent serait impliqué.

Cela permet d’assurer une certaine quantité de comportement éthique chez les agents. Mais comment pouvons-nous être sûrs de comprendre et de suivre nos instructions? Notre solution consiste à partir des plans (les conceptions) du logiciel à construire.

D’une manière générale, il est possible de comprendre les plans d’une maison même si vous n’êtes pas architecte. De même, si nous rendons un plan du logiciel aussi facile à comprendre que possible, les utilisateurs sans compétences avancées de développement de logiciels devraient être en mesure de saisir les concepts et comment apporter des modifications.

À partir de la description initiale de l’utilisateur, l’agent ou les agents de l’IA proposeraient un plan détaillé d’une solution potentielle et l’expliquerait à l’utilisateur en anglais simple. L’utilisateur pourrait alors le valider ou demander des améliorations. Ce n’est qu’après la validation finale que l’application logicielle serait automatiquement générée à partir du plan.

Cette façon de créer des logiciels est connue sous le nom de développement à faible code ou sans code, car la plupart du code (tout pour certaines applications) est généré par l’ordinateur à partir des plans, au lieu d’être manuscrits par un humain à partir de zéro. Notre plate-forme Besser open source vous aide à créer des applications de cette manière.

Comme l’a observé l’auteur de science-fiction Arthur C Clarke: « Toute technologie suffisamment avancée est indiscernable de la magie. » Et assez tôt, cette magie fera partie de notre vie quotidienne. Nous devons simplement faire attention que la magie ne se transforme pas en sorcellerie avec le potentiel de perturber, plutôt que de s’améliorer.

Nous, et de nombreux autres chercheurs, nous travaillons à mettre des garde-corps (mécanismes pour prévenir les dommages potentiels) sur le comportement des agents de l’IA pour les garder en échec. Cela aiderait à transformer chaque citoyen en un développeur capable avec le pouvoir de construire de manière autonome les solutions logicielles idéales pour leurs entreprises ou d’autres aspects de leur vie.