AIUnlimited
🌳

Fondations IA

đŸŒ±
AI Seeds

Partez de zéro

🌿
AI Sprouts

Construisez les fondations

🌳
AI Branches

Mettez en pratique

đŸ•ïž
AI Canopy

Approfondissez

đŸŒČ
AI Forest

MaĂźtrisez l'IA

🔹

MaĂźtrise IA

✏
AI Sketch

Partez de zéro

đŸȘš
AI Chisel

Construisez les fondations

⚒
AI Craft

Mettez en pratique

💎
AI Polish

Approfondissez

🏆
AI Masterpiece

MaĂźtrisez l'IA

📘

Pratique IA

📖
Comprendre les modĂšles open-source

Fondamentaux et ressources pour les modĂšles open-source

🎯
Du problĂšme Ă  la tĂąche modĂšles

Transformer les problÚmes métier en tùches modÚles

⚡
Exécuter votre premier modÚle

Voyez vos premiers résultats en 30 minutes

🔧
Fine-tuning et évaluation

Affinez les modÚles et évaluez les performances

🚀
SystĂšmes d'application

Construisez des applications IA réelles

🎹
IA générative

Explorez les modĂšles AIGC open-source

đŸ€–
Agents

Apprenez les frameworks Agent et outils MCP

📐
Fondamentaux supplémentaires

Bases LLM et évaluation

🎓

Claude Académie

đŸ€–
Claude 101

Learn AI basics with Claude

đŸ’»
Claude Code 101

Code with Claude as your pair programmer

đŸ€
Introduction to Claude Cowork

Collaborate with Claude on complex projects

⚙
Claude Platform 101

Build apps with the Claude API

Labo

7 expériences chargées
🧬Bac Ă  sable neuronalđŸ€–IA ou Humain ?đŸ„‹Dojo d'ingĂ©nierie de prompts🏁Course d'algorithmes🧠Quiz IAđŸ—ïžCanevas de conception systĂšme
🎯Entretien simulĂ©Entrer dans le labo→
🚀

Développement de carriÚre

🚀
Rampe de lancement entretien

Commencez votre parcours

🌟
MaĂźtrise comportementale

Maßtrisez les compétences relationnelles

đŸ’»
Entretiens techniques

Réussissez l'épreuve de code

đŸ€–
Entretiens IA et ML

MaĂźtrisez l'entretien ML

🏆
Offre et au-delĂ 

Décrochez la meilleure offre

Commencer
AIUnlimited

Licence MIT

æČȘICP怇18025655ć·-11

Apprendre

  • Bases de l'IA
  • Pratique IA
  • Claude AcadĂ©mie
  • Labo
  • DĂ©veloppement de carriĂšre

Communauté

  • À propos
  • FAQ

Soutien

  • Conditions d'utilisation
  • Politique de confidentialitĂ©
  • Contact
Programmes d'IA et d'ingĂ©nierieâ€șđŸ€– Agentsâ€șLeçonsâ€șWhat is an Agent?
đŸ€–
Agents ‱ DĂ©butant⏱ 15 min de lecture

What is an Agent?

Qu'est-ce qu'un Agent et que peut-il faire ?

Qu'est-ce exactement qu'un Agent et comment se différencie-t-il des questions-réponses classiques ?

