Ce guide vous permet de créer rapidement un agent fonctionnel avec le SDK. Les exemples suivent la même démarche en JavaScript et en Python : définissez un agent, exécutez-le, puis ajoutez des outils et des agents spécialisés à mesure que votre workflow évolue.
Installez le SDK
Créez un projet, installez le SDK et configurez votre clé API.
Créer une clé API
# JavaScript
npm install @openai/agents zod
# Python
pip install openai-agents
export OPENAI_API_KEY=sk-...
Créez et exécutez votre premier agent
Commencez par un seul agent chargé d’une tâche précise et un seul tour de conversation. Le SDK appelle le modèle et renvoie un objet contenant la sortie finale et l’historique d’exécution.
import { Agent, run } from "@openai/agents";
const agent = new Agent({
name: "History tutor",
instructions: "You answer history questions clearly and concisely.",
model: "gpt-6-astra",
});
const result = await run(agent, "When did the Roman Empire fall?");
console.log(result.finalOutput);Une réponse concise devrait s’afficher dans le terminal. Une fois cette boucle en place, conservez la même structure et ajoutez progressivement des fonctionnalités, sans partir d’emblée sur une architecture complexe à plusieurs agents.
Transmettez l’état au tour suivant
Le résultat de la première exécution vous permet aussi de choisir l’état à utiliser au deuxième tour.
| Si vous souhaitez | Utilisez |
|---|---|
| Conserver l’historique complet dans votre application | result.history |
| Confier au SDK le chargement et l’enregistrement de l’historique | Une session |
| Laisser OpenAI gérer l’état nécessaire à la poursuite de la conversation | Un identifiant de continuation géré par le serveur |
| Reprendre une exécution suspendue dans l’attente d’une approbation ou à la suite d’une interruption | result.stateinterruptions |
Après un transfert, réutilisez lastAgent
Dotez l’agent d’un outil
Le premier outil que vous ajoutez est souvent une fonction exposée comme outil ou un outil hébergé par OpenAI, comme la recherche web ou la recherche dans les fichiers.
import { Agent, run, tool } from "@openai/agents";
import { z } from "zod";
const historyFunFact = tool({
name: "history_fun_fact",
description: "Return a short history fact.",
parameters: z.object({}),
async execute() {
return "Sharks are older than trees.";
},
});
const agent = new Agent({
name: "History tutor",
instructions:
"Answer history questions clearly. Use history_fun_fact when it helps.",
tools: [historyFunFact],
});
const result = await run(
agent,
"Tell me something surprising about ancient life on Earth."
);
console.log(result.finalOutput);Consultez le guide commun Utilisation des outils si vous souhaitez utiliser des outils hébergés, rechercher des outils ou utiliser des agents comme outils.
Ajoutez des agents spécialisés
L’étape suivante consiste souvent à répartir les tâches du workflow entre plusieurs agents spécialisés. Un routeur peut alors passer la main à l’agent compétent pour chaque tâche.
import { Agent, run } from "@openai/agents";
const historyTutor = new Agent({
name: "History tutor",
instructions: "Answer history questions clearly and concisely.",
});
const mathTutor = new Agent({
name: "Math tutor",
instructions: "Explain math step by step and include worked examples.",
});
const triageAgent = Agent.create({
name: "Homework triage",
instructions: "Route each homework question to the right specialist.",
handoffs: [historyTutor, mathTutor],
});
const result = await run(
triageAgent,
"Who was the first president of the United States?"
);
console.log(result.finalOutput);
console.log(result.lastAgent?.name);Examinez les traces dès la première exécution
Le SDK enregistre les traces lors d’une exécution standard côté serveur. Dès que la première exécution aboutit, ouvrez le tableau de bord des traces pour examiner les appels au modèle, les appels aux outils, les transferts entre agents et les garde-fous avant d’affiner vos prompts.
Étapes suivantes
Une fois la première exécution réussie, consultez le guide correspondant à la prochaine fonctionnalité que vous souhaitez ajouter.
Définissez précisément le rôle d’un premier agent spécialisé avant d’étendre le workflow.
Ajoutez des outils hébergés et utilisez des fonctions ou des agents comme outils.
Découvrez la boucle d’exécution de l’agent, le streaming et les stratégies pour poursuivre une conversation.
Déterminez quand un agent spécialisé doit prendre le relais dans la conversation.