Aller au contenu
3.2Expert7 min

LangGraph : des agents avec état sous forme de graphe orienté

Sebastian KarallMis à jour le 28 octobre 2026
Définition

LangGraph est un framework d'orchestration bas niveau de LangChain Inc. destiné à construire des agents IA avec état et de longue durée. Il modélise les agents comme un graphe orienté composé de nœuds et d'arêtes, avec un état partagé, un checkpointing persistant, du human-in-the-loop et du streaming. Il est disponible en version majeure stable 1.x, sous licence MIT.

L’essentiel

  • LangGraph modélise les agents comme un graphe orienté : les nœuds (nodes) exécutent la logique, les arêtes (edges) déterminent le flux de contrôle, et un état partagé est mis à jour via des reducers.
  • Son point fort est la durable execution : le checkpointing persistant permet de mettre en pause, de reprendre et d'intégrer des validations human-in-the-loop dans des workflows de longue durée.
  • LangGraph est la couche d'orchestration contrôlée au-dessus de LangChain, pas son remplaçant : LangChain fournit les modèles et plus de 750 outils, LangGraph le pilotage du déroulement avec état.
  • Il convient aux workflows multi-étapes complexes, réglementés et de longue durée soumis à une obligation d'audit ; pour des tâches simples en un seul appel (single-shot), il est surdimensionné.
  • Utilisé en production notamment chez Klarna, Replit, Uber, LinkedIn et Elastic ; observabilité via LangSmith, auto-hébergeable sur une infrastructure européenne comme STACKIT, IONOS ou OVHcloud.
  • Le prix à payer est la courbe d'apprentissage : modèle mental en graphe et verbosité (environ 120 lignes de code au lieu de 40 pour un agent ReAct, selon des analyses tierces).

LangGraph est un framework d'orchestration bas niveau de LangChain Inc. destiné à construire des agents IA avec état et de longue durée. Il ne modélise pas un agent comme un script linéaire, mais comme un graphe orienté composé de nœuds et d'arêtes, avec un objet d'état partagé, un checkpointing persistant, des points human-in-the-loop et du streaming. Depuis octobre 2025, LangGraph est disponible en version majeure stable 1.x, sous licence MIT, et prend en charge Python et JavaScript/TypeScript.

Pour exploiter des agents en production au-delà de simples appels à l'API d'un LLM, il faut un pilotage du déroulement maîtrisé et un état fiable. C'est exactement pour cela que LangGraph a été conçu : faible niveau d'abstraction, contrôle explicite, durable execution.

Réponses rapides

  • Ce que c'est : une couche d'orchestration qui décrit les workflows d'agents comme un graphe de nœuds (logique) et d'arêtes (flux de contrôle) reposant sur un état partagé.
  • Pour quels usages : les workflows multi-étapes complexes, contrôlés et de longue durée, en particulier avec état, validations et obligation d'audit.
  • Distinction : LangGraph n'est pas le successeur de LangChain, mais la couche d'orchestration avec état qui se place au-dessus. LangChain fournit les modèles et les outils, LangGraph le déroulement.

Le modèle de base : Nodes, Edges, State, Reducer

LangGraph décrit un agent comme un State Graph. Le modèle repose sur trois briques :

  • State : un objet typé et partagé qui traverse l'ensemble du graphe. Chaque étape lit dans le state et y réécrit. Le state est la seule source de vérité sur l'avancement d'une exécution.
  • Nodes (nœuds) : des fonctions qui effectuent le travail, par exemple appeler un LLM, exécuter un outil ou valider un résultat. Un nœud reçoit le state actuel et renvoie une mise à jour du state.
  • Edges (arêtes) : elles déterminent quel nœud s'exécute ensuite. Les arêtes conditionnelles (conditional edges) permettent des branchements selon le state, ce qui rend possibles des boucles, des retries et des chemins dynamiques qu'un pipeline linéaire ne peut pas représenter.