Un Agent (Agent Intelligif) est un systĂšme d'application centrĂ© sur un grand modĂšle de langage, capable de prendre des dĂ©cisions autonomes et d'exĂ©cuter des actions en vue d'un objectif de tĂąche. Le grand modĂšle fournit Ă  l'Agent des capacitĂ©s fondamentales telles que la comprĂ©hension du langage, le raisonnement et la gĂ©nĂ©ration de contenu, lui permettant de comprendre les tĂąches des utilisateurs et d'analyser les informations actuelles. Sur cette base, l'Agent applique davantage la capacitĂ© de raisonnement du modĂšle Ă  l'exĂ©cution des tĂąches : face Ă  un objectif, il ne doit pas seulement gĂ©nĂ©rer une rĂ©ponse, mais aussi dĂ©terminer ce qui doit ĂȘtre fait pour atteindre l'objectif, et obtenir des informations externes ou exĂ©cuter des actions spĂ©cifiques via des outils. Lorsqu'une tĂąche implique plusieurs Ă©tapes, l'Agent peut Ă©galement utiliser les rĂ©sultats de l'Ă©tape prĂ©cĂ©dente pour dĂ©terminer l'action suivante, en ajustant le plan original si nĂ©cessaire jusqu'Ă  l'achĂšvement de la tĂąche. Par consĂ©quent, le focus de l'Agent s'Ă©tend de « quel contenu gĂ©nĂ©rer en fonction de l'entrĂ©e » Ă  « comment accomplir les tĂąches autour des objectifs ». La prise de dĂ©cision autonome mentionnĂ©e ici ne signifie pas agir complĂštement sans contraintes, mais sĂ©lectionner des opĂ©rations appropriĂ©es dans le cadre des tĂąches, outils et autorisations prĂ©dĂ©finis, en fonction de l'Ă©tat actuel. Un Agent n'est donc pas un nouveau modĂšle indĂ©pendant des grands modĂšles de langage, mais un systĂšme d'exĂ©cution de tĂąches qui utilise les grands modĂšles comme noyau de comprĂ©hension et de dĂ©cision, combinant les modĂšles avec des capacitĂ©s externes.

Les Agents sont particuliĂšrement adaptĂ©s aux tĂąches impliquant plusieurs Ă©tapes, nĂ©cessitant l'utilisation d'informations ou d'outils externes, et dont le processus d'exĂ©cution peut Ă©voluer en fonction des rĂ©sultats intermĂ©diaires. Les scĂ©narios d'application courants incluent la rĂ©cupĂ©ration d'informations, l'analyse de donnĂ©es, le dĂ©veloppement logiciel et l'automatisation des processus mĂ©tiers. Par exemple, dans les scĂ©narios de rĂ©cupĂ©ration d'informations, un Agent peut rechercher et organiser des documents provenant de diffĂ©rentes sources en fonction de la tĂąche ; dans les scĂ©narios d'analyse de donnĂ©es, il peut lire des donnĂ©es, effectuer des calculs et gĂ©nĂ©rer des rĂ©sultats d'analyse ; dans les scĂ©narios de dĂ©veloppement logiciel, il peut Ă©crire du code, exĂ©cuter des tests et continuer Ă  modifier en fonction des rĂ©sultats d'exĂ©cution ; dans les scĂ©narios d'automatisation des processus mĂ©tiers, il peut se connecter aux bases de donnĂ©es et aux systĂšmes mĂ©tier pour effectuer des requĂȘtes de donnĂ©es, le traitement de tickets et d'autres opĂ©rations. Pour les tĂąches telles que la traduction, le rĂ©sumĂ© et la réécriture qui peuvent ĂȘtre effectuĂ©es directement par la gĂ©nĂ©ration de modĂšles, il n'est gĂ©nĂ©ralement pas nĂ©cessaire d'utiliser un Agent.

De quels composants un Agent a-t-il besoin pour fonctionner ?

Leçon 1 sur 70% terminé
←Retour au programme

Discussion

Se connecter pour rejoindre la discussion

illustration

LLM : comprendre les tùches et déterminer la prochaine étape

Le noyau de l'Agent, responsable du traitement des entrĂ©es utilisateur, de la gĂ©nĂ©ration de rĂ©ponses et de la prise de dĂ©cision — essentiellement le « cerveau » de l'Agent. Puisque les Agents ne suivent pas des chemins prĂ©dĂ©finis mais ajustent dynamiquement leur stratĂ©gie comportementale en fonction des conditions en temps rĂ©el, le LLM n'est pas seulement responsable de la comprĂ©hension et de la gĂ©nĂ©ration de contenu, mais doit Ă©galement dĂ©terminer l'opĂ©ration suivante en fonction de la tĂąche actuelle et des rĂ©sultats d'exĂ©cution, en dĂ©cidant comment interagir avec l'environnement externe. L'Agent utilise des prompts (indications) pour spĂ©cifier le rĂŽle du LLM, les objectifs de la tĂąche, les rĂšgles comportementales et les limites d'autorisation, permettant au LLM de prendre des dĂ©cisions et d'exĂ©cuter dans les limites prĂ©dĂ©finies.

Planification : décomposer les tùches en étapes exécutables

