LangGraph 架构图集合
本文档收集整理了 LearnGraph 1.X 教程中所有的 LangGraph 架构图,便于查阅和学习。
1. 基础图结构
1.1 基础线性图 (Sequential Graph)

说明: 这是最基础的 LangGraph 图结构,展示了从 __start__ 到 __end__ 的顺序执行流程。节点 (node_1 → node_2 → node_3) 按照固定顺序依次执行,适用于简单的流水线任务处理。
1.2 简化线性图 (Simplified Sequential Graph)

说明: 这是简化版的线性图,只包含两个节点 (node1 → node2)。展示了 LangGraph 最小可用结构,适合理解图的基本组成:起点、处理节点和终点。
1.3 单节点图 (Single Node Graph)

说明: 这是 LangGraph 最简化的结构,仅包含一个处理节点 (node1)。展示了图的最小单元:__start__ → node1 → __end__。适合用于单一功能的简单任务。
2. 条件分支图结构
2.1 条件跳过图 (Conditional Skip Graph)

说明: 展示了条件边 (conditional edge) 的使用场景。虚线箭头表示条件路径,某些情况下可以直接从 __start__ 跳转到 __end__,跳过 node1 的执行。这是实现动态流程控制的基础模式。
2.2 多分支路由图 (Multi-Branch Router Graph)

说明: 这是 LangGraph 中经典的路由器 (Router) 模式。根据输入条件,从 __start__ 分支到不同的处理节点 (large/medium/small),每个分支处理完成后汇聚到 __end__。虚线表示条件边,适用于根据输入类型选择不同处理逻辑的场景。
3. Agent 模拟与测试
3.1 Agent 模拟架构 (Agent Simulation Architecture)

说明: 这是 LangGraph 用于 Agent 测试的模拟架构。核心组件包括:
- Simulation Inputs:配置 persona(用户人设)和起始消息
- Simulated User:模拟用户角色,决定如何响应或结束对话
- Agent to test:待测试的 Agent(可以是任意类型)
- 两者之间形成循环交互:Initial Question → Respond → Continue OR end
这种模式非常适合自动化测试 Agent 的对话能力和边界情况处理。
3.2 Prompt 生成器架构 (Prompt Generator Architecture)

说明: 这是一个 Human-in-the-loop (人机协作) 模式的架构图。流程包括:
- User:用户节点,提供输入和反馈
- Gather Requirements:收集需求节点,与用户交互获取详细要求
- Generate Prompt:根据收集的需求生成最终 Prompt
箭头形成双向循环,用户可以反复修改需求直到满意,体现了 LangGraph 支持交互式迭代的能力。
3.3 带工具调用的图流程 (Graph Flow with Tool Calls)

说明: 这是一个包含工具调用和循环的复杂图结构:
- info:信息收集/处理节点,作为循环的入口点
- add_tool_message:添加工具消息节点
- prompt:生成提示节点
虚线表示条件边,从 info 节点可以直接结束或继续循环。这种模式常用于需要多轮工具调用来收集信息的场景。
4. 代码助手架构
4.1 代码助手完整架构 (Code Assistant Architecture)

说明: 这是一个完整的代码助手架构,展示了自我反思 (Self-Reflection) 模式:
- 输入:Question(问题)+ Context(上下文/文档)
- Code Generation:代码生成节点,输出包含 Preamble、Imports、Code 三部分
- Code Check:代码检查节点,验证生成的代码
- Fail? 决策点:判断代码是否通过检查
- No:通过检查 → 输出 Code Solution
- Yes:失败 → 进入 Reflect 节点
- Reflect:反思节点,分析失败原因并反馈给 Code Generation 重新生成
这是 Agentic 编程中经典的 "生成-检查-反思" 循环模式。
5. 多 Agent 架构模式
5.1 多 Agent 架构总览 (Multi-Agent Architectures Overview)

说明: 这张图展示了 LangGraph 中六种主要的多 Agent 架构模式:
- Single Agent:单 Agent + 工具调用,最基础的模式
- Network:网状结构,Agent 之间可以相互通信
- Supervisor:监督者模式,一个 Supervisor 协调多个 Worker Agent
- Supervisor (as tools):将子 Agent 作为工具调用
- Hierarchical:层级结构,多层 Supervisor 形成树状组织
- Custom:自定义复杂拓扑结构
这是理解多 Agent 系统设计的核心参考图。
5.2 Supervisor 模式详解 (Supervisor Pattern)

说明: Supervisor 模式是最常用的多 Agent 架构:
- User:用户输入请求
- Supervisor:监督者/协调者,负责理解任务并路由到合适的 Agent
- Agent 1/2/3:专业化的 Worker Agent,各自负责特定领域的任务
工作流程:User → Supervisor → route → Agent → 返回结果 → Supervisor → User
这种模式的优点是职责分明,Supervisor 专注于任务分解和调度,Worker Agent 专注于执行。
5.3 层级架构 (Hierarchical Architecture)

