Frameworks d’agents AI : LangGraph vs OpenAI Agents SDK
Traduction automatique
Cet article a été traduit automatiquement depuis la version originale en anglais.
Ces frameworks permettent de créer des applications dans lesquelles un modèle choisit et utilise des outils. La différence importante réside dans ce que chaque framework gère autour de cette boucle : l’état, la recherche documentaire, les transferts de contrôle, le suivi ou le déploiement. Utilisez-en un lorsque votre application a besoin de ces fonctionnalités. Si les étapes sont déjà connues, commencez par du code de processus classique.
Commencez par les agents LangChain pour une boucle modèle-outils basée sur LangGraph. Utilisez directement LangGraph lorsque vous devez décider comment chaque étape enregistre l’état, attend une approbation et reprend après un arrêt.
Choisissez selon l’état sauvegardé, la reprise après erreur, les fonctions de recherche et le travail nécessaire pour déployer et maintenir l’application.
Tableau de recommandations
| Besoin | Point de départ | Pourquoi |
|---|---|---|
| API d’agent haut niveau | Agents LangChain | La documentation de LangGraph recommande cette couche lorsque l’orchestration bas niveau n’est pas nécessaire. |
| Agent avec état en production | LangGraph | Son runtime expose l’état du graphe, la persistance, les interruptions et l’orchestration bas niveau. |
| Boucle modèle-outils compacte | OpenAI Agents SDK | Les outils, les mécanismes de protection, les sessions, le suivi et les transferts de contrôle partagent une même API. D’autres fournisseurs de modèles sont également pris en charge. |
| Agent documentaire fortement orienté RAG | LlamaIndex | Le chargement des données, les index, la recherche documentaire, les moteurs de requêtes, les outils et les processus d’agents appartiennent au même écosystème. |
| Processus multi-agent fondé sur des rôles | CrewAI | Les agents, les crews, les flows, les connaissances, la mémoire et l’observabilité correspondent à l’automatisation fondée sur des rôles. |
| Agent d’entreprise Microsoft | Microsoft Agent Framework | Il s’agit de l’orientation actuelle du SDK d’agents unifié de Microsoft, qui combine des idées de Semantic Kernel et d’AutoGen. |
| Petit agent centré sur le code | SmolAgents | API minimale, agents exécutant du code, agents appelant des outils et inspection facilitée. |
Comment choisir
Commencez par le contrôle de flux : comment l’agent passe d’une étape à l’autre et gère les échecs.
Si l’agent comporte des états explicites, de nouvelles tentatives, des approbations, des checkpoints et des exécutions pouvant être reprises, utilisez LangGraph. Par exemple, une exécution en attente d’approbation a besoin d’un état sauvegardé pour pouvoir continuer après la réponse de l’utilisateur. Pour une boucle modèle-outils classique, les agents de plus haut niveau de LangChain peuvent suffire. Utilisez directement le graphe lorsque vous devez contrôler la reprise d’une exécution interrompue.
L’OpenAI Agents SDK convient à une boucle Python compacte avec des outils et des transferts de contrôle. Il prend aussi en charge d’autres fournisseurs : un modèle OpenAI n’est donc pas obligatoire. Vérifiez la prise en charge des outils et du structured output par le modèle choisi, ainsi que la destination des données de suivi.
Si votre agent travaille principalement avec des documents, des index, la recherche documentaire et des moteurs de requêtes, commencez par LlamaIndex. Ses composants de recherche documentaire existants peuvent vous éviter d’implémenter vous-même ces éléments. Avant de remplacer l’agent loop, vérifiez que la recherche documentaire trouve les bonnes preuves et que vos tests mettent en évidence les réponses manquantes ou non étayées.
CrewAI est utile lorsque le processus réel comporte des rôles : chercheur, analyste, relecteur, rédacteur, opérateur. Il est moins pertinent d’inventer des rôles uniquement pour utiliser une abstraction multi-agent. Le nom d’un rôle ne précise pas ce qui se passe lorsque l’agent échoue.
La récupération après erreur nécessite un test dédié. Arrêtez une exécution après qu’un outil a modifié un fichier ou envoyé une requête, puis vérifiez ce qui se passe lors de la reprise. L’historique de conversation sauvegardé ne suffit pas à montrer si l’application va répéter cet effet de bord. Vérifiez les checkpoints, le comportement de réexécution et la gestion des actions en double dans la configuration que vous prévoyez de déployer.
Avec n’importe quel framework, examinez ce qui reste sous votre responsabilité : le stockage, les identifiants, les nouvelles tentatives, le déploiement et l’évaluation. Les fonctionnalités de recherche documentaire de LlamaIndex ne justifient pas à elles seules son choix pour une orchestration de processus sans rapport. Les rôles CrewAI nécessitent toujours un état explicite et une gestion des erreurs. Vérifiez les exigences d’intégration de Microsoft par rapport au reste de votre stack, et prévoyez de fournir une plus grande partie du runtime autour d’une expérimentation SmolAgents réduite.
Quand ne pas utiliser de framework d’agents
Ne commencez pas par un framework d’agents lorsqu’un processus typé, un endpoint de recherche ou un moteur de règles suffit à résoudre le problème. Les agents sont utiles lorsque le système doit choisir l’étape suivante après avoir observé des résultats intermédiaires. Ils conviennent mal aux ETL fixes, aux approbations déterministes, aux processus de facturation ou à tout cas où toutes les branches sont connues à l’avance.
Ne construisez pas de système multi-agent avant qu’un agent unique ne fonctionne correctement. Répartir un processus instable entre plusieurs agents ajoute des échecs de coordination et de la latence.
Les traces montrent les étapes exécutées. L’évaluation vérifie si ces étapes ont accompli la tâche correctement, dans les limites des autorisations et du budget.
Ordre d’implémentation
- Utilisez un processus classique pour les étapes connues. Utilisez un seul agent doté d’outils ciblés lorsqu’un modèle doit choisir l’étape suivante.
- Ajoutez des traces et un petit dataset de régression avant d’ajouter la mémoire.
- Utilisez directement LangGraph lorsque vous avez besoin d’un contrôle explicite sur l’état sauvegardé, les approbations et la reprise des exécutions.
- Testez l’OpenAI Agents SDK lorsque la boucle doit rester compacte ; vérifiez les fonctions prises en charge par le fournisseur choisi.
- N’ajoutez des agents fondés sur des rôles que lorsque les responsabilités sont réellement séparables.
Pour aller plus loin
- Boucles de raisonnement des agents AI présente ReAct, ReWOO et plan-and-execute.
- Architecture de la mémoire des agents AI couvre les checkpoints, la mémoire vectorielle et la mémoire documentaire.
- Runtime pour les agents AI de longue durée couvre les sessions, les sandboxes, les checkpoints, les traces et les architectures de déploiement.