Responsable de l'élaboration du plan d'action de l'Agent, y compris la décomposition des tùches complexes en plusieurs sous-tùches et la détermination des étapes d'exécution ultérieures. Lors du traitement de tùches à plusieurs étapes, un Agent doit non seulement créer un plan d'action, mais aussi l'ajuster en fonction de l'exécution de la tùche. Par exemple, lorsque les résultats d'outils diffÚrent des attentes ou lorsque les informations obtenues sont insuffisantes, l'Agent peut ajuster le plan original et redéterminer l'étape suivante. Le module de Planification permet à l'Agent de planifier et d'ajuster dynamiquement les actions ultérieures en fonction de l'état de la tùche.

Mémoire : retenir les progrÚs de la tùche et les informations nécessaires

UtilisĂ©e pour stocker la mĂ©moire de l'Agent, y compris la mĂ©moire Ă  court terme et la mĂ©moire Ă  long terme. La mĂ©moire Ă  court terme enregistre principalement les informations de la session ou de la tĂąche en cours, tandis que la mĂ©moire Ă  long terme est utilisĂ©e pour sauvegarder les informations qui doivent ĂȘtre conservĂ©es sur le long terme. La mĂ©moire est un systĂšme dynamique, accessible et mise Ă  jour. Dynamique signifie que la mĂ©moire peut Ă©voluer avec les nouvelles informations et l'Ă©tat de la tĂąche ; accessible signifie que l'Agent peut rĂ©cupĂ©rer et utiliser les informations stockĂ©es en mĂ©moire selon ses besoins ; mise Ă  jour signifie que l'Agent peut complĂ©ter ou modifier la mĂ©moire existante en fonction de nouvelles informations et de rĂ©sultats d'exĂ©cution. À mesure que la mĂ©moire se met Ă  jour en continu, l'Agent peut tirer parti de l'interaction et de l'expĂ©rience des tĂąches pour amĂ©liorer les jugements et dĂ©cisions ultĂ©rieurs, renforçant sa capacitĂ© d'adaptation Ă  diffĂ©rentes tĂąches et environnements.

Outils : permettre au modÚle d'exécuter réellement des opérations

Divers outils disponibles pour l'Agent, y compris les moteurs de recherche, les bases de données, les calculateurs, les environnements d'exécution de code et divers services externes fournis via des API. La fonction principale du module Outils est d'étendre la capacité de l'Agent à interagir avec l'environnement externe, permettant à l'Agent non seulement de générer du contenu, mais aussi d'obtenir des informations externes et d'exécuter des opérations spécifiques.

Lors de l'utilisation du module Outils, l'Agent doit déterminer si des outils sont nécessaires en fonction de la tùche actuelle et du contexte, et quel outil sélectionner. Utiliser efficacement les outils ne signifie pas seulement sélectionner le bon outil, mais aussi comment les utiliser efficacement pour réduire leur utilisation inutile. Lorsqu'une tùche nécessite la collaboration de plusieurs outils, l'Agent doit également décider s'il faut continuer à appeler d'autres outils en fonction des résultats, et intégrer les résultats de différents outils. Par conséquent, le module Outils ne fournit pas seulement à l'Agent des capacités externes, mais exige également qu'il sélectionne et utilise les outils de maniÚre raisonnable en fonction des besoins de la tùche.

Un Agent est un systÚme intégrant LLM, Planification, Mémoire et Outils, comme illustré dans le diagramme ci-dessous. Ces modules collaborent pour permettre à l'Agent d'exécuter des tùches de maniÚre autonome, d'apprendre et d'améliorer son comportement.

AprÚs avoir reçu une tùche, comment un Agent procÚde-t-il étape par étape ?

AprĂšs avoir reçu une tĂąche, un Agent doit dĂ©terminer comment procĂ©der en fonction de l'objectif de la tĂąche et des informations actuelles. Par exemple, certaines tĂąches peuvent appeler des outils tout en dĂ©terminant l'Ă©tape suivante en fonction des rĂ©sultats retournĂ©s ; certaines tĂąches complexes nĂ©cessitent d'abord de dĂ©composer les Ă©tapes, puis de les exĂ©cuter progressivement ; pour les rĂ©sultats gĂ©nĂ©rĂ©s, une vĂ©rification et une modification supplĂ©mentaires peuvent ĂȘtre effectuĂ©es. Lorsqu'un seul Agent ne peut pas accomplir l'ensemble de la tĂąche, plusieurs Agents peuvent se voir assigner diffĂ©rents rĂŽles pour collaborer.