说明: 层级架构是 Supervisor 模式的扩展,支持多层级的 Agent 组织:
- 顶层 Supervisor:接收用户请求,分配给不同的团队
- Research Team (子 Supervisor):管理研究相关任务
- Searcher:搜索 Agent
- Web Scraper:网页抓取 Agent
- Document Authoring (子 Supervisor):管理文档创作任务
- Writer:写作 Agent
- Note Taker:笔记 Agent
- Chart Generator:图表生成 Agent
这种架构适合复杂的企业级应用,能够处理跨领域的综合任务。
5.4 多 Agent 协作流程 (Multi-Agent Collaboration Flow)

说明: 这是一个实际的多 Agent 协作案例,展示了生成数据图表的完整流程:
- User:用户输入请求(如"生成阿拉斯加过去10年的平均气温图表")
- Router:路由器,使用 if 语句根据 Agent 输出决定下一步
- Researcher:研究 Agent,调用搜索函数获取数据
- Chart Generator:图表生成 Agent,调用代码执行创建图表
- Call_tool:工具调用节点,执行具体的 API/函数调用
流程中包含多个条件判断(if "continue" / if "FINAL ANSWER"),体现了动态路由的能力。
5.5 Agent 间请求传递 (Inter-Agent Request Passing)

说明: 展示了 Agent 1 调用 Agent 2 时,两种不同的状态传递方式:
| 方式 | 传递内容 | 说明 |
|---|---|---|
| 直接传递 | {messages, artifacts} | Agent 1 直接传递完整的全局状态给 Agent 2 |
| 工具调用 | {tool_arg1, tool_arg2} | Agent 1 使用 LLM + 工具来决定传递什么给 Agent 2 |
这两种方式各有优劣,直接传递简单但可能信息过载,工具调用更灵活但增加了复杂性。
5.6 Agent 间响应返回 (Inter-Agent Response Return)

说明: 展示了 Agent 1 调用 Agent 2 后,可以获取的两种响应方式:
| 方式 | 返回内容 | 说明 |
|---|---|---|
| 完整返回 | Tool Call + Tool Response + Final Response | Agent 2 的完整思考过程和最终响应都返回给 Agent 1 |
| 仅最终结果 | Final Response only | 只返回 Agent 2 的最终响应,隐藏中间过程 |
选择哪种方式取决于是否需要 Agent 1 理解 Agent 2 的推理过程。
6. Agent 核心循环
6.1 Agent 循环图 (Agent Loop Diagram)

说明: 这是 LangGraph Agent 的核心循环模式:
- request:用户请求输入
- model:LLM 模型节点,处理请求并决策
- tools:工具调用节点,执行具体操作后返回 model
- result:最终结果输出
虚线表示条件边:model 可以选择调用 tools(循环)或直接输出 result(结束)。这是 ReAct (Reasoning + Acting) 模式的可视化表达。
6.2 中间件钩子系统 (Middleware Hooks System)

说明: 这是 LangGraph 1.0 引入的中间件钩子系统,允许在 Agent 执行的各个阶段插入自定义逻辑:
- before_agent:Agent 开始前执行
- before_model:模型调用前执行
- wrap_model_call:包装模型调用(可修改输入/输出)
- wrap_tool_call:包装工具调用(可修改输入/输出)
- after_model:模型调用后执行
- after_agent:Agent 结束后执行
这种钩子机制提供了强大的扩展能力,可用于日志记录、监控、缓存、权限控制等场景。
6.3 Agent-Tool 架构 (Agent-Tool Architecture)

说明: 这是 ReAct 模式的标准架构图,展示了 Agent 的决策流程:
- input:用户输入
- model:LLM 决策节点(菱形表示决策点)
- action → tools → observation:执行动作 → 调用工具 → 获取观察结果(循环)
- finish → output:完成任务 → 输出结果
这是 LangGraph 中最基础也是最重要的架构模式,几乎所有 Agent 都基于此模式扩展。
7. 高级模式
7.1 并行执行模式 (Parallelization Pattern)

说明: 展示了 LangGraph 的并行执行能力:
- a:起始节点
- b, c:并行执行的节点(同时运行,互不阻塞)
- d:汇聚节点,等待 b 和 c 都完成后执行
这种模式可以显著提高执行效率,适用于独立任务的并发处理,如同时调用多个 API、并行搜索等场景。
7.2 多 Agent 网络协作 (Multi-Agent Network Collaboration)

说明: 这是 Network 模式的具体实现案例:
- User:用户输入任务(如"生成阿拉斯加过去10年的平均气温图表")
- Researcher:调用 search 工具获取数据,完成后可发送消息给 Chart Generator
- Chart Generator:调用 code execution 工具生成图表
两个 Agent 之间通过 Message 双向通信,当任一 Agent 完成任务后返回 "FINAL ANSWER" 给用户。这种网络模式允许 Agent 间自主协调,无需中央调度。