LangGraph
活跃简介
LangGraph 是 LangChain 团队推出的 Agent 工作流编排框架,使用图结构定义 Agent 的状态和流转。
核心特性
- 有状态 Agent 编排 — 使用图结构定义 Agent 的状态、条件分支和循环,构建持久化的工作流
- 持久化执行 — Agent 在失败后可自动恢复,从上次中断处精确继续执行
- 人机协作 — 在执行任意节点处插入人类审核,检查和修改 Agent 状态后再继续
- 短长期记忆 — 支持当前任务的工作记忆和跨会话的长期持久化记忆
- LangSmith 调试集成 — 通过可视化工具追踪执行路径、捕获状态转换、提供运行时指标
- 生产级部署 — 为长时间运行的有状态工作流提供可扩展的生产部署基础设施
适用场景
💡 多步骤研究 Agent — 构建能规划、使用子 Agent、操作文件系统的复杂研究工作流
💡 客服对话系统 — 有状态的多轮对话,支持知识检索、人工转接和会话记忆持久化
💡 数据处理管道 — 用图结构编排 ETL 流程,支持条件分支、错误处理和检查点恢复
💡 代码生成与验证 — Agent 生成代码后自动运行测试,根据测试结果迭代修改直到通过
分类
快速开始
pip install -U langgraph
from langgraph.graph import StateGraph, MessagesState, START, END
from langchain_openai import ChatOpenAI
model = ChatOpenAI(model='gpt-4o-mini')
def call_model(state: MessagesState):
response = model.invoke(state['messages'])
return {'messages': [response]}
graph = StateGraph(MessagesState)
graph.add_node('agent', call_model)
graph.add_edge(START, 'agent')
graph.add_edge('agent', END)
app = graph.compile()
result = app.invoke({'messages': [('human', 'Hello!')]})
print(result['messages'][-1].content)