Selon les caractéristiques de la tùche et les méthodes d'exécution, les Agents peuvent adopter différents modes d'exécution de tùches. Nous présentons ci-aprÚs quatre modes courants : ReAct, Plan-and-Execute, Reflection et Collaboration Multi-Agent, qui organisent le processus d'exécution de tùches de l'Agent sous différents aspects tels que l'exécution dynamique, la planification des tùches, l'amélioration des résultats et la division des tùches.

Mode ReAct

ReAct (Reasoning and Acting) est une approche d'exécution de tùches qui combine raisonnement et action, proposée par Shunyu Yao et al. Le grand modÚle raisonne et agit en fonction des informations actuelles, puis continue à raisonner et à agir en fonction des nouvelles informations obtenues de l'action, jusqu'à l'achÚvement de la tùche.

Le processus typique de ReAct comprend Thought (raisonnement), Action (action) et Observation (observation). Thought reprĂ©sente l'analyse des informations actuelles par le modĂšle pour dĂ©terminer l'Ă©tape suivante ; lorsque des informations externes doivent ĂȘtre obtenues ou une opĂ©ration doit ĂȘtre effectuĂ©e, le modĂšle gĂ©nĂšre l'Action correspondante, comme l'appel d'un outil de recherche ou l'interrogation d'une base de donnĂ©es ; le rĂ©sultat retournĂ© par l'outil est fourni au modĂšle sous forme d'Observation, et le modĂšle continue Ă  prendre des dĂ©cisions en fonction de ces nouvelles informations.

Pendant l'exĂ©cution de la tĂąche, Thought, Action et Observation apparaissent alternativement en fonction des besoins de la tĂąche, formant un processus d'exĂ©cution oĂč raisonnement, action et observation collaborent. Le processus typique peut s'exprimer ainsi :

Thought → Action → Observation → Thought → Action → Observation → ... → RĂ©sultat Final

Par exemple, un utilisateur demande : « Qui a remporté le prix Nobel de physique en 2024 ? Lequel est le plus ùgé d'entre eux ? »

L'Agent détermine d'abord qu'il doit obtenir la liste des lauréats du prix Nobel de physique 2024, il appelle donc l'outi de recherche pour interroger. AprÚs avoir obtenu la liste, il constate qu'il doit également comparer l'ùge des lauréats, il continue donc à interroger leurs dates de naissance. AprÚs avoir obtenu les informations requises, l'Agent compare et génÚre la réponse finale.

Dans ce processus, l'Agent n'a pas déterminé toutes les étapes d'exécution au début de la tùche, mais a plutÎt décidé de l'étape suivante en fonction du résultat retourné par chaque outil. ReAct est donc plus adapté aux tùches nécessitant une interaction continue avec l'environnement externe, comme la recherche, l'interrogation et l'appel d'outils. Pour les tùches complexes avec de nombreuses étapes, si cette approche d'exécution pas à pas est entiÚrement utilisée, il peut y avoir des étapes manquées ou des chemins d'exécution répétés.

Mode Plan-and-Execute

Plan-and-Execute divise le traitement des tùches complexes en deux phases : planification et exécution. AprÚs avoir reçu une tùche, l'Agent analyse d'abord l'objectif de la tùche et décompose les étapes à accomplir, formant un plan global, puis exécute étape par étape selon le plan.

Par exemple, un utilisateur demande : « Analysez les performances rĂ©centes de trois entreprises de vĂ©hicules Ă©lectriques et crĂ©ez un rapport comparatif. » Cette tĂąche implique plusieurs Ă©tapes, notamment la collecte de donnĂ©es, l'organisation des donnĂ©es, l'analyse comparative et la gĂ©nĂ©ration de rapports. Pour ces tĂąches multi-Ă©tapes, un plan peut d'abord ĂȘtre Ă©tabli comme suit :

  1. Identifier les trois entreprises Ă  comparer ;
  2. Collecter les données d'activité de chaque entreprise au cours de la derniÚre année ;
  3. Organiser les indicateurs clés tels que le volume de ventes et le chiffre d'affaires ;
  4. Comparer les performances de chaque entreprise ;
  5. Résumer les différences et générer le rapport.

