Les modèles de langage sont souvent perçus comme d’ excellents générateurs de texte. Cet engouement pour les capacités littéraires des modèles ne doit cependant pas faire oublier que leur vraie promesse se situe dans leurs capacités cognitives plus abstraites comme le raisonnement et la planification.
Ces dernières sont encores imparfaites mais les progrès constants dans le domaine laissent entrevoir un nouveau domaine d’ application aux possibilités presque infinies : les agents.
Les êtres humains sont remarquables dans leur capacité à absorber constamment de nouvelles informations, prendre des décisions, exécuter des actions, puis observer l’ impact de ces actions pour prendre de nouvelles décisions. Notre vie peut se voir -de manière un peu réductrice- comme un cycle sans fin d’ observations, de raisonnements et d’ actions.
L’ idée des agents est précisément de mettre en place des cycles similaires au coeur desquels on trouve un modèle de langage à la place d’ un être humain. Cet agent interagira avec l’environnement soit de manière physique (robotique, véhicule autonome…), soit de manière informatisée (appels de fonction via interface de programmation).
1. Composants d’un agent
Au cœur de l’ agent intelligent se trouve le modèle de langage, un élément crucial qui analyse les situations et suggère des actions. Ce modèle est soutenu par une variété de modules qui facilitent sa communication avec l’extérieur.
Pour tirer pleinement parti de ses capacités, le modèle de langage doit être sollicité de manière précise, une pratique connue sous le nom de prompt engineering. À travers des consignes méticuleusement élaborées, on définit l’ identité, l’ expertise et la conduite du modèle, en y intégrant contexte, paramètres et parfois des indications sur le rôle spécifique à jouer dans des simulations multi-agents, un sujet dont nous reparlerons plus bas.
La capacité de raisonnement du modèle repose sur une connaissance approfondie du monde, structurée autour de trois piliers :
- la connaissance générale, acquise lors de l’ entraînement initial sur un vaste corpus textuel, fournit une base solide;
- la connaissance spécialisée, qui vient enrichir la base générale avec des notions, des méthodes de raisonnement et un vocabulaire spécifique au domaine d’ application;
- la connaissance procédurale, qui équipe le modèle des savoirs nécessaires pour agir sur l’ environnement extérieur, comme connaître et comprendre les paramètres des interfaces de programmation.
Ces connaissances sont transmises au modèle via diverses techniques de mémorisation, telles que le contexte des prompts, la récupération augmentée de génération (RAG) et l’affinage. Pour en savoir plus sur ces méthodes, je vous renvoie à mon article précédent, disponible ici.

Dans la grande majorité des cas, l’ agent comprend également une interface utilisateur, permettant une interaction directe avec l’ humain pour recevoir des missions, rapporter les résultats, poser des questions ou fournir des mises à jour intermédiaires.
Enfin, les interfaces de programmation (API) constituent un élément clé, permettant au modèle d’ interagir avec le monde extérieur. Elles peuvent servir de sources d’ information ou de moyens d’ action, comme l’ accès à des moteurs de recherche en ligne ou à des plateformes de commerce électronique pour effectuer des réservations ou passer des commandes.
2. Exemples d’ application
Après avoir exploré l’architecture de l’agent, intéressons-nous à certains cas d’ application emblématiques :
Prenons d’ abord l’ exemple de l’ agent de programmation, qui illustre parfaitement l’ utilisation des capacités des modèles de langage dans le domaine informatique. Voici comment il opère : un utilisateur soumet une requête de programmation au modèle, qui génère ensuite du code. Ce code est exécuté dans un environnement dédié, et le modèle reçoit en retour le résultat de cette exécution, ou un message d’ erreur si le programme ne fonctionne pas comme prévu. Le modèle peut alors renvoyer le code généré à l’ utilisateur, ou le retravailler et le soumettre à nouveau, jusqu’à obtenir un résultat satisfaisant.

Approfondissons l’ idée pour construire un processus professionnel de développement logiciel, où divers acteurs jouent des rôles spécifiques : directeur, responsable produit, architecte technique, chef de projet, développeur, testeur… Imaginez maintenant que chaque poste est occupé par un modèle de langage spécialisé, interagissant entre eux selon un processus établi jusqu’ à la livraison finale du produit. Il suffirait de fournir une description de haut niveau au « directeur IA » et de laisser le processus se dérouler de manière autonome, aboutissant à la création d’ un produit fini.

