Développer des agents IA avec OpenAI : mode d'emploi
2025 sera décidément l'année de l'IA agentique. De Google Cloud à Microsoft en passant par AWS ou Oracle, les principaux providers de cloud et d'IA mettent à disposition de leurs clients des outils sur mesure pour développer leurs propres agents. OpenAI ne fait pas exception. La start-up de San Francisco propose à l'heure actuelle les outils et modèles les plus avancés pour créer ses agents. Modèles, SDK, outils… Voici le starter pack d'OpenAI à disposition des développeurs.
4 modèles de raisonnement
C'est le cerveau de l'agent. Les nouveaux modèles de raisonnement basés sur la COT (chain-of-thought) sont à privilégier pour les développements agentiques. En raisonnant par étapes, le modèle dispose d'une meilleure compréhension des prompts à plusieurs étapes à réaliser. OpenAI propose, en avril 2025, quatre grands modèles de raisonnement : o1, o3-mini, 01-mini et o1-pro.
Modèles | Complexité de la tache à réaliser | Latence | Prix en input ($/1M tokens) |
Prix en output ($/1M tokens) |
---|---|---|---|---|
o1 | moyenne | moyenne | 15 | 60 |
o1 mini | simple | faible | 1,1 | 4,4 |
o1-pro | avancée | importante | 150 | 600 |
o3-mini | simple | faible | 1,1 | 4,4 |
Des modèles de text-to-speech et de speech-to-text
Pour compléter les modèles de raisonnement, OpenAI a récemment annoncé deux nouveaux modèles dédiés à la voix (trois en réalité avec la version mini). Ces derniers permettent de développer des agents vocaux. Pour la partie transcription, gpt-4o-transcribe permet de transcrire avec une grande précision (supérieure à Whisper) des enregistrements audio. Enfin son pendant de taille réduite gpt-4o-mini-transcribe réalise exactement la même fonction avec une latence réduite. Ce dernier est donc à privilégier pour les configurations agentiques ou un traitement vocal quasi-instantané est nécessaire. Enfin, gpt-4o-mini-tts permet de générer des séquences vocales complètes avec une diction personnalisée.
Modèles |
Latence |
Cout estimé par minute |
---|---|---|
gpt-4o-transcribe | moyenne | $0.006 |
gpt-4o-mini-transcribe | faible | $0.003 |
gpt-4o-mini-tts | faible | $0.015 |
Responses : une API augmentée avec des outils agentiques
Responses est une API spécialement conçue pour l'IA agentique. Elle remplacera l'API actuelle Assistants d'OpenAI en 2026. L'API permet d'utiliser les modèles d'OpenAI en les couplant, si nécessaire, aux outils agentiques développés par la start-up. Actuellement, trois outils sont disponibles.
- Web search pour utiliser les capacités de recherche web et obtenir des informations à jour
- File search pour donner une knowledge base avec du contexte à un modèle
- Computer use pour automatiser des tâches dans un navigateur web, sur le principe de Operator
Les outils peuvent être utilisés avec des modèles séparément ou conjointement (exemple : web search et File search). L'API supporte évidemment les entrées multimodales et le multiturn.
Agent SDK : orchestrer et monitorer ses agents
Enfin pour orchestrer le tout, OpenAI dispose maintenant d'un SDK complet développé en Python. Ce dernier permet de créer, monitorer et sécuriser les agents. Son installation (pip install openai-agents) et son utilisation sont pensées comme l'ensemble de l'écosystème OpenAI : simple et intuitif. Dans le détail, Agent SDK permet de créer trois types d'objets : des agents, des handoffs et des guardrails.
Les agents sont simplement définis par un nom et des instructions. C'est l'étape la plus simple. Exemple de la définition de deux agents :
from agents import Agent math_tutor_agent= Agent( name="Math Tutor", instructions="You provide help with math problems. Explain your reasoning at each step and include examples", ) history_tutor_agent = Agent( name="History Tutor", handoff_description="Specialist agent for historical questions", instructions="You provide assistance with historical queries. Explain important events and context clearly.", )
Plus complexe, les handoffs (sans terme équivalent en français) désignent, en simplifiant, le processus d'orchestration de l'agent. Le mécanisme permet à un agent de transférer le contrôle d'une tâche ou d'une conversation à un autre agent plus spécialisé ou mieux équipé pour traiter une requête spécifique. Les handoffs fonctionnent comme un système de relais intelligent. L'agent peut ainsi décider à tout moment quel nouvel agent choisir pour progresser dans sa tache.
Exemple :
triage_agent = Agent( name="Triage Agent", instructions="You determine which agent to use based on the user's homework question", handoffs=[history_tutor_agent, math_tutor_agent] )
Enfin les guardrails permettent tout simplement de créer des filtres pour limiter les requêtes non désirées en input. Ils viennent en complément des guardrails internes aux modèles d'OpenAI. Les guardrails sont, en réalité, un type d'agent différent chargés de vérifier la bonne validation (ou invalidation) d'une ou plusieurs conditions.
Exemple de la définition d'un guardrail :
guardrail_agent = Agent( name="Guardrail check", instructions="Check if the user is asking about homework.", output_type=HomeworkOutput, )
En résumé, avec ses modèles de raisonnement adaptés à différents niveaux de complexité, ses capacités vocales avancées via les modèles de text-to-speech et speech-to-text, son API Responses enrichie d'outils agentiques, et son SDK facilitant l'orchestration et la sécurisation des agents, OpenAI fournit désormais tous les composants essentiels pour construire des agents intelligents et autonomes.