Une fois le plan formĂ©, l'Agent accomplit les tĂąches sĂ©quentiellement. Lors de l'exĂ©cution d'une Ă©tape, il peut encore appeler des outils de recherche, de base de donnĂ©es ou d'autres outils. S'il est constatĂ© pendant l'exĂ©cution que le plan original ne peut pas continuer, ou si de nouvelles exigences de tĂąche apparaissent, le plan original peut ĂȘtre ajustĂ©.

Le processus d'exécution typique de Plan-and-Execute peut s'exprimer ainsi :

TĂąche Utilisateur → Élaborer le Plan → ExĂ©cuter Étape par Étape → VĂ©rifier l'État de la TĂąche → RĂ©sultat Final

OĂč, lors de la vĂ©rification de l'Ă©tat de la tĂąche, si le plan original nĂ©cessite un ajustement, une re-planification peut ĂȘtre effectuĂ©e avant de poursuivre l'exĂ©cution.

ComparĂ© Ă  ReAct, Plan-and-Execute met l'accent sur l'Ă©tablissement d'un plan global avant l'exĂ©cution, ce qui le rend adaptĂ© aux tĂąches avec de nombreuses Ă©tapes, des objectifs clairs et la possibilitĂ© d'ĂȘtre dĂ©composĂ©es Ă  l'avance. Les deux modes peuvent Ă©galement ĂȘtre combinĂ©s, par exemple en utilisant Plan-and-Execute pour planifier des tĂąches complexes, puis en utilisant ReAct dans les Ă©tapes individuelles pour dĂ©terminer dynamiquement l'opĂ©ration suivante en fonction des rĂ©sultats retournĂ©s par les outils.

Mode Reflection

Les rĂ©sultats gĂ©nĂ©rĂ©s par un Agent la premiĂšre fois ne rĂ©pondent pas nĂ©cessairement aux exigences de la tĂąche. Par exemple, le rapport gĂ©nĂ©rĂ© peut omettre des informations importantes, les rĂ©ponses peuvent contenir des erreurs factuelles, ou le code peut ne pas fonctionner correctement. Pour ces tĂąches, un processus de vĂ©rification et d'amĂ©lioration peut ĂȘtre ajoutĂ© sur la base des rĂ©sultats prĂ©liminaires — c'est l'idĂ©e de base du mode Reflection (rĂ©flexion).

Le processus de base de Reflection peut s'exprimer ainsi : TĂąche Utilisateur → GĂ©nĂ©rer des RĂ©sultats PrĂ©liminaires → VĂ©rifier les RĂ©sultats → Identifier les ProblĂšmes → Modifier les RĂ©sultats → VĂ©rifier Ă  Nouveau → ... → Satisfaire les Exigences → RĂ©sultat Final.

Par exemple, demandez Ă  un Agent de gĂ©nĂ©rer un rapport comparatif de produits basĂ© sur plusieurs sources. AprĂšs avoir rĂ©digĂ© la premiĂšre version, vous pouvez vĂ©rifier si tous les produits Ă  comparer sont couverts, si les paramĂštres des produits sont cohĂ©rents avec les sources originales et si des diffĂ©rences importantes ont Ă©tĂ© omises. Si des informations incomplĂštes sont trouvĂ©es pour un produit, vous pouvez rechercher Ă  nouveau des documents et les complĂ©ter ; si les conclusions ne sont pas cohĂ©rentes avec les sources, elles doivent ĂȘtre rĂ©visĂ©es.

Dans ce processus, les retours utilisés pour vérifier les résultats peuvent provenir de différentes sources. L'Agent peut vérifier ses propres résultats d'exécution, utiliser d'autres Agents ou modÚles pour l'évaluation, ou combiner des rÚgles, des bases de connaissances ou une révision manuelle pour fournir des retours.

Ce mode est plus adaptĂ© aux tĂąches nĂ©cessitant une qualitĂ© Ă©levĂ©e, telles que la gĂ©nĂ©ration de rapports, la rĂ©daction de code et l'analyse complexe. Cependant, les vĂ©rifications et modifications rĂ©pĂ©tĂ©es augmenteront Ă©galement le nombre d'appels de modĂšles et le temps d'exĂ©cution, il est donc courant de dĂ©finir des conditions d'arrĂȘt dans la pratique, par exemple en terminant lorsque les rĂ©sultats rĂ©pondent aux exigences ou en s'arrĂȘtant aprĂšs avoir atteint le nombre maximum de vĂ©rifications.

