Dans le développement d'applications basées sur l'intelligence artificielle, un agent unique peut rapidement atteindre ses limites lorsqu'il doit gérer plusieurs domaines de compétences ou interfacer avec de
nombreux outils externes . Pour surmonter ces limitations, la mise en place d'un système composé de plusieurs agents spécialisés, capables de coopérer entre eux, devient une solution pertinente. C'est dans ce contexte que
LangGraph offre une infrastructure puissante pour créer et gérer des architectures multi-agents.
En décomposant les tâches en entités autonomes mais collaboratives, vous pouvez construire des workflows intelligents, hautement modulaires et adaptables à différents besoins. Cet article vous guide pas à pas dans l'utilisation de LangGraph pour créer un système multi-agent, en explorant deux approches principales : les modèles supervisor et swarm. Nous approfondirons aussi le mécanisme fondamental des handoffs qui permet la communication et la coordination entre agents.
Pourquoi un système multi-agent ?
Plutôt que de tout centraliser dans un agent unique, la décomposition fonctionnelle permet une gestion plus fine, plus maintenable et plus scalable. Les avantages sont nombreux :
une modularité accrue du code, facilitant les tests et les évolutions,
une meilleure compréhension du comportement de chaque composant du système,
une facilité d'extension : on peut ajouter de nouveaux agents sans tout réécrire,
une répartition des responsabilités qui permet une parallélisation ou une spécialisation efficace,
une réduction de la complexité individuelle pour chaque agent, en les concentrant sur un domaine précis.
Cette approche est particulièrement utile dans les systèmes complexes comme les chatbots multi-domaines, les assistants personnalisés, les orchestrateurs de tâches, ou les systèmes de réponse à des requêtes structurées.
1. Architecture Supervisor : un chef d’orchestre centralisé

Le modèle supervisor repose sur une architecture où un agent central joue le rôle de superviseur. C'est lui qui reçoit les requêtes utilisateur, analyse le contexte, et décide quel agent délégué exécutera la tâche. Il contrôle ainsi tout le flux de communication et permet une exécution contrôlée des étapes.
Installation de la bibliothèque supervisor
Exemple : réservation combinée de vol et d’hôtel
Voici un exemple de scénario dans lequel le superviseur coordonne deux agents : l'un pour la réservation de vols, l'autre pour les hôtels.
Cette architecture est facile à mettre en place et permet un contrôle total sur les transitions entre agents.
2. Architecture Swarm : coordination distribuée entre pairs

Contrairement à l'approche supervisor, le modèle swarm met l'accent sur la distribution. Ici, chaque agent possède une logique qui lui permet de transférer dynamiquement le contrôle à un autre agent si besoin. Cela permet une exécution plus fluide et décentralisée.
Installation de la bibliothèque swarm
Exemple de swarm avec transferts contextuels
Ce modèle est plus flexible et permet des architectures adaptatives, mais peut être un peu plus complexe à contrôler.
3. Mécanisme de Handoffs : clé de la coopération
Le handoff est un mécanisme fondamental dans la coordination entre agents dans LangGraph. Il s'agit de la capacité d'un agent à céder le contrôle à un autre agent, dans le cadre d'un échange structuré. Sans ce mécanisme, chaque agent resterait isolé et incapable de composer avec des tâches complexes nécessitant des compétences croisées.
Composantes d’un handoff
Un handoff typique implique :
- Le nom de l'agent cible (goto) : l'identifiant de l'agent auquel transférer la main.
- Le message ou payload (update) : les informations que l'on souhaite transmettre à l'agent suivant (typiquement l'historique des messages ou un état spécifique).
- Le graphe parent (graph=Command.PARENT) : nécessaire pour indiquer que l'on navigue à travers les nœuds d’un graphe multi-agent.
Ce mécanisme assure la continuité du dialogue ou du traitement tout en distribuant la logique métier entre plusieurs entités spécialisées. Il est aussi la base des architectures complexes où l'utilisateur peut interagir avec différents experts au sein d’un même flux de travail.
Exemple de fonction de handoff personnalisée
LangGraph permet de créer des outils de handoff grâce à la fonction createhandofftool. Voici un exemple typique :
Cette fonction génère dynamiquement un outil utilisable par un agent pour passer la main à un autre. L'information transmise peut contenir l'historique complet des messages ou une consigne spécifique permettant au nouvel agent de reprendre le contexte sans rupture.
Intégration dans un graphe
Une fois les outils créés, on les associe aux agents via leur paramètre tools, puis on intègre les agents dans un graphe multi-agent StateGraph. Voici comment on organise cette architecture :
Ce graphe contrôle la logique de navigation entre les agents. Grâce aux handoffs, les transitions deviennent dynamiques et pilotées par les besoins métier ou les intentions de l'utilisateur.
Cas d’usage typiques
Les handoffs sont particulièrement utiles dans des contextes comme :
- les chatbots multi-compétences, où chaque agent gère un domaine (juridique, RH, logistique...)
- les assistants intelligents capables de vous accompagner dans plusieurs types de tâches (réservation, conseil, analyse)
- les systèmes experts dans lesquels une première couche filtre la demande avant de la rediriger vers le bon module.
Grâce aux handoffs, on peut créer des scénarios complexes, par exemple : un chatbot qui commence par qualifier une requête avec un agent généraliste, puis transfère à un expert juridique, un assistant RH, ou un planificateur d'agenda. Chaque transfert s'effectue sans interruption du contexte utilisateur.
LangGraph permet ainsi de créer des dialogues intelligents où la collaboration entre agents est fluide, logique et efficace.
Conclusion
Les systèmes multi-agents de LangGraph offrent une méthodologie robuste et flexible pour créer des applications intelligentes et collaboratives. En s'appuyant sur les modèles supervisor ou swarm, vous pouvez adapter l'architecture à vos besoins :
supervisor pour un contrôle centralisé et prévisible,
swarm pour une coordination décentralisée plus fluide.
En comprenant et en utilisant correctement les handoffs, vous êtes en mesure de concevoir des chaînes d'agents intelligents qui interagissent entre eux pour résoudre des problèmes complexes, avec efficacité et modularité. LangGraph est ainsi un outil de choix pour les développeurs souhaitant construire des systèmes IA avancés, réactifs et bien structurés.