Quatre Modèles De Conception D'agents Intelligents AI : Une Voie Incontournable Vers L'intelligence Artificielle Générale
Quatre modèles de conception d’agents intelligents AI : une voie incontournable vers l’intelligence artificielle générale
Si l’on compare l’utilisation de l’IA pour accomplir des tâches à la rédaction d’un essai, alors la méthode non-agent (Agent) consiste à faire écrire l’IA d’une traite, sans modification, tandis que la méthode agent permet à l’IA de modifier plusieurs fois et de s’appuyer sur des outils et de collaborer avec l’extérieur pendant le processus de modification. En 2024, l’agent est considéré comme l’une des voies pour réaliser l’intelligence artificielle générale (AGI).
Les modèles de base ont stimulé le développement de l’intelligence artificielle générative, permettant aux agents AI d’aider automatiquement les utilisateurs à accomplir des tâches. Au cours de l’année écoulée, divers agents ont émergé. Inspiré par le discours d’Andrew Ng au sommet AI de Sequoia, cet article compile les agents existants à partir des articles publiés et des blogs d’ingénierie tels que Langchain, et résume les paradigmes de conception dans l’espoir d’aider à concevoir des agents basés sur des modèles de base.
Les 16 modèles suivants peuvent être provisoirement compilés dans le tableau ci-dessous :
Modèle | Description |
---|---|
Créateur d’objectifs passif | Analyse les indications explicites de l’utilisateur via une interface de dialogue pour maintenir l’interactivité, le suivi des objectifs et l’intuitivité. |
Créateur d’objectifs proactif | Prévient les objectifs de l’utilisateur en comprenant les interactions humaines et en capturant le contexte pour améliorer l’interactivité, le suivi des objectifs et l’accessibilité. |
Optimiseur de prompt/réponse | Optimise les prompts/réponses en fonction du contenu et du format attendus des entrées ou sorties pour fournir standardisation, précision des réponses, interopérabilité et adaptabilité. |
Génération augmentée par récupération | Améliore la capacité de mise à jour des connaissances de l’agent tout en préservant la confidentialité des données du système d’agent de modèle de base local. |
Interrogation de modèle en un coup | Accède au modèle de base dans un seul cas pour générer toutes les étapes nécessaires à la planification afin d’améliorer l’efficacité des coûts et de simplifier le processus. |
Interrogation de modèle incrémentale | Accède au modèle de base à chaque étape du processus de génération de plan pour fournir un contexte supplémentaire, améliorer la précision des réponses et l’explicabilité. |
Générateur de plan à chemin unique | Coordonne la génération des étapes intermédiaires pour atteindre l’objectif de l’utilisateur afin d’améliorer la certitude, la cohérence et l’efficacité du raisonnement. |
Générateur de plan à chemins multiples | Permet de créer plusieurs options à chaque étape de la réalisation de l’objectif de l’utilisateur pour améliorer la certitude, la cohérence, l’alignement sur les préférences humaines et l’inclusivité du raisonnement. |
Auto-réflexion | Permet à l’agent de générer des retours sur le plan et le processus de raisonnement et fournit des conseils d’auto-amélioration pour améliorer la certitude, l’explicabilité, l’amélioration continue et l’efficacité du raisonnement. |
Réflexion croisée | Utilise différents agents ou modèles de base pour fournir des retours et améliorer le plan généré et le processus de raisonnement pour améliorer la certitude, l’explicabilité, l’interopérabilité, l’inclusivité, l’évolutivité et l’amélioration continue du raisonnement. |
Réflexion humaine | Collecte des retours humains pour améliorer le plan et le processus de raisonnement, aligner efficacement les préférences humaines, améliorer la contestabilité, l’efficacité, l’équité et l’amélioration continue. |
Coopération basée sur le vote | Permet aux agents d’exprimer librement leurs opinions et de parvenir à un consensus en soumettant des votes pour améliorer la diversité, la division du travail efficace et la tolérance aux erreurs. |
Coopération basée sur les rôles | Attribue différents rôles et finalise les décisions en fonction des rôles des agents pour améliorer la certitude des décisions, la division du travail, la tolérance aux erreurs, l’évolutivité et la responsabilité. |
Coopération basée sur le débat | Les agents fournissent et reçoivent des retours par le biais de débats, ajustent leurs idées et comportements jusqu’à parvenir à un consensus pour améliorer la certitude, l’adaptabilité, l’explicabilité, la précision des réponses et la pensée critique des décisions. |
Garde-fous multimodaux | Contrôle les entrées et sorties du modèle de base pour répondre à des exigences spécifiques, telles que les demandes des utilisateurs, les normes éthiques et les réglementations légales, afin d’améliorer la robustesse, la sécurité, l’alignement des normes et l’adaptabilité. |
Registre d’outils/agents | Maintient une source unifiée et pratique pour sélectionner différents agents et outils afin d’améliorer la découvrabilité, l’efficacité et l’applicabilité des outils. |
Ces 16 modèles peuvent tous être regroupés dans les 4 paradigmes proposés par Andrew Ng dans son discours au sommet AI de Sequoia, à savoir :
- Réflexion
- Utilisation d’outils
- Planification
- Collaboration multi-agents
1 Réflexion
1.1 Réflexion de base
Dans le contexte de la construction d’agents LLM, la réflexion désigne le processus consistant à inciter le LLM à observer ses étapes passées (ainsi que les observations potentielles des outils/environnements) pour évaluer la qualité des actions choisies. Ces retours sont ensuite utilisés pour des tâches en aval telles que la replanification, la recherche ou l’évaluation. L’image ci-dessous montre un modèle de réflexion de base.
Réflexion de base
1.2 Acteur Reflexion
Proposé par Shinn et al., Reflexion est une architecture qui apprend par le biais de retours linguistiques et d’auto-réflexion. Cet agent commente ses résultats de tâches pour générer des résultats finaux de meilleure qualité, mais au prix d’un temps d’exécution plus long. Il comprend principalement trois composants :
- Acteur (agent) avec auto-réflexion
- Évaluateur externe (spécifique à la tâche, par exemple, étapes de compilation de code)
- Mémoire épisodique qui stocke les réflexions de (1).
Acteur Reflexion
1.3 LATS
La recherche d’arbre d’agents linguistiques (LATS), proposée par Zhou et al., est un algorithme de recherche d’agent LLM général qui combine réflexion/évaluation et recherche (en particulier la recherche d’arbre de Monte Carlo), capable de réaliser de meilleures performances globales de tâches par rapport à des techniques similaires telles que ReACT, Reflexion ou Tree of Thoughts.
Il comprend quatre étapes principales :
-
Sélectionner : choisir les meilleures actions suivantes en fonction des récompenses agrégées de l’étape (2). Répondre (si une solution est trouvée ou si la profondeur maximale de recherche est atteinte) ou continuer la recherche.
-
Étendre et simuler : sélectionner les 5 meilleures actions potentielles à entreprendre et les exécuter en parallèle.
-
Réfléchir + Évaluer : observer les résultats de ces actions et évaluer les décisions en fonction de la réflexion (et éventuellement des retours externes)
-
Rétropropager : mettre à jour les scores des trajectoires racines en fonction des résultats.
LATS
2 Utilisation d’outils
Appeler des outils, utiliser sous forme de fonctions.
3 Planification
3.1 ReAct
ReAct améliore les capacités des agents en combinant raisonnement et action. La méthode ReAct permet aux agents de réagir immédiatement après avoir reçu des informations, plutôt que d’attendre que toutes les informations soient traitées. Cette méthode met également l’accent sur la combinaison étroite du raisonnement et de l’action, où les agents doivent non seulement analyser et comprendre les informations d’entrée, mais aussi agir en conséquence. Cette approche est avantageuse en raison de sa flexibilité et de son adaptabilité à l’environnement.
Cadre ReAct
3.2 Planifier et exécuter
Le cœur de Planifier et exécuter est de d’abord établir un plan à plusieurs étapes, puis d’exécuter ce plan étape par étape. Après avoir accompli une tâche spécifique, le plan peut être réexaminé et modifié si nécessaire.
Comparé aux agents typiques de style ReAct, qui pensent une étape à la fois, ce style “planifier et exécuter” présente les avantages suivants :
- Planification à long terme claire (même les LLM très puissants ont du mal à le faire)
- Capacité à utiliser des modèles plus petits/moins puissants pour les étapes d’exécution, en utilisant uniquement des modèles plus grands/meilleurs pour les étapes de planification
Planifier et exécuter
3.3 ReWOO
Dans ReWOO, Xu et al. ont proposé un agent combinant un planificateur à plusieurs étapes et un remplacement de variables pour une utilisation efficace des outils. Il améliore l’architecture des agents de style ReACT dans les aspects suivants :
- Réduit la consommation de tokens et le temps d’exécution en générant une chaîne d’outils complète à utiliser en une seule fois. (Les architectures d’agents de style ReACT nécessitent de nombreux appels LLM et ont des préfixes redondants car les prompts système et les étapes précédentes sont fournies au LLM à chaque étape de raisonnement)
- Simplifie le processus de fine-tuning. Étant donné que les données de planification ne dépendent pas des sorties des outils, le modèle peut théoriquement être fine-tuné sans appeler réellement les outils
Raisonnement sans observation
3.4 LLMCompiler
LLMCompiler est une architecture d’agent qui accélère l’exécution des tâches d’agent en exécutant les tâches en rafale dans un DAG. Il économise également sur les coûts d’utilisation des tokens redondants en réduisant le nombre d’appels LLM. Il comprend principalement trois parties :
-
Planificateur : diffuse un DAG de tâches.
-
Unité de récupération de tâches : planifie et exécute les tâches dès qu’elles sont exécutables
-
Assembleur : répond à l’utilisateur ou déclenche un deuxième plan
LLMCompiler
4 Collaboration multi-agents
4.1 Supervision
Gérer et planifier la collaboration de plusieurs agents par un superviseur.
Mode de supervision
4.2 Équipes hiérarchiques
Organiser les agents de manière hiérarchique et graduée pour accomplir des tâches complexes et volumineuses. AutoGen est un exemple typique de cette approche.
Mode d’équipe hiérarchique
4.3 Collaboration
La capacité d’un agent unique à utiliser plusieurs outils (domaines) est limitée, nécessitant plusieurs agents pour utiliser plus de types d’outils. On peut utiliser l’idée de “diviser pour régner”, où chaque agent devient un “expert” spécialisé dans le traitement d’une catégorie de problèmes, puis les faire collaborer.
Une forme de collaboration multi-agents de base
5 Évaluation
Une idée la plus directe est d’utiliser un agent comme “utilisateur virtuel” pour l’évaluation, de nombreuses tâches dont les résultats ne peuvent pas être évalués quantitativement peuvent devoir utiliser cette méthode. Mais pour les tâches avec des indicateurs clairs (classification, régression), il peut être possible d’utiliser directement un outil pour l’évaluation.
Évaluation basée sur les agents
6 Autres méthodes pour l’AGI
Les agents ne sont qu’une méthode prometteuse pour réaliser l’AGI, mais ce n’est pas la seule méthode. La méthode des agents elle-même peut être combinée avec RAG, la participation des utilisateurs et d’autres méthodes. Par exemple, Shi et al. ont combiné la méthode des agents et de la récupération pour résoudre des problèmes de programmation olympique avec de grands modèles.
7 Lectures recommandées
https://github.com/AGI-Edgerunners/LLM-Agents-Papers
https://github.com/zjunlp/LLMAgentPapers
8 Références
- Kim, Sehoon, Suhong Moon, Ryan Tabrizi, Nicholas Lee, Michael W. Mahoney, Kurt Keutzer, and Amir Gholami. “An LLM Compiler for Parallel Function Calling.” arXiv, February 6, 2024. https://doi.org/10.48550/arXiv.2312.04511.
- Liu, Yue, Sin Kit Lo, Qinghua Lu, Liming Zhu, Dehai Zhao, Xiwei Xu, Stefan Harrer, and Jon Whittle. “Agent Design Pattern Catalogue: A Collection of Architectural Patterns for Foundation Model Based Agents.” arXiv, May 16, 2024. https://doi.org/10.48550/arXiv.2405.10467.
- Shi, Quan, Michael Tang, Karthik Narasimhan, and Shunyu Yao. “Can Language Models Solve Olympiad Programming?” arXiv, April 16, 2024. https://doi.org/10.48550/arXiv.2404.10952.
- Shinn, Noah, Federico Cassano, Edward Berman, Ashwin Gopinath, Karthik Narasimhan, and Shunyu Yao. “Reflexion: Language Agents with Verbal Reinforcement Learning.” arXiv, October 10, 2023. https://doi.org/10.48550/arXiv.2303.11366.
- Wang, Lei, Wanyu Xu, Yihuai Lan, Zhiqiang Hu, Yunshi Lan, Roy Ka-Wei Lee, and Ee-Peng Lim. “Plan-and-Solve Prompting: Improving Zero-Shot Chain-of-Thought Reasoning by Large Language Models.” arXiv, May 26, 2023. https://doi.org/10.48550/arXiv.2305.04091.
- Xu, Binfeng, Zhiyuan Peng, Bowen Lei, Subhabrata Mukherjee, Yuchen Liu, and Dongkuan Xu. “ReWOO: Decoupling Reasoning from Observations for Efficient Augmented Language Models.” arXiv, May 22, 2023. https://doi.org/10.48550/arXiv.2305.18323.
- Yao, Shunyu, Jeffrey Zhao, Dian Yu, Nan Du, Izhak Shafran, Karthik Narasimhan, and Yuan Cao. “ReAct: Synergizing Reasoning and Acting in Language Models.” arXiv, March 9, 2023. https://doi.org/10.48550/arXiv.2210.03629.
- “Yoheinakajima/Babyagi.” Accessed May 21, 2024. https://github.com/yoheinakajima/babyagi/tree/main.
- “LangGraph tutorials.” Accessed May 21, 2024. https://langchain-ai.github.io/langgraph/tutorials/
- Zhou, Andy, Kai Yan, Michal Shlapentokh-Rothman, Haohan Wang, and Yu-Xiong Wang. “Language Agent Tree Search Unifies Reasoning Acting and Planning in Language Models.” arXiv, December 5, 2023. https://doi.org/10.48550/arXiv.2310.04406.
- Zhou, Pei, Jay Pujara, Xiang Ren, Xinyun Chen, Heng-Tze Cheng, Quoc V. Le, Ed H. Chi, Denny Zhou, Swaroop Mishra, and Huaixiu Steven Zheng. “Self-Discover: Large Language Models Self-Compose Reasoning Structures.” arXiv, February 5, 2024. https://doi.org/10.48550/arXiv.2402.03620.