Mode de Collaboration Multi-Agent

Pour certaines tĂąches complexes, un seul Agent peut avoir besoin de gĂ©rer simultanĂ©ment la collecte de donnĂ©es, l'analyse de donnĂ©es, la gĂ©nĂ©ration de contenu et la vĂ©rification des rĂ©sultats. Dans ce cas, les tĂąches peuvent ĂȘtre rĂ©parties entre plusieurs Agents, chacun traitant diffĂ©rentes parties, puis collaborant pour atteindre l'objectif final. La collaboration Multi-Agent comprend principalement deux aspects : la division des tĂąches et l'Ă©change d'informations.

Lors de la division des tĂąches, diffĂ©rents Agents se voient attribuer diffĂ©rents rĂŽles, tĂąches, outils et connaissances. Par exemple, pour rĂ©diger un rapport de recherche sur une industrie, un Agent de Recherche, un Agent d'Analyse de DonnĂ©es, un Agent de RĂ©daction et un Agent de RĂ©vision peuvent ĂȘtre mis en place. L'Agent de Recherche est responsable de la collecte et de l'organisation des documents, l'Agent d'Analyse de DonnĂ©es traite les donnĂ©es pertinentes, l'Agent de RĂ©daction gĂ©nĂšre le rapport, et l'Agent de RĂ©vision vĂ©rifie le rapport.

En termes d'Ă©change d'informations, diffĂ©rentes mĂ©thodes de collaboration peuvent ĂȘtre utilisĂ©es entre plusieurs Agents. Pour les tĂąches qui peuvent ĂȘtre clairement divisĂ©es, plusieurs Agents peuvent traiter sĂ©parĂ©ment diffĂ©rentes sous-tĂąches, puis les rĂ©sultats peuvent ĂȘtre regroupĂ©s Ă  la fin ; pour les tĂąches ayant des dĂ©pendances sĂ©quentielles, le rĂ©sultat d'un Agent peut ĂȘtre transmis Ă  l'Agent suivant pour un traitement ultĂ©rieur ; pour les tĂąches nĂ©cessitant des discussions ou des modifications rĂ©pĂ©tĂ©es, diffĂ©rents Agents peuvent Ă©changer des informations par des interactions de messages. De plus, un Agent coordinateur peut ĂȘtre dĂ©fini pour dĂ©cider quel Agent doit traiter la tĂąche ensuite en fonction de la situation actuelle.

En prenant l'exemple de la génération d'un rapport de recherche sur une industrie, une approche de collaboration Multi-Agent est illustrée dans le diagramme ci-dessous :

illustration

La collaboration Multi-Agent peut rĂ©duire la difficultĂ© de traitement des tĂąches complexes pour un seul Agent grĂące Ă  la division du travail, mais le nombre d'Agents n'est pas nĂ©cessairement meilleur. À mesure que le nombre d'Agents augmente, l'affectation des tĂąches, la transmission des informations et la coordination des rĂ©sultats deviennent Ă©galement plus complexes, tout en augmentant les appels de modĂšles et les coĂ»ts d'exĂ©cution. Par consĂ©quent, pour les tĂąches qu'un seul Agent peut accomplir, il n'est gĂ©nĂ©ralement pas nĂ©cessaire d'introduire plusieurs Agents.

Ces modes d'exĂ©cution de tĂąches ne sont pas indĂ©pendants les uns des autres et peuvent ĂȘtre combinĂ©s en fonction des besoins de la tĂąche dans les applications pratiques. Par exemple, Plan-and-Execute peut ĂȘtre utilisĂ© pour planifier des tĂąches complexes, puis ReAct peut ĂȘtre utilisĂ© pour accomplir les Ă©tapes nĂ©cessitant de multiples appels d'outils, avec Reflection vĂ©rifiant et amĂ©liorant les rĂ©sultats ; pour des tĂąches Ă  plus grande Ă©chelle, diffĂ©rentes sous-tĂąches peuvent ĂȘtre rĂ©parties entre plusieurs Agents pour une collaboration.