Cette vision avant-gardiste est au cœur des systèmes multiagents. MetaGPT, comme décrit précédemment, simule un tel processus de développement logiciel, une approche pouvant être étendue à de nombreux autres scénarios dès lors qu’une structure organisationnelle et un processus existent.
Pour illustration, voici une vidéo de l’utilisation de MetaGPT pour développer automatiquement un jeu de snake :
Passons à une autre idée brillante, cette fois dans le domaine de l’ interaction avec le monde extérieur : la plupart des applications informatiques avec lesquelles nous interagissons utilisent une interface graphique qui répond à des principes relativement uniformes : barre de menus, boutons, utilisation de la souris pour cliquer sur les zones à sélectionner etc…. la technique d’interaction avec ces interfaces peut être apprise à un modèle de langage capable d’ interpréter les images (comme GPT4 ou Gemini Pro).
Le modèle pourra alors interagir de manière « généraliste » avec de nombreuses applications utilisateur moyennant quelques informations complémentaires comme le mode d’ emploi des applications. La puissance de cette approche ne doit pas être sous-estimée : des milliers d’ applications interactives deviennent ainsi directement accessibles au modèle, multipliant d’ autant sa capacité d’action.
Cette idée a donné naissance au Rabbit r1, la grande révélation du CES à Las Vegas qui s’ est tenu en janvier. Ce petit appareil révolutionnaire contient simplement un micro et un haut-parleur permettant à l’ utilisateur de donner des instructions vocales à un modèle de langage qui va directement interagir avec de nombreuses applications mobiles….
Pour plus d’informations, voici un lien vers la présentation officielle du Rabbit r1 :
3. Risques
Pouvoir agir directement dans le monde réel offre bien sûr un grand potentiel mais présente aussi des risques significatifs. Détenir une telle capacité d’action peut provoquer des dommages involontaires. Un scénario trivial verrait un agent placer une réservation ou une commande erronée par internet…
Plus préoccupant, il est possible d’ imaginer des agents volontairement construits à des fins nuisibles. Le hacking autonome illustre bien ce risque : un agent disposant d’ une large bibliothèque d’ outils de hacking pourra sonder sa cible informatique, choisir les outils les plus appropriés voire les adapter pour en maximiser l’ impact, puis engager un scénario d’ attaque complexe afin d’ atteindre les buts spécifiés par le hacker : prise de contrôle de la machine, destruction ou vol de données, déni de service etc….
Ce risque n’ est pas que théorique : des chercheurs ont montré qu’ une telle approche fonctionne et est capable de hacker efficacement des sites web.
4. Conclusion
Comme vous pouvez le voir, les agents IA présentent d’ énormes potentialités, et il y a gros à parier que 2024 verra de nouveaux développements dans ce domaine…
Mais c’ est surtout en conjonction avec les nouveaux progrès attendus comme la multimodalité que les agents pourront montrer toute leur puissance. Imaginez ce que pourrait faire un agent capable d’ interpréter à la fois le son, les images et le texte de manière consolidée…
Il ne reste qu’ à placer le modèle dans un robot et lui donner la capacité d’ agir sur les actuateurs (bras, mains, jambes) et vous possédez un robot avec des capacités tout à fait inédites. Ce n’ est pas pour rien que plusieurs géants de la tech (dont Tesla) se sont récemment lancés dans la réalisation de robots humanoïdes…
Le grand bémol à toutes ces promesses reste la tendance des modèles à halluciner. Ne pas pouvoir faire totalement confiance aux informations issues du modèle est un souci gérable dans un scénario conversationnel, un utilisateur averti en valant deux. Mais un agent IA agissant directement sur le monde extérieur sans validation humaine présente un risque bien plus grand. Cette contrainte pourrait bien voir le déploiement d’agents limités à des scénarios d’ utilisation subalternes et inoffensifs.
Comme souvent, difficile de faire des prédictions. Le tableau des agents IA est contrasté. Les promesses sont importantes mais les risques aussi.
Notes et références
- What is LLM Agent? Ultimate Guide to LLM Agent [With Technical Breakdown] par Moumita Roy et Pranav Patel pour Ionio.ai : https://www.ionio.ai/blog/what-is-llm-agent-ultimate-guide-to-llm-agent-with-technical-breakdown
- LLM Agents can Autonomously Hack Websites, par Daniel Kang le 13 février 2024 pour Medium : https://medium.com/@danieldkang/llm-agents-can-autonomously-hack-websites-ab33fadb3062
- LLM-based Autonomous Agents – LLM Apps that perform Human-like Tasks, tweet de Bindu Reddy : https://twitter.com/bindureddy/status/1697386242936385909?s=20
- Understanding AI Agents in the age of LLMs!, tweet de Akshay Pachaar : https://twitter.com/akshay_pachaar/status/1697950190756585700?s=20
- LLM Powered Autonomous Agents sur le blog de Lilian Weng, le 23 juin 2023 : https://lilianweng.github.io/posts/2023-06-23-agent/