Les workflows multi-agents sont utiles lorsque plusieurs spécialistes doivent se répartir le travail. Pour concevoir un tel workflow, déterminez d’abord quel agent fournira la réponse finale à l’utilisateur dans chaque branche.
Choisissez le mode d’orchestration
| Mode | Quand l’utiliser | Fonctionnement |
|---|---|---|
| Passage de relais | Un spécialiste doit reprendre la conversation dans cette branche du workflow | L’agent spécialiste prend la main |
| Agents utilisés comme outils | L’agent principal doit garder la main et appeler des spécialistes pour des tâches bien délimitées | L’agent principal reste responsable de la réponse |
Passez le relais pour confier la réponse à un spécialiste
Le passage de relais est particulièrement adapté lorsqu’un spécialiste doit fournir lui-même la prochaine réponse à l’utilisateur plutôt que d’apporter son aide en arrière-plan.
import { Agent, handoff } from "@openai/agents";
const billingAgent = new Agent({ name: "Billing agent" });
const refundAgent = new Agent({ name: "Refund agent" });
const triageAgent = Agent.create({
name: "Triage agent",
handoffs: [billingAgent, handoff(refundAgent)],
});Pour que les règles de routage restent claires :
- Confiez à chaque spécialiste une mission bien délimitée.
- Rédigez une description courte et concrète pour
.handoffDescription - Ne créez une branche que si elle nécessite réellement d’autres instructions, outils ou règles.
Pour les usages avancés, un passage de relais peut aussi transmettre des métadonnées structurées ou un historique filtré. Consultez la documentation du SDK pour connaître les API correspondantes, car leur mise en œuvre varie selon le langage.
Utilisez les agents comme outils lorsque l’agent principal coordonne le workflow
Utilisez agent.asTool()
import { Agent } from "@openai/agents";
const summarizer = new Agent({
name: "Summarizer",
instructions: "Generate a concise summary of the supplied text.",
});
const mainAgent = new Agent({
name: "Research assistant",
tools: [
summarizer.asTool({
toolName: "summarize_text",
toolDescription: "Generate a concise summary of the supplied text.",
}),
],
});Cette approche est généralement préférable dans les cas suivants :
- l’agent principal doit faire la synthèse des résultats pour formuler la réponse finale ;
- le spécialiste accomplit une tâche bien délimitée, comme résumer ou classer du contenu ;
- vous souhaitez conserver un workflow principal stable qui intègre les appels aux spécialistes sans leur passer le relais.
N’ajoutez des spécialistes que si le contrat change
Commencez avec un seul agent chaque fois que c’est possible. N’ajoutez des spécialistes que si cela permet de mieux isoler les capacités ou les règles applicables, de clarifier les prompts ou de rendre les traces plus lisibles. Le gain doit être significatif.
Répartir le travail trop tôt entre plusieurs agents multiplie les prompts, les traces et les étapes susceptibles de nécessiter une approbation, sans forcément améliorer le workflow.
Étapes suivantes
Une fois que vous avez déterminé quel agent est responsable de la réponse, consultez le guide qui répond à votre prochaine question sur l’exécution ou la gestion de l’état.
Affinez les instructions, les outils et le contrat de sortie de chaque spécialiste.
Découvrez comment fonctionnent les passages de relais et les outils pendant une exécution.
Découvrez comment
lastAgentet l’état permettant de reprendre l’exécution influent sur le tour de conversation suivant.