Comment fonctionne un agent LLM : contexte, outils et boucle de rétroaction
Un agent LLM n'est pas qu'un simple chatbot, c'est un système à rétroaction. Le modèle génère du texte, appelle des outils, observe les résultats (y compris les erreurs) et corrige sa trajectoire à l'itération suivante. Auparavant, le modèle écrivait du code à l'aveugle ; désormais, il sait ce qu'il a fait et peut le corriger. Voici l'architecture de base : • **Contexte** — entrée du modèle allant de 32K à 1M tokens (standard de l'industrie) • **Outils** (harness) — décrits via JSON Schema, appelés selon le format Anthropic ou l'API OpenAI Tools • **MCP** (Model Context Protocol) — standard d'intégration avec des systèmes tiers via JSON-RPC 2.0 (transport : stdin/stdout ou HTTP)
Traité par IA depuis Habr AI ; édité par Hamidun News
Un agent LLM se distingue d'un modèle génératif par une boucle de rétroaction. Alors qu'un chatbot ne fait que générer du texte, un agent appelle des outils, récupère les résultats et affine sa réponse. Cela devient possible grâce à une architecture spécifique construite au-dessus du LLM.
Contexte et principes de base
Le LLM reçoit en entrée un bloc de texte appelé contexte. Sa taille est limitée : au début de l'ère des transformers, 32K tokens constituaient déjà une avancée majeure ; aujourd'hui, 1M tokens est devenu le standard de l'industrie. À partir du contexte, le modèle génère une suite — un fragment logiquement achevé, se terminant par un token spécial <stop>. Le contexte est ensuite étendu : le nouveau fragment y est ajouté, et le cycle se répète.
Appel des outils et leur description
Le modèle est entraîné à utiliser un formatage spécial pour appeler des fonctions externes. Chaque fournisseur implémente cela à sa manière : Anthropic utilise son propre format, tandis qu'Ollama et vLLM reproduisent l'API OpenAI Tools. Pour que le modèle sache quels outils sont à sa disposition, il faut les décrire au préalable dans le contexte (dans le « system prompt ») selon le standard JSON Schema — en précisant les paramètres, leurs types, leur description et leur caractère obligatoire ou non.
Voici un exemple de description d'un outil de vérification de livraison (get_delivery_status) : son nom, la description de sa finalité, et un schema avec les champs order_id (obligatoire, chaîne de caractères) et detailed (optionnel, booléen). Disposant de telles descriptions dans son contexte, le modèle génère des appels dans un format spécial (celui d'Anthropic, par exemple).
L'ensemble des outils disponibles est appelé harness (« attelage »). Pour décrire des outils qui ne sont pas intégrés à l'agent lui-même, on utilise le MCP (Model Context Protocol) — un standard de l'industrie pour l'IPC entre l'agent et des systèmes tiers. Les échanges se font via JSON-RPC 2.0, avec un transport soit par stdin/stdout d'un processus local (l'équivalent de FastCGI), soit par HTTP pour les serveurs externes.
Boucle de l'agent, rétroaction et gestion du contexte
L'API du fournisseur de LLM retourne des objets JSON typés. Le format varie : l'API OpenAI Tools est la plus répandue, Ollama et vLLM la reproduisent, tandis qu'Anthropic a son propre format. Dans la réponse (modèle claude-sonnet-4-5), l'appel arrive sous forme d'un bloc séparé dans le tableau content, avec un id, un nom et un objet input déjà analysé. Le signe d'un tour inachevé est stop_reason: "tool_use".
Le résultat de l'exécution est renvoyé dans un nouveau message avec le rôle user et un bloc tool_result, qui fait référence à l'id de l'appel. Si l'outil a échoué, un flag is_error est renvoyé avec la trace d'erreur. Une erreur n'interrompt pas la boucle : l'agent voit ce qu'il a fait et corrige au tour suivant. Auparavant, le modèle écrivait du code à l'aveugle ; désormais, il voit la rétroaction.
Le contexte comporte deux limites : une limite formelle (en cas de dépassement, l'API renvoie une erreur) et une limite opérationnelle (le volume à partir duquel la qualité se dégrade). Sur un contexte long, le début et la fin restent dans le focus, tandis que le milieu tend à disparaître. Deux techniques permettent de lutter contre ce phénomène :
• Déport vers des fichiers — seules 10 à 20 lignes de sortie sont placées dans le contexte, le reste étant écrit dans un fichier temporaire dont le chemin est indiqué à proximité ; le modèle extraira si besoin les informations nécessaires via un appel d'outil séparé. • Compactification — remplacement du contexte par un résumé concis généré par le LLM à l'aide d'un system prompt spécial, qui fixe la requête principale, les concepts clés, les détails techniques et les décisions architecturales.
Voilà pour l'architecture de base d'un agent. Pour s'exercer, il est recommandé d'écrire un agent directement sur l'API brute : on peut tenir en 200 à 300 lignes de code et obtenir un outil à peine moins performant que Claude Code ou Codex. La puissance d'un agent est déterminée avant tout par la puissance du modèle, pas par l'ensemble d'outils dont il dispose.
- 27 oct. 2026Anthropic appelle à replier les sous-agents : une seule boucle avec des skills bat les orchestrateurs
- 27 oct. 2026Cloudflare repense Containers pour les agents IA : un démarrage 6 fois plus rapide
- 27 oct. 2026ElevenLabs confie son support à un agent IA : 22 000 tickets par mois, 65% sans intervention humaine
- 27 oct. 2026Anthropic conseille de jeter la moitié des sous-agents : une seule boucle s'est révélée deux fois plus rapide
Questions clés sur cet article
Que sait-on sur Contexte et principes de base ?
Le LLM reçoit en entrée un bloc de texte appelé contexte. Sa taille est limitée : au début de l'ère des transformers, 32K tokens constituaient déjà une avancée majeure ; aujourd'hui, 1M tokens est devenu le standard de l'industrie. À partir du contexte, le modèle génère une suite — un fragment logiquement achevé, se terminant par un token spécial <stop>. Le contexte est ensuite étendu : le nouveau fragment y est ajouté, et le cycle se répète.
Que sait-on sur Appel des outils et leur description ?
Le modèle est entraîné à utiliser un formatage spécial pour appeler des fonctions externes. Chaque fournisseur implémente cela à sa manière : Anthropic utilise son propre format, tandis qu'Ollama et vLLM reproduisent l'API OpenAI Tools. Pour que le modèle sache quels outils sont à sa disposition, il faut les décrire au préalable dans le contexte (dans le « system prompt ») selon le standard JSON Schema — en précisant les paramètres, leurs types, leur description et leur caractère obligatoire ou non. Voici un exemple de description d'un outil de vérification de livraison (ge
Que sait-on sur Boucle de l'agent, rétroaction et gestion du contexte ?
L'API du fournisseur de LLM retourne des objets JSON typés. Le format varie : l'API OpenAI Tools est la plus répandue, Ollama et vLLM la reproduisent, tandis qu'Anthropic a son propre format. Dans la réponse (modèle claude-sonnet-4-5), l'appel arrive sous forme d'un bloc séparé dans le tableau content, avec un id, un nom et un objet input déjà analysé. Le signe d'un tour inachevé est stop_reason: "tool_use". Le résultat de l'exécution est renvoyé dans un nouveau message avec le rôle user et un bloc tool_result, qui fait référence à l'id de l'appel. Si l'outil a échoué, un f
Build & Ship Production AI Agents Without Boilerplate Code
Start your free 72-hour trial at Hamidun Academy (academy.hamidun.com) — interactive lessons on Claude Code & Cursor, live Tech Radar, and production agent templates.
L'essentiel de l'IA — une fois par semaine
Sept actus qui ont vraiment compté, choisies à la main. Sans bruit ni communiqués.
C'est fait ! Vérifiez votre boîte mail pour la confirmation.