什么是LangGraph
一、核心定位
-
LangChain 团队推出的 开源、低层级编排框架
-
用途:构建「有状态、可循环、多智能体」的 LLM 应用与 Agent 工作流
-
核心逻辑:用「图(节点+边+状态)」编排 AI 任务,突破传统线性流程限制
-
定位:LangChain 生态一员,可独立使用,也可无缝集成;面向生产级 Agent,支持高可靠、长周期场景
二、核心概念(三要素)
1. 状态(State)
-
全局共享的可读写上下文(字典/TypedDict)
-
存储内容:对话历史、工具调用结果、中间数据等
-
核心特性:全程持久化,中断可恢复,天然支持 AI 记忆功能
2. 节点(Node)
-
图中的执行单元,是任务的具体实现载体
-
支持类型:LLM 调用、工具调用(搜索/数据库)、自定义函数、子图
-
工作流程:读取状态 → 执行处理 → 更新状态
3. 边(Edge)
-
定义节点间的流转规则,串联整个任务流程
-
三种类型:
-
普通边:固定流向(如 A→B)
-
条件边:根据状态/LLM 输出动态选择分支(如「需要搜索?→ 是/否」)
-
循环边:支持循环迭代(如 A→B→C→A),实现「反思→改进→再执行」闭环
-
三、核心能力
-
✅ 循环与迭代:突破 DAG 限制,支持多轮迭代闭环
-
✅ 持久化与容错:内置检查点,崩溃/中断后可从上次状态恢复
-
✅ 人在回路(Human-in-the-Loop):任意节点可暂停,人工审核/修改状态后继续,保障合规
-
✅ 多智能体协作:支持「主管→子代理」分层,多个 Agent 分工配合
-
✅ 可观测与调试:搭配 LangSmith,可视化执行路径、状态变化、LLM 调用,便于排错
四、适用场景
-
对话式 Agent:多轮对话、上下文记忆、动态调用工具
-
任务型 Agent:旅行规划、代码生成/调试等流程化任务
-
多 Agent 协作:研究团队分工(搜索→分析→写作→审核)、客服分流等
-
长周期流程:文档处理、数据 ETL、合规审核(需持久化与容错)
五、与 LangChain 的关系
-
LangChain:侧重组件封装与线性链式调用(简单流程)
-
LangGraph:侧重底层编排与复杂控制流(循环/分支/状态)
-
关系:互补而非替代,LangGraph 可直接复用 LangChain 的 LLM、工具、记忆组件
六、一句话总结
LangGraph = 状态机 + 图计算 + LLM 编排,可通过「搭积木」的方式,可控、可靠、可扩展地构建复杂 AI Agent 系统。
(注:文档部分内容可能由 AI 生成)