Aller au contenu
Se connecter

Certifications

Série · Certification Claude Certified ArchitectÉpisode 02 / 20

Claude Architect, épisode 2 : systèmes multi-agents et coordinateur

Quand un agent seul ne suffit plus : topologie en étoile, rôles du coordinateur, outil Task et AgentDefinition, lancement en parallèle, isolation du contexte. Schémas animés et quiz.

Par 21 min de lecture

Dans l’épisode 1, on a construit un agent : une boucle qui appelle Claude, exécute les outils demandés et s’arrête sur end_turn. Un agent seul fait déjà beaucoup. Mais dès que la tâche grossit, il touche un plafond.

Cet épisode explique comment le dépasser : plusieurs agents spécialisés, orchestrés par un coordinateur. C’est l’un des sujets les plus testés de l’examen, parce qu’il se prête bien aux questions de diagnostic : « ce système est lent », « ce sous-agent répond à côté », « le rapport final rate l’essentiel ». À la fin de l’épisode, vous saurez trouver la cause.

Où on en est dans le programme

Domaine 1 — Architecture agentique et orchestration (27 % de l'examen). Cet épisode couvre deux tâches :

  • 1.2 — orchestrer un système multi-agents ;
  • 1.3 — configurer l'appel d'un sous-agent.

Objectifs de l’épisode

À la fin, vous saurez :

  1. dire pourquoi un agent seul atteint ses limites, et quand passer à plusieurs ;
  2. dessiner la topologie en étoile et justifier sa règle d’or ;
  3. citer les quatre responsabilités du coordinateur ;
  4. décrire les quatre champs d’une AgentDefinition et qui a le droit d’utiliser l’outil Task ;
  5. lancer des sous-agents en parallèle, et reconnaître un système qui les lance un par un ;
  6. expliquer l’isolation du contexte et comment transmettre l’information utile ;
  7. écrire une consigne de sous-agent qui fixe un objectif, pas une procédure ;
  8. diagnostiquer un résultat cloisonné et le corriger.

Prérequis : la boucle agentique de l’épisode 1 (stop_reason, paires tool_use / tool_result, API sans état). Tout ce qui suit s’appuie dessus.

1. Le plafond de l’agent unique

Un agent seul fait tout lui-même : il cherche, lit, compare, rédige. Sur une petite tâche, c’est parfait. Sur une grosse, trois problèmes apparaissent.

Les trois limites d'un agent unique : le contexte qui déborde, les tâches qui attendent leur tour, et des résultats génériques faute de spécialisation. Le contexte déborde limite les résultats d'outils s'accumulent Tout passe à la file T1 T2 T3 des sous-tâches indépendantes attendent leur tour Touche-à-tout bon partout, expert nulle part des consignes génériques donnent des résultats génériques
Limite Ce qui se passe Ce qu’on en voit
Débordement du contexte chaque résultat d’outil s’ajoute à l’historique, qui finit par dépasser la fenêtre de contexte la tâche s’arrête avant la fin, ou Claude « oublie » le début
Goulot séquentiel l’agent traite les sous-tâches une à une, même quand elles ne dépendent pas les unes des autres la latence s’additionne
Manque de spécialisation une seule consigne doit couvrir la recherche, l’analyse et la rédaction des réponses moyennes partout

La réponse : confier chaque morceau à un agent spécialisé, qui travaille avec son propre contexte, réduit au strict nécessaire, et lancer ceux qui sont indépendants en parallèle.

Piège

Plusieurs agents, ce n'est pas gratuit : chaque sous-agent est un appel de plus, facturé, et une source d'erreur de plus. On passe au multi-agents quand l'une des trois limites est réellement atteinte, pas par principe.

2. La topologie en étoile

L’architecture de référence a une forme d’étoile (hub-and-spoke) : un coordinateur au centre, des sous-agents autour.

Le coordinateur au centre, relié à quatre sous-agents. Les sous-agents ne communiquent jamais directement entre eux : les liaisons entre eux sont barrées. Coordi- nateur Sous-agentSous-agentSous-agentSous-agent La règle d'or les sous-agents ne se parlent jamais directement. Le routage tout passe par le coordinateur, dans les deux sens.
Le trait jaune parcourt les quatre liaisons : chaque échange part du coordinateur ou y revient. Les liaisons directes entre sous-agents, en pointillés, n'existent pas.

Pensez à une équipe de développement. Chaque développeur travaille sur sa fonctionnalité et rend compte à l’architecte. L’architecte assemble le tout et présente le résultat au client. Les développeurs ne se coordonnent pas entre eux dans le dos de l’architecte, et ce n’est pas eux qui présentent le produit final.

Pourquoi cette contrainte ? Parce qu’un seul point de passage apporte trois garanties :

  • l’observabilité : tout ce qui se passe est visible au même endroit ;
  • la gestion des erreurs centralisée : un seul acteur décide quoi faire d’un échec ;
  • l’indépendance : les sous-agents ne dépendent pas les uns des autres, donc ils peuvent tourner en parallèle.
À retenir pour l'examen

La topologie en étoile est la seule qui garantit une observabilité complète du système et une gestion des erreurs centralisée. Une option où deux sous-agents s'échangent directement des résultats est presque toujours la mauvaise réponse.

3. Les quatre responsabilités du coordinateur

Le coordinateur ne fait pas le travail de fond. Il fait tourner un cycle de quatre rôles.

Le cycle du coordinateur : décomposer la demande, déléguer à des sous-agents, agréger leurs résultats, gérer les erreurs, puis recommencer si besoin. 1. Décomposer découper la demande en morceaux précis, que l'on peut confier 2. Déléguer lancer le bon sous-agent pour chaque morceau, via l'outil Task 3. Agréger rassembler les résultats et les fondre en une réponse unique 4. Gérer les erreurs repérer un échec, puis réessayer, ignorer ou remonter le problème
  1. Décomposer. Transformer une demande vaste en morceaux précis. C’est le coordinateur qui décide s’il faut des sous-agents, combien, et lesquels.
  2. Déléguer. Lancer, pour chaque morceau, le sous-agent spécialisé qui convient : un chercheur, un analyste, un rédacteur.
  3. Agréger. Récupérer les résultats indépendants et en tirer une réponse cohérente. Ce n’est jamais le travail d’un sous-agent ordinaire.
  4. Gérer les erreurs. Un sous-agent peut échouer ou rendre un résultat inutilisable. Le coordinateur décide : réessayer, passer outre, ou signaler le problème.

Une remarque qui relie cet épisode au précédent : le coordinateur est lui-même un agent. Il tourne dans la même boucle agentique, et lancer un sous-agent n’est pour lui qu’un appel d’outil comme un autre. Toute la mécanique de l’épisode 1 reste valable.

4. L’outil Task : comment on lance un sous-agent

Un sous-agent se lance avec un outil dédié, l’outil Task. Le coordinateur le demande avec un bloc tool_use, exactement comme il demanderait lookup_order dans l’épisode 1. La différence, c’est ce que contient l’appel : non pas des paramètres de fonction, mais la définition complète d’un agent.

Configurer le coordinateur

Pour que le coordinateur puisse déléguer, deux conditions doivent être réunies : l’outil Task figure dans ses outils, et il figure dans sa liste d’outils autorisés.

python
# Configuration de l'agent coordinateur
coordinator_config = {
    "model": "claude-haiku-4-5",          # économique pour orchestrer
    "system": """You are a research coordinator.
Decompose tasks and delegate to specialized subagents.
Specify research goals and quality criteria.
Do NOT provide step-by-step procedures.""",

    "tools": [
        # L'outil Task permet de lancer des sous-agents
        {
            "type": "task",                # type d'outil Task intégré
            "name": "Task",                # doit s'écrire exactement "Task" (T majuscule)
        },
    ],
    # allowedTools DOIT inclure "Task" explicitement
    "allowedTools": ["Task", "compile_report"],
}

Sans "Task" dans allowedTools, le coordinateur ne peut lancer aucun sous-agent : il se retrouve à tout faire lui-même, et on revient au plafond de la section 1.

Le contenu de l’appel : l’AgentDefinition

Quand le coordinateur appelle Task, il doit fournir une AgentDefinition : quatre champs qui décrivent entièrement le sous-agent à créer. Cliquez sur chaque champ :

Qui est ce sous-agent ? Une étiquette qui définit son rôle exact dans le système.

  1. "description": "Web Search Specialist"

C'est aussi ce qui permet de savoir, dans les journaux, quel agent a produit quel résultat.

Que doit-il accomplir ? Les instructions propres à cette mission : l'objectif, les critères de qualité, et tout le contexte dont il a besoin.

  1. "prompt": "Research goal: find 5-8 recent papers (2022-2025) on offshore wind energy environmental impact in the EU. Quality criteria: peer-reviewed, include key findings, flag conflicting conclusions. Return as structured JSON."

C'est le champ le plus important, et le seul canal pour transmettre du contexte (section 6).

Avec quels outils ? La liste, isolée, des seuls outils que ce sous-agent a le droit d'utiliser.

  1. "allowed_tools": ["web_search", "read_url"]

Remarquez l'absence de "Task" : ce sous-agent ne peut pas en lancer d'autres (section 5).

Quel modèle le fait tourner ? Chaque sous-agent peut avoir le sien.

  1. "model": "claude-haiku-4-5"

Un modèle léger pour une recherche simple, un modèle plus capable pour une analyse délicate : c'est un levier de coût direct.

Assemblé, l’appel complet ressemble à ceci :

python
task_tool_call = {
    "type": "tool_use",
    "id":   "tu_web_search_001",
    "name": "Task",
    "input": {
        # Les champs de l'AgentDefinition
        "description": "Web Search Specialist",     # étiquette
        "prompt": """Research goal: Find 5-8 recent papers (2022-2025)
on offshore wind energy environmental impact in the EU.
Quality criteria: peer-reviewed, include key findings,
flag conflicting conclusions. Return as structured JSON.""",

        # Sous-agent limité à son rôle : PAS d'outil Task ici
        "allowed_tools": ["web_search", "read_url"],

        "model": "claude-haiku-4-5",
    },
}
Bon à savoir : dans le Claude Agent SDK

Les extraits ci-dessus montrent la forme des données, celle que l'examen interroge. Dans le Claude Agent SDK, on déclare les sous-agents à l'avance avec AgentDefinition, et on autorise l'outil de lancement dans allowed_tools (exemple ci-dessous).

Deux différences de nom à connaître : la documentation actuelle appelle l'outil de lancement Agent, quand les versions plus anciennes et l'examen disent Task ; et le champ des outils du sous-agent s'y appelle tools. Vérifiez la documentation de votre version du SDK : le concept, lui, ne change pas.

python
from claude_agent_sdk import ClaudeAgentOptions, AgentDefinition

options = ClaudeAgentOptions(
    allowed_tools=["Agent", "WebSearch", "WebFetch"],  # "Task" dans les anciennes versions
    agents={
        "web-search": AgentDefinition(
            description="Web Search Specialist. Use for literature searches.",
            prompt="Find peer-reviewed sources. Flag conflicting conclusions.",
            tools=["WebSearch", "WebFetch"],
            model="haiku",
        ),
    },
)

5. Qui a le droit de lancer des sous-agents ?

Rôle Accès à Task Pourquoi
Coordinateur ✅ oui indispensable : sans Task, il ne peut lancer aucun sous-agent
Sous-agent ordinaire ❌ non un exécutant ne lance pas d’autres agents : la délégation en cascade, incontrôlée, casse le système
Sous-coordinateur hiérarchique ✅ oui seulement s’il est explicitement conçu pour déléguer à un niveau inférieur

Pourquoi interdire Task aux sous-agents ? Imaginez qu’un chercheur puisse lancer d’autres chercheurs, qui en lancent d’autres… On perd la forme en étoile, l’observabilité, le contrôle des coûts, et on s’expose à une boucle de délégation sans fin. Un seul acteur délègue : le coordinateur.

La seule exception est voulue et documentée : dans une architecture hiérarchique, un sous-coordinateur pilote sa propre équipe. Il reçoit Task parce que c’est son rôle, pas par accident.

À retenir pour l'examen

Le coordinateur a besoin de Task, les sous-agents non. Une question décrit des sous-agents qui se lancent les uns les autres, ou des coûts qui explosent ? Cherchez un sous-agent qui a reçu "Task" dans ses outils autorisés sans être conçu comme sous-coordinateur.

6. Lancer en parallèle, pas les uns après les autres

C’est ici que le multi-agents devient vraiment intéressant. Le coordinateur peut lancer plusieurs sous-agents en même temps, à une condition précise.

La règle : pour lancer des sous-agents en parallèle, le coordinateur émet plusieurs appels Task dans une seule réponse, et non un appel par tour.

Avec trois sous-agents de 4, 6 et 3 secondes, le lancement en parallèle prend 6 secondes, le plus long des trois. Le lancement séquentiel prend 13 secondes, la somme des trois. Parallèle : une réponse, trois appels Task S1 · 4 sS2 · 6 sS3 · 3 s 1 appel total = max(S1, S2, S3) = 6 s le plus long des trois Séquentiel : un appel Task par tour (anti-pattern) S1 · 4 sS2 · 6 sS3 · 3 s 3 tours total = S1 + S2 + S3 = 13 s, plus de deux fois plus lent
Durées d'exemple. En séquentiel, chaque sous-agent attend que le précédent ait fini, alors qu'ils ne dépendent pas les uns des autres : on retrouve exactement le goulot qu'on voulait éviter en passant au multi-agents.

Voici la réponse d’un coordinateur qui lance trois chercheurs en parallèle. Les trois blocs tool_use sont dans le même tableau content :

python
coordinator_response = {
    "role": "assistant",
    "content": [
        {"type": "text", "text": "Researching in parallel across 3 domains."},

        # Tâche 1
        {"type": "tool_use", "id": "tu_env", "name": "Task",
         "input": {"description": "Environmental Researcher", "prompt": "...",
                   "allowed_tools": ["web_search"], "model": "claude-haiku-4-5"}},

        # Tâche 2
        {"type": "tool_use", "id": "tu_econ", "name": "Task",
         "input": {"description": "Economic Data Researcher", "prompt": "...",
                   "allowed_tools": ["web_search"], "model": "claude-haiku-4-5"}},

        # Tâche 3
        {"type": "tool_use", "id": "tu_policy", "name": "Task",
         "input": {"description": "EU Policy Analyst", "prompt": "...",
                   "allowed_tools": ["web_search"], "model": "claude-haiku-4-5"}},
    ],
    # ↑ Les TROIS dans le même tableau content = exécution PARALLÈLE
    # Un appel par tour = anti-pattern séquentiel
}

Rejouez le déroulé, étape par étape

L'utilisateur demande un rapport sur l'impact de l'éolien en mer dans l'UE : environnement, économie, réglementation.

  1. user : « Rapport sur l'éolien en mer dans l'UE »

Le coordinateur décompose : trois domaines indépendants, donc trois sous-agents.

Le coordinateur répond avec stop_reason = "tool_use" et trois blocs tool_use dans une seule réponse.

  1. user : « Rapport sur l'éolien en mer dans l'UE »
  2. assistant : [Task tu_env] [Task tu_econ] [Task tu_policy]

Les trois sous-agents démarrent en même temps, chacun avec son contexte vierge et sa propre AgentDefinition.

Chaque sous-agent fait tourner sa propre boucle et rend son résultat. Les trois tool_result repartent dans un seul message user, chacun avec son tool_use_id.

  1. user : « Rapport sur l'éolien en mer dans l'UE »
  2. assistant : [Task tu_env] [Task tu_econ] [Task tu_policy]
  3. user : [tool_result tu_env] [tool_result tu_econ] [tool_result tu_policy]

C'est la règle de l'épisode 1 : une demande groupée appelle une réponse groupée.

Le coordinateur agrège : il croise les trois résultats et répond avec stop_reason = "end_turn".

Durée totale : celle du sous-agent le plus lent, pas la somme des trois.

Diagnostic d'examen

« Le système est environ trois fois plus lent que prévu. » Avec trois sous-agents indépendants, c'est la signature du lancement séquentiel : le coordinateur émet un appel Task par tour. La correction : regrouper les appels Task dans une seule réponse.

7. L’isolation du contexte : le piège n° 1

C’est le point que l’examen teste le plus sur la tâche 1.3.

Un sous-agent démarre avec une mémoire vide. Il n’hérite de rien : ni de l’historique de conversation du coordinateur, ni des résultats d’outils précédents, ni d’aucun contexte implicite. Il ne sait que ce qu’on lui transmet explicitement.

Le sas d'isolation. Passent jusqu'au sous-agent : sa consigne système, le champ prompt de l'appel Task, sa liste d'outils et son modèle. Sont bloqués : l'historique du coordinateur, les résultats d'outils précédents et tout contexte implicite. Ce qui passe consigne systèmechamp prompt de l'appel Taskliste allowed_toolsmodèle Ce qui est bloqué historique du coordinateurrésultats d'outils précédentscontexte implicite, « ambiant » Sous-agent mémoire vierge
Le mur rouge clignote : rien ne le traverse « par défaut ». Si le sous-agent a besoin d'une information, elle doit passer par l'une des voies vertes, en pratique le champ prompt.

Reprenons l’image de l’équipe. Une cheffe de projet est sur le dossier depuis trois semaines : elle connaît le problème, les contraintes, les préférences du client, ce qui a déjà été tenté. Vous embauchez un prestataire pour une tâche précise. Il arrive le matin sans rien savoir de tout ça. Si personne ne lui fait de briefing, il refera des choses déjà faites, ignorera les contraintes, et rendra un travail à côté.

Le sous-agent, c’est ce prestataire. Et le briefing, c’est le coordinateur qui le fait.

Franchir le sas : l’injection explicite

Si un sous-agent a besoin d’une information de l’historique, le coordinateur doit :

  1. l’extraire lui-même de sa conversation ;
  2. l’écrire explicitement dans le champ prompt de l’appel Task.
  1. user → coordinateur
    Résume l'avancement du projet sur le 3ᵉ trimestre. Le client refuse toute dépense au-delà de 50 000 €.
  2. coordinateur → Task
    prompt : « Objectif : synthèse de l'avancement du projet, T3 uniquement. Contrainte client : budget plafonné à 50 000 €, signaler tout dépassement. Rendre une liste à puces. »

Sans la deuxième bulle, le sous-agent ignorerait la période et le plafond de budget : il produirait une synthèse générique, hors sujet.

Diagnostic d'examen

Un sous-agent rend un résultat hors sujet, en doublon, ou qui ignore la situation ? Dans presque tous les cas, la cause est la même : le coordinateur n'a pas injecté explicitement le contexte nécessaire dans le prompt de l'appel Task. Ce n'est ni le modèle, ni la taille du contexte.

8. Consignes d’orchestration : l’objectif, pas la procédure

Dernier levier : la manière d’écrire le prompt d’un sous-agent.

❌ Anti-pattern : le « comment » ✅ Bonne pratique : le « quoi » et le « pourquoi »
une procédure pas à pas un objectif et des critères de qualité
« Va sur Google Scholar, prends les 5 premiers résultats, résume-les. » « Trouve 5 à 8 articles relus par des pairs, publiés entre 2022 et 2025. Signale les conclusions contradictoires. »
fragile : si le site est en panne ou a changé, le sous-agent échoue ou improvise mal robuste : le sous-agent choisit sa propre méthode avec ses outils
enferme un modèle capable dans un rôle d’exécutant exploite sa capacité à raisonner

Pourquoi ? Une procédure rigide casse au premier imprévu. Un objectif clair, assorti de critères pour juger le résultat, laisse le sous-agent trouver le meilleur chemin, tout en gardant le contrôle sur ce qui compte : la qualité de ce qu’il rend.

C’est d’ailleurs ce que dit la consigne système du coordinateur, en section 4 : « Specify research goals and quality criteria. Do NOT provide step-by-step procedures. »

9. Scénario d’examen : le rapport cloisonné

Mettons tout ensemble avec un cas typique.

La situation. Un coordinateur lance quatre sous-agents en parallèle pour un rapport complet : articles scientifiques, presse, rapports gouvernementaux, opinion sur les réseaux sociaux. Chacun fait parfaitement son travail. Le système est rapide. Pourtant, le rapport final passe à côté de l’essentiel : il juxtapose quatre résumés et ne dit rien de ce qui se passe à leurs intersections.

Quatre flux de recherche qui restent chacun dans leur couloir produisent un rapport cloisonné. En ajoutant une étape de synthèse qui les croise, on obtient des enseignements transversaux. Articles scientifiquesPresseRapports publicsRéseaux sociaux Synthèsecroiser visioncroisée sans synthèse : quatre couloirs qui ne se croisent jamais
D'abord quatre couloirs parallèles, puis l'étape de synthèse apparaît et les relie. C'est elle qui manquait au pipeline.

Les fausses pistes. Ce n’est pas une fenêtre de contexte trop petite, ni un mauvais outil, ni une consigne système trop longue : chaque sous-agent a bien fait son travail.

La vraie cause. Une décomposition trop étroite : quatre couloirs indépendants, et personne n’est chargé de la synthèse transversale.

La correction. Ajouter une étape d’agrégation explicite : un dernier passage du coordinateur, consacré à chercher les intersections, ou un cinquième sous-agent dédié à la synthèse, qui rend son résultat au coordinateur.

La règle générale

Un système multi-agents qui rend un résultat incomplet ou cloisonné souffre presque toujours d'une étape manquante dans le pipeline, pas d'un problème de configuration du modèle.

Fiche de révision

Concept La règle Le diagnostic d’examen
Topologie tout passe par le coordinateur garantit l’observabilité et la gestion centralisée des erreurs
Outil Task le coordinateur l’a, les sous-agents non empêche les boucles de délégation incontrôlées
AgentDefinition description, prompt, allowed_tools, model le prompt est le seul canal de contexte
Lancement parallèle plusieurs appels Task dans une réponse corrige une latence environ ×3
Isolation du contexte les sous-agents n’héritent de rien toujours injecter le contexte explicitement
Consignes objectif + critères, pas de procédure les procédures rigides cassent au premier imprévu
Résultat cloisonné causé par une décomposition trop étroite il manque une étape de synthèse

Glossaire

Terme Définition
coordinateur l’agent central qui décompose, délègue, agrège et gère les erreurs
sous-agent un agent spécialisé, lancé par le coordinateur pour une mission précise
topologie en étoile (hub-and-spoke) architecture où toute communication passe par le coordinateur
outil Task l’outil qui permet de lancer un sous-agent (appelé Agent dans les versions récentes du SDK)
AgentDefinition les quatre champs qui décrivent un sous-agent : description, prompt, outils, modèle
allowedTools la liste des outils qu’un agent a le droit d’utiliser
isolation du contexte un sous-agent démarre sans aucune mémoire de la conversation du coordinateur
injection explicite le coordinateur recopie dans le prompt du sous-agent l’information dont il a besoin
sous-coordinateur hiérarchique un sous-agent explicitement conçu pour déléguer à son tour

Quiz d’entraînement

Ces questions sont de moi, écrites dans le style de l’examen. Ce ne sont pas des questions officielles. Choisissez une réponse : la correction s’affiche aussitôt, et le score se calcule en bas. Connecté, votre meilleur score est gardé dans votre compte, et « Recommencer » efface seulement vos réponses à l’écran. Sans compte, rien n’est enregistré.

Dans une topologie en étoile, deux sous-agents ont besoin de partager un résultat intermédiaire. Que faire ?

Réponse B. Toute communication passe par le coordinateur : c'est ce qui garantit l'observabilité et la gestion centralisée des erreurs. A casse la topologie, D crée une délégation en cascade.

Un coordinateur reçoit une demande complexe mais traite tout lui-même, sans jamais lancer de sous-agent. Quelle est la cause la plus probable ?

Réponse D. Sans l'outil Task autorisé, le coordinateur n'a tout simplement aucun moyen de lancer un sous-agent.

Lesquels sont les quatre champs d'une AgentDefinition ?

Réponse A. Le rôle (description), la mission et le contexte (prompt), les outils permis (allowed_tools) et le modèle. Il n'y a pas de champ « history » : le sous-agent n'hérite d'aucun historique.

Un sous-agent « chercheur » a reçu "Task" dans ses outils autorisés. Quel risque principal cela crée-t-il ?

Réponse C. Un exécutant ordinaire ne doit pas pouvoir déléguer. Seul un sous-coordinateur hiérarchique, conçu pour ça, reçoit Task.

Trois sous-agents indépendants prennent 4, 6 et 3 secondes. Le coordinateur les lance correctement en parallèle. Combien dure leur exécution ?

Réponse A. En parallèle, la durée totale est celle du plus long : max(4, 6, 3) = 6 s. 13 s est la somme, donc la durée en séquentiel.

Un système avec trois sous-agents indépendants est environ trois fois plus lent que prévu. Les journaux montrent un appel Task par réponse du coordinateur. Que corriger ?

Réponse D. Un appel par tour, c'est l'anti-pattern séquentiel : la durée devient la somme des trois. Regrouper les appels dans une réponse les fait tourner en parallèle.

L'utilisateur a précisé au coordinateur, trois messages plus tôt, que l'analyse porte uniquement sur 2024. Le sous-agent lancé ensuite rend des données de 2019 à 2024. Pourquoi ?

Réponse B. A est un piège : le sous-agent n'a aucun accès à l'historique du coordinateur. Il ne connaît que ce qu'on écrit dans son prompt.

Quel prompt de sous-agent suit la bonne pratique d'orchestration ?

Réponse C. Un objectif précis et des critères de qualité, sans procédure. A et D sont des procédures rigides qui cassent au premier imprévu ; B n'a ni objectif ni critère.

Quatre sous-agents font chacun un excellent travail, mais le rapport final ne fait que juxtaposer leurs résumés sans les croiser. Quelle est la cause ?

Réponse D. Résultat cloisonné = décomposition trop étroite et étape d'agrégation manquante. Les sous-agents ont bien fait leur travail : A, B et C sont des fausses pistes.

Dans quel cas est-il légitime de donner l'outil Task à un agent qui n'est pas le coordinateur principal ?

Réponse A. L'exception est voulue et documentée : un sous-coordinateur délègue parce que c'est son rôle. B et D mènent à la délégation en cascade ; C oublie l'architecture hiérarchique.

Votre score

Quiz terminé. En dessous de 8, relisez la fiche de révision, puis recommencez.

Pour la suite

On sait maintenant lancer, configurer et orchestrer des sous-agents, et diagnostiquer les quatre pannes typiques : délégation impossible, lenteur, sous-agent hors sujet, rapport cloisonné. L’épisode 3 explique comment transmettre ce contexte sans rien perdre, et comment gérer les sessions dans le temps.