Le concept de reducer est essentiel. Lorsque plusieurs nœuds écrivent dans le même champ du state, comme une liste de messages, le reducer détermine comment les mises à jour sont fusionnées, par exemple en ajoutant au lieu d'écraser. Les étapes parallèles ou itératives restent ainsi sans conflit. C'est toute la différence entre une boucle d'agent fragile bricolée maison et une machine à états maîtrisée.

Persistance et checkpointing : durable execution

La propriété la plus importante de LangGraph en production est la durable execution grâce au checkpointing. Après chaque étape, le state est enregistré de façon persistante dans un backend. Il en découle trois capacités concrètes :

  • Pause et reprise : une exécution peut être interrompue puis reprise plus tard exactement au même endroit, sans perte de progression.
  • Tolérance aux pannes : si un workflow de longue durée plante, il ne repart pas de zéro, mais du dernier checkpoint.
  • Voyage dans le temps : on peut inspecter un state antérieur et faire repartir l'exécution dans une nouvelle branche à partir d'un point précis, ce qui facilite nettement le débogage et l'auditabilité.

Depuis la version 1.2, des timeouts par nœud limitent la durée d'exécution de chaque nœud. Un arrêt contrôlé (graceful drain) stoppe une exécution après l'étape en cours et enregistre un checkpoint qui permet de la reprendre. Pour les threads longs, le DeltaChannel n'enregistre à chaque étape que la modification au lieu de la valeur entière, mais il est actuellement marqué comme bêta.

Human-in-the-loop, streaming et sous-graphes

Human-in-the-loop (HITL) : comme le state est persistant, un graphe peut s'arrêter à un endroit défini et attendre une décision humaine, par exemple une validation avant une action payante ou irréversible. Le workflow ne continue qu'après confirmation. C'est précisément ce dont ont besoin les secteurs réglementés soumis à une exigence de supervision humaine (human oversight).

Streaming : LangGraph diffuse en streaming les résultats intermédiaires, les tokens et la progression des étapes. Deux options sont disponibles, un streaming type-safe (v2) et un streaming par blocs de contenu (v3), pour que les interfaces affichent en direct la progression de l'agent.

Sous-graphes : un graphe peut être intégré comme nœud dans un graphe plus grand. Cela permet d'encapsuler des modules d'agents réutilisables et de composer proprement des architectures multi-agents complexes, comme les patterns supervisor ou swarm, au lieu de tout entasser dans un déroulement monolithique.

Pseudo-code : un graphe simple

L'exemple de pseudo-code suivant montre une boucle d'agent minimale : un nœud modèle décide, un nœud outils exécute, une arête conditionnelle ferme la boucle.

```
State = {
messages: list # Reducer : ajouter, ne pas écraser
}

def call_model(state):
reponse = llm.invoke(state.messages)
return {"messages": [reponse]}

def call_tools(state):
resultat = tools.run(state.messages[-1].tool_calls)
return {"messages": [resultat]}

def should_continue(state):
if state.messages[-1].a_des_tool_calls:
return "tools" # arête conditionnelle -> exécuter l'outil
return END # réponse prête -> terminer

graph = StateGraph(State)
graph.add_node("model", call_model)
graph.add_node("tools", call_tools)
graph.set_entry_point("model")
graph.add_conditional_edges("model", should_continue)
graph.add_edge("tools", "model") # boucle de retour vers le modèle

app = graph.compile(checkpointer=Checkpointer())
app.invoke({"messages": [user_input]}, config={"thread_id": "client-42"})
```

Le thread_id rattache l'exécution à une série de checkpoints. C'est précisément ce mécanisme qui permet de poursuivre plus tard le même fil de conversation ou de processus au lieu de tout recommencer à chaque fois.

LangGraph vs LangChain : la différence

