LangGraph 详细解析· 构建有状态、多智能体的复杂应用
基于图的 Agent 编排框架,像搭积木一样简单!

LangGraph 是基于图(Graph)的 Agent 编排框架,专为构建有状态、多节点、循环执行的复杂应用而设计,支持条件分支、并行执行、人工干预等高级特性。
1. LangGraph 是什么?
LangGraph 是基于图(Graph)的 Agent 编排框架,专为构建有状态、多节点、循环执行的复杂应用而设计。核心三要素:LLM/Agent · Graph(图结构) · State(状态)。
- 基于图结构编排,灵活控制流程
- 支持循环、条件分支、并行执行
- 内置状态管理,支持长期记忆
- 支持人工干预(Human in the loop)
- 可扩展性强,适合复杂多智能体系统
2. 核心概念
由节点(Node)和边(Edge)组成,定义执行流程
执行具体任务的单元,可以是 LLM 调用、工具调用或自定义逻辑
定义节点之间的连接,可以是条件跳转或无条件跳转
在图执行过程中维护的全局状态,所有节点共享使用
保存执行状态,支持恢复和追溯历史
基于图构建的有状态智能体
3. 执行流程(图执行引擎)
- Direct Edge无条件边:A → B
- Conditional Edge条件边:A → C(with condition)
{
"from": "agent",
"condition": "state['next']",
"edges": {
"continue": "tools",
"end": "end"
}
}4. 典型应用场景
支持多轮对话、上下文记忆、工具调用
多个 Agent 协同完成复杂任务,分工明确
自动化处理复杂流程,减少人工干预
基于状态的决策与规划任务处理
5. 代码示例:构建一个简单的 LangGraph
from langgraph.graph import StateGraph, END
from typing import TypedDict, Annotated, List, Dict, Any
# 1. 定义状态
class AgentState(TypedDict):
messages: Annotated[List[Dict[str, Any]], "消息历史"]
next: str
result: str
# 2. 创建图
graph = StateGraph(AgentState)
async def agent(state: AgentState):
# 调用 LLM 分析用户输入
return {"next": "tools"}
async def tools(state: AgentState):
# 调用外部工具
return {"result": "工具执行结果"}
async def review(state: AgentState):
# 检查结果,决定是否结束
if "完成" in state["result"]:
return {"next": END}
return {"next": "agent"}
# 3. 添加节点
graph.add_node("agent", agent)
graph.add_node("tools", tools)
graph.add_node("review", review)
# 4. 添加边
graph.set_entry_point("agent")
graph.add_edge("agent", "tools")
graph.add_edge("tools", "review")
graph.add_conditional_edges("review", lambda x: x["next"])
# 5. 编译图
app = graph.compile()6. 高级特性
Memory, SQLite, PostgreSQL, Redis 等
支持从任意检查点恢复执行
Human in the loop — 流程中可以插入人工审核节点
支持多个节点并行,提高效率
提供图形化支持,便于调试和理解流程
轻松构建多 Agent 协作的复杂系统
7. 与其他框架对比
| 框架 | 执行模型 | 状态管理 | 流程控制 | 可扩展 | 适用场景 | 可视化 |
|---|---|---|---|---|---|---|
| LangChain | 线性链 | 简单状态 | 固定流程 | 中等 | 简单应用 | 有限 |
| LangGraph | 图结构 | 内置状态 | 灵活(图+条件) | 高 | 复杂应用/工作流 | 内置支持 |
| AutoGPT | 单智能体循环 | 中等 | 循环执行 | 中等 | 自主任务执行 | 无 |
| MetaGPT | 多智能体协作 | 中等 | 角色式执行 | 中等 | 团队协作任务 | 有限 |
8. 生态与集成
9. 真实案例 & 开源项目
LangChain 团队出品的图结构 Agent 编排框架,支持状态、检查点、人工干预、并发执行。
官方 TypeScript 版,适合 Next.js Server Actions / Edge 场景构建有状态 Agent。
官方示例集:ReAct Agent、Multi-Agent Supervisor、RAG with Citations、SQL Agent 等。
LangChain 官方的 Deep Research 多 Agent 参考实现,典型有状态 + 并发 + 人工审核流程。
官方可视化调试器,桌面端直接查看图执行、状态变化、检查点回放。
概念、Quick Start、Agent 模板、持久化、人机协作、生产部署(LangGraph Cloud)完整文档。
强烈推荐路径:官方文档 Quick Start → Examples/ReAct Agent → open_deep_research(真实世界的多 Agent 工程参考)。