langgraph · 7 篇 ·首发 2026-04-05 ·最后更新 2026-04-06
从图 / 状态 / 检查点到 Send 并行,一个完整的 Agent 工程系列。
介绍 LangGraph 的定位、核心概念(图/状态/检查点)、与 LangChain 的差异及 Pregel 运行时,并附最小可运行示例,帮助读者搭建 Agent 工程心智模型。
系统讲解 StateGraph 的三大构件(State / Nodes / Edges)、TypedDict 状态与 reducer,以及 state_schema、input_schema、output_schema 的契约与执行流,并附输入输出分离与私有字段传递示例。
说明 LangGraph 中 Reducer 的职责与类型签名,覆盖默认覆盖、add_messages、operator.add/mul 与自定义归约,并演示并行更新下的合并策略与 operator.mul 初始化注意点。
说明节点函数与 add_node、START/END、CachePolicy 节点缓存、RetryPolicy 重试语义、defer 延迟到超步末执行、Send 动态并行与 Reducer 合并顺序,并用超步(superstep)对比静态扇出与多入边触发差异。
说明 LangGraph 中边的角色:add_edge 普通边、add_conditional_edges 条件路由、START/END 与条件入口、多出路在同一超步并行,以及循环图中终止条件与 recursion_limit / GraphRecursionError。
两道动手题:用 TypedDict 与部分状态更新理解「按字段传递」;用 START 扇出、多入边与 defer=True 在控制台观察延迟汇聚执行顺序。附与节点篇、边篇的衔接说明。
说明 langgraph.types.Send 的语义:在路由函数中返回 Send 列表实现运行期动态并行;子状态与全局 State 的关系;配合 Annotated 与 operator.add 等 Reducer 合并并行结果;与静态扇出对照。