Une confusion fréquente : LangGraph n'est pas la prochaine version de LangChain. Les deux viennent de LangChain Inc., mais remplissent des rôles différents. LangChain est la bibliothèque pour les modèles, les prompts et les intégrations d'outils (plus de 750 outils dans l'écosystème). LangGraph est l'orchestration bas niveau qui assemble ces briques en un déroulement avec état et de longue durée. La migration du LangChain classique vers LangGraph se fait de manière incrémentale, et les composants LangChain existants restent utilisables.

L'écosystème se structure en couches bien distinctes : LangChain (bibliothèque et intégrations) fournit les briques, LangGraph (orchestration, durable) pilote le déroulement, LangSmith (évaluation et observabilité) assure le tracing, et LangSmith Deployment (anciennement LangGraph Platform) propose un hébergement managé.

Pour les protocoles MCP et A2A, il existe désormais des voies officielles. En Python, tu intègres les outils MCP via le module langchain.mcp, disponible à partir de langchain 1.4.0 via l'extra langchain[mcp] et actuellement marqué comme bêta. Il remplace le paquet langchain-mcp-adapters, dont le dépôt est archivé. À l'inverse, l'Agent Server, sur lequel repose LangSmith Deployment, expose nativement tes agents en tant qu'endpoint MCP sous /mcp et endpoint A2A sous /a2a/{assistant_id}.

Fonctionnalités et bénéfices en un coup d'œil

Fonctionnalité

Bénéfice concret

Graphe orienté (nodes/edges)

Contrôle explicite des branchements, des boucles et des retries au lieu de boucles d'agent opaques

State partagé avec reducers

Fusion sans conflit des mises à jour sur de nombreuses étapes

Checkpointing persistant

Durable execution : pause, reprise, tolérance aux pannes, débogage par voyage dans le temps

Human-in-the-loop

Validations avant les actions critiques, conformité aux exigences de supervision humaine

Streaming (v2 type-safe / v3 par blocs de contenu)

Progression en direct dans l'interface, meilleure expérience utilisateur lors des exécutions longues

Sous-graphes

Modules d'agents réutilisables, composition multi-agents propre

Timeouts par nœud, graceful drain, DeltaChannel (bêta)

Durée d'exécution limitée par nœud, arrêt contrôlé avec checkpoint, checkpoints plus légers dans les threads longs

Observabilité LangSmith (OTel)

Tracing et pistes d'audit pour les charges de travail réglementées

Exemple concret : processus contrôlé avec validation

Une agence B2B développe pour un client du secteur de l'assurance un agent qui prétraite les déclarations de sinistre : lire les documents, extraire les données, les vérifier au regard des polices, faire intervenir un gestionnaire pour validation lorsque le montant dépasse 5 000 euros, puis créer le dossier.

Avec LangGraph, cela devient un graphe à quatre nœuds avec une arête conditionnelle au niveau du seuil. Si le montant dépasse la limite, le graphe s'arrête à un point HITL et enregistre son state de façon persistante ; après validation, il reprend. Si le système tombe en panne entre-temps, l'exécution reprend au dernier checkpoint et aucun document n'est traité deux fois. Chaque étape est traçable dans LangSmith, ce qui satisfait l'exigence d'auditabilité.

Le prix de ce contrôle, c'est la courbe d'apprentissage. Des analyses tierces chiffrent le surcoût à environ 120 lignes de code pour un agent ReAct, contre environ 40 dans des frameworks plus légers. En contrepartie, le déroulement se pilote de façon déterministe au lieu de reposer sur une boucle boîte noire difficile à déboguer. LangGraph est utilisé en production notamment par Klarna, Replit, Uber, LinkedIn et Elastic.

Pour les agences et les équipes B2B

LangGraph est le bon choix si tu as besoin d'agents contrôlés, de longue durée et auditables, pas du prototype de démo le plus rapide. Pour les entreprises en Europe soumises à des exigences de RGPD et de souveraineté, un point est décisif : le framework est open source (MIT) et entièrement auto-hébergeable, par exemple sur STACKIT, IONOS ou OVHcloud. La solution managée LangSmith existe aussi dans une région UE avec un centre de données Google Cloud aux Pays-Bas, au même prix sur tous les plans. Le cocontractant reste toutefois la société américaine LangChain : selon la FAQ sur les régions, il n'existe pas de société européenne pour les contrats clients. Il faut donc vérifier en amont le contrat de sous-traitance (DPA) et les transferts vers des pays tiers (ceci ne constitue pas un conseil juridique). Chez Blck Alpaca, nous évaluons avec toi si LangGraph, un framework plus léger ou une solution directe et épurée correspond le mieux à ton cas d'usage, puis nous mettons en œuvre l'architecture dans le respect des exigences de souveraineté. Contacte-nous pour une évaluation de frameworks.

Résumer avec l’IAChatGPTClaudePerplexity

Ouvre le chat avec un prompt prêt à l’emploi.

Questions fréquentes

Quelle est la différence entre LangGraph et LangChain ?
LangChain est la bibliothèque pour les modèles, les outils et les intégrations (plus de 750 outils). LangGraph est la couche d'orchestration bas niveau placée au-dessus, qui pilote des agents avec état et de longue durée sous forme de graphe orienté. LangGraph ne remplace pas LangChain : il continue d'en utiliser les composants. La migration du LangChain classique vers LangGraph se fait de manière incrémentale.
Quand choisir LangGraph plutôt qu'un framework plus simple ?
LangGraph convient aux workflows complexes, contrôlés et de longue durée avec état, logique multi-étapes, human-in-the-loop ou obligation d'audit dans les secteurs réglementés. Pour du prototypage rapide et simple, il est trop verbeux (environ 120 lignes de code au lieu de 40 pour un agent ReAct, selon des analyses tierces). Dans « Building effective agents », Anthropic recommande de commencer par la solution la plus simple, généralement des appels directs à l'API du LLM, et de n'adopter un framework que lorsque la tâche l'exige et que l'équipe comprend le code sous-jacent.
Que signifie le checkpointing dans LangGraph ?
Le checkpointing enregistre de façon persistante l'état du graphe après chaque étape dans un backend de stockage. Cela permet la durable execution : un workflow peut être interrompu, repris plus tard ou mis en pause en attendant une validation humaine, sans perdre la progression déjà accomplie. C'est la base du human-in-the-loop et des processus de longue durée.
LangGraph prend-il en charge MCP et A2A ?
Oui. En Python, tu intègres les outils MCP via le module langchain.mcp, qui fait désormais partie de LangChain (actuellement en bêta) et remplace l'ancien paquet langchain-mcp-adapters. Par ailleurs, l'Agent Server, sur lequel repose LangSmith Deployment, expose nativement tes agents en tant qu'endpoint MCP (/mcp) et endpoint A2A (/a2a/{assistant_id}).
Quels langages LangGraph prend-il en charge ?
LangGraph prend en charge Python et JavaScript/TypeScript à part entière. Une variante Java existe sous forme de projet tiers (langgraph4j). Il convient donc aux équipes des deux grands écosystèmes web et backend, contrairement par exemple à CrewAI, qui ne fonctionne qu'en Python.
LangGraph est-il compatible avec le RGPD et les exigences de souveraineté ?
Le framework lui-même est open source (MIT) et entièrement auto-hébergeable, par exemple sur une infrastructure européenne comme STACKIT, IONOS ou OVHcloud. Une architecture conforme aux exigences européennes est donc possible. La solution managée LangSmith, y compris LangSmith Deployment (anciennement LangGraph Platform), existe aussi dans une région UE avec un centre de données aux Pays-Bas. Le cocontractant reste toutefois la société américaine LangChain : il faut donc vérifier le contrat de sous-traitance (DPA) et les transferts vers des pays tiers avant de signer. Ceci ne constitue pas un conseil juridique.

Envie d’aller plus loin ?

Reçois les nouvelles analyses directement dans ta boîte mail ou découvre comment nous mettons ce savoir au service des entreprises.