LangGraph经典例子
如果说 LangChain 的经典例子是 RAG,那么 LangGraph 的经典例子就是 状态机(State Machine)+ Agent 工作流。
LangGraph 的核心思想可以概括为:
节点(Node) + 状态(State) + 边(Edge) = AI Workflow
一个最经典的流程如下:
START
│
▼
Analyze Question
│
┌────┴────┐
│ │
Need Tool? No
│ │
▼ ▼
Call Tool Answer
│
▼
Generate Answer
│
▼
END
示例1:Hello World(最简单)
LangGraph 最基础的例子。
from typing import TypedDict
from langgraph.graph import StateGraph, END
class State(TypedDict):
message: str
def hello(state: State):
return {
"message": state["message"] + " World!"
}
graph = StateGraph(State)
graph.add_node("hello", hello)
graph.set_entry_point("hello")
graph.add_edge("hello", END)
app = graph.compile()
print(app.invoke({
"message": "Hello"
}))
输出:
{
"message": "Hello World!"
}
示例2:多个节点组成流水线
例如:
START
│
▼
Clean Text
│
▼
Translate
│
▼
Summarize
│
▼
END
代码:
graph.add_node("clean", clean)
graph.add_node("translate", translate)
graph.add_node("summary", summary)
graph.add_edge("clean", "translate")
graph.add_edge("translate", "summary")
graph.add_edge("summary", END)
这就是 AI Workflow。
示例3:条件分支(经典)
这是 LangGraph 最重要的能力。
例如:
Question
│
▼
Analyze Intent
┌─────────────┐
▼ ▼
Search Needed Direct Answer
│ │
▼ ▼
Search API LLM
│ │
└──────┬──────┘
▼
END
代码:
def route(state):
if state["need_search"]:
return "search"
return "answer"
graph.add_conditional_edges(
"analyze",
route
)
这也是 LangGraph 最经典的示例。
示例4:循环(Loop)
LangGraph 可以实现 Agent 的思考循环。
START
│
▼
Think
│
▼
Tool Call
│
▼
Enough Info?
│ │
No Yes
│ │
└──►Think
│
▼
END
代码:
graph.add_conditional_edges(
"tool",
should_continue
)
def should_continue(state):
if state["done"]:
return END
return "think"
这就是 ReAct Agent 的核心。
示例5:RAG Workflow
很多公司都是这么做的:
User
│
▼
Rewrite Query
│
▼
Retriever
│
▼
Rerank
│
▼
LLM
│
▼
Answer
比 LangChain 的 RetrievalQA 更灵活。
例如:
Query
↓
Rewrite
↓
Vector Search
↓
Top20
↓
Reranker
↓
Top5
↓
LLM
每一步都是一个 Node。
示例6:Human in the Loop(非常经典)
很多企业都需要人工审批。
Generate SQL
│
▼
Human Review
│
┌────┴─────┐
│ │
Approve Reject
│ │
▼ ▼
Execute Retry
│
▼
END
LangGraph 支持:
-
interrupt
-
resume
例如:
graph.pause()
等待人工:
Approve?
用户点击:
Resume
继续运行。
示例7:多 Agent(最经典)
例如:
Supervisor
│
┌──────────────┼──────────────┐
▼ ▼ ▼
Researcher Coder Writer
│ │ │
└──────────────┼──────────────┘
▼
Final Answer
Supervisor 根据任务决定调用哪个 Agent。
例如:
用户:
帮我写一个关于 AI 的博客
Supervisor:
Research Agent
↓
Code Agent(如果需要)
↓
Writer Agent
↓
Answer
示例8:Plan → Execute(最经典)
OpenAI、Anthropic 都很喜欢这种 Workflow。
Question
│
▼
Planner
│
▼
Task1
Task2
Task3
│
▼
Executor
│
▼
Merge
│
▼
END
例如:
帮我分析 Tesla 股票
Planner:
1. 财报
2. 新闻
3. 技术指标
4. 总结
Executor:
执行1
执行2
执行3
Merge:
最终报告
示例9:Reflection(自我反思)
论文里最经典的 Agent。
Generate
│
▼
Critic
│
┌──┴─────┐
│ │
Good Bad
│ │
▼ ▼
END Rewrite
│
▼
Critic
直到满意。
示例10:Deep Research(目前最火)
几乎所有 Deep Research 产品都可以抽象成:
User
│
▼
Planner
│
▼
Search
│
▼
Read
│
▼
Need More?
│
├────Yes────┐
▼ │
Search Again │
│ │
└───────────┘
▼
Write Report
│
▼
END
整个过程就是一个 Graph。
LangGraph 的完整能力图
START
│
Analyze Task
│
┌───────────┴────────────┐
▼ ▼
Direct LLM Need Tool
│ │
▼ ▼
Generate Call Tool
│ │
▼ ▼
Reflection <──────────── Tool Result
│
▼
Human Approval
│
▼
Final Answer
│
▼
END
为什么现在很多项目推荐 LangGraph?
相比传统 LangChain 的线性 Chain,LangGraph 更适合复杂、可控的 AI 工作流,因为它天然支持:
-
状态管理:节点之间共享和更新统一状态。
-
条件分支:根据模型或程序判断动态选择执行路径。
-
循环与重试:支持 ReAct、多轮搜索、自我反思等模式。
-
人工介入(Human-in-the-loop):可暂停执行,等待审批或输入后继续。
-
多 Agent 协作:通过 Supervisor、Planner 等模式组织多个智能体。
因此,在实际项目中,经常会看到这样的演进路线:
ChatBot
↓
RAG
↓
Tool Calling
↓
Agent
↓
LangGraph Workflow
↓
Multi-Agent System
其中,Planner + Executor、RAG + Reflection、Supervisor + 多 Agent 是目前最具代表性的 LangGraph 经典应用模式,也是构建复杂 AI 应用时最值得掌握的几个案例。

浙公网安备 33010602011771号