跳到正文

TECH NOTE

2774 字 14 分钟 系列 22 / 22

多 Agent 官方文档中文精讲(LangChain · Multi-agent)

ON THIS PAGE / 目录8 节

一句话讲透:把 LangChain 官方文档 Multi-agent 板块的 10 篇英文文档(6 篇概念 + 4 篇实战教程),整理成 12 篇中文图文笔记 + 2 篇实测附录 + 12 张官方配图。目标很具体:读完能回答”我这个需求该用哪种多 Agent 模式、为什么、代价多少”,而不是背下五个名词。


怎么读(推荐顺序)#

第一步:建立判断力(半天)
01 为什么需要多 Agent ──▶ 02 五种模式总览与选型 ──▶ 03 性能对比(调用次数与 Token)
│
第二步:按需深入某一模式(每篇 20~30 分钟) │
04 Subagents 05 Handoffs 06 Skills 07 Router 08 Custom workflow
│
第三步:看别人怎么落地(想抄作业时读) ▼
09 个人助理(Subagents) 10 客服工单(Handoffs) 11 SQL 助手(Skills) 12 多源知识库(Router)
│
第四步:换成 Deep Agents 落地(API 与工程实现) ▼
deepagents/01 静态子智能体 ──▶ deepagents/03 异步子智能体 ──▶ deepagents/02 动态子智能体
│
第五步(可选):读实测附录,把"官方数字/机制"钉死
13 为什么是 4 次调用(抓包) 14 手写 Tool 包装 vs Deep Agents 内置 subagents(源码 + 抓包)
  • 只想快速选型:读 01 → 02 → 03 就够,三篇加起来大约一小时。
  • 已经知道要用哪种模式:直接跳到 04–08 里对应的那篇,每篇都是”说人话 + 代码 + 决策表”。
  • 准备动手写:09–12 是官方教程的提炼版(架构思路 + 关键代码 + 踩坑点),完整长代码指向原文。
  • 决定用 Deep Agents 落地:进 deepagents/ 子板块——那里是同一套模式的 API、默认值与坑(01 静态子智能体 → 03 异步 → 02 动态编排)。
  • 不信”官方说 N 次调用”:看 13、14 两篇实测附录,里面有原始 HTTP 报文与源码证据。

文件索引#

文件讲什么对应原文
01 为什么需要多 Agent把”我要多 Agent”翻译成三种真实诉求;什么时候不该上多 AgentMulti-agent(Why multi-agent?)
02 五种模式总览与选型五种模式认脸 + 四维能力打分 + 中文决策树(含 4 张官方示意图)Multi-agent(Patterns / Choosing)
03 性能对比:调用次数与 Token三个场景的完整数字账(一次性 / 重复请求 / 多领域),含 8 张官方配图 + 重复请求场景的 4 张两轮时序图(谁被重复付钱)Multi-agent(Performance comparison)
04 Subagents 子智能体主管把子智能体当工具;同步/异步、两种工具模式、三处上下文阀门subagents
05 Handoffs 交接状态驱动行为切换;单 Agent + 中间件 vs 多 Agent 子图handoffs
06 Skills 技能一个 Agent + 按需加载的”说明书”;渐进式披露的 token 账skills
07 Router 路由先分诊、并行分发(Command / Send)、再汇总;无状态 vs 有状态router
08 Custom workflow 自定义工作流用 LangGraph 自己画图;混合确定性逻辑与 Agent;RAG 三类节点实例custom-workflow
09 实战:用 Subagents 搭个人助理主管 + 日历/邮件子智能体;human-in-the-loop 审核subagents-personal-assistant
10 实战:用 Handoffs 搭客服工单流转保修 → 分类 → 方案的状态机式流转;退回上一步handoffs-customer-support
11 实战:用 Skills 搭 SQL 助手按需加载表结构与业务规则;用 state 加只读约束skills-sql-assistant
12 实战:用 Router 搭多源知识库GitHub / Notion / Slack 并行检索 + Send 扇出 + reducer 汇总router-knowledge-base
13 附录:Subagents 为什么是 4 次调用(抓包实录)DeepSeek + mitmproxy 真跑一遍:4 次调用各自看到什么、原始报文、第 4 次买到什么03 篇的实测附录(脚本与抓包在 demo/)
14 附录:手写 Tool 包装 vs Deep Agents 内置 subagents源码 + 抓包对照:create_deep_agent(subagents=...) 到底变成了什么(一个 task 工具 + 注册表),和手写 @tool 包装的 9 项差异04 篇「单一派发工具」的实测对照
15 附录:重复请求占比怎么统计这个数没有现成字段:先定义”什么叫重复”,三种取数口径(业务主键 / 域标签 / 离线分类)、可套用的 SQL 模板、该报告的 5 个数、换算成钱与延迟、6 个坑03 篇”量三件事”的方法论补充
16 主 Agent 的任务拆分与串并行决策直接回答两件事:拆分怎么做(两级拆分 + 子任务契约 + 模型/代码分工)、串并行怎么决定(数据依赖为主判据 + 五步判定流程 + 六条判据 + 完整例子 + 落地要点与四个观测指标)04/07/deepagents/02 的落地视角总结

说明:官方总览页内容量大(含 12 张配图),本笔记拆成 01 / 02 / 03 三篇以便阅读;对应关系见上表。13–16 不是官方文档:13/14 是实测附录(验证调用次数、对照工具模式),15 是方法论附录(重复请求占比怎么量),16 是任务拆分与串并行的落地说明。

子板块:Deep Agents 多 Agent 文档(deepagents/)#

上面 01–12 讲的是 LangChain 官方 Multi-agent 板块(模式与选型);Deep Agents 也有一套多 Agent 文档,讲的是同一套模式在它里面的 API 与工程实现。三篇笔记收在子目录里,编号独立从 01 开始:

文件一句话对应原文
deepagents/README子板块导读:与上层笔记的分工、三者怎么选、本机 deepagents 0.7.5 可用性矩阵—
deepagents/01 Subagents静态子智能体:SubAgent 全字段(含 tools/skills/permissions 的继承 vs 覆盖)、默认 general-purpose、fork、流式、追踪、结构化输出deepagents/subagents
deepagents/02 Dynamic subagents动态编排:用代码(解释器里的 task())代替模型一次次派活——分类分发 / 扇出汇总 / 对抗验证 / 生成筛选 / 锦标赛 / 循环到达标deepagents/dynamic-subagents
deepagents/03 Async subagents后台子智能体:启动 / 轮询 / 中途干预 / 取消(五个工具)、生命周期、ASGI vs HTTP 传输、部署拓扑、排障deepagents/async-subagents

一句话分工:上层教你怎么选模式,子板块教你在 Deep Agents 里怎么用(字段、默认值、坑、版本门控)。


术语中英对照(全文统一)#

英文本笔记译法备注
Multi-agent多 Agent / 多智能体保持”Agent”不译,符合国内习惯
Supervisor主管(Agent)Subagents 模式里的中心 Agent;也译”监督者”
Subagent子智能体 / 子 Agent被包装成工具、供主管调用
Handoff交接用工具调用转移控制权(OpenAI 提出的术语)
Skill技能提示词驱动的专长,按需加载
Router路由 / 分诊一次分类步骤 + 分发
Custom workflow自定义工作流用 LangGraph 自己画图
Vertical垂直领域各自需要独立 Agent 的独立知识域
Context engineering上下文工程决定”每个 Agent 看到什么”
Progressive disclosure渐进式披露用到才加载,省上下文
Stateless / Stateful无状态 / 有状态调用之间是否保留记忆
Reducer归并函数并行分支结果如何合并(LangGraph)
Send并行分发(扇出)LangGraph API,运行时动态生成分支
Command状态更新 / 跳转指令LangGraph API,update 改状态、goto 跳节点
Tool工具保持”工具”
Middleware中间件拦截并改写模型调用配置
Checkpoint / Checkpointer检查点 / 检查点存储器让状态跨回合、跨进程存活
Interrupt中断暂停执行、向用户取信息或要审批
Human-in-the-loop人工介入人在关键节点确认
Model calls模型调用次数03 篇的核心指标之一
Tokens processed处理的 Token 总量03 篇的另一个核心指标

官方配图清单(images/,共 12 张)#

图片均为官方原图(图内标签是英文),笔记里配了中文图注与”这张图在说什么”的解读。

文件出处用在
pattern-subagents.png总览页「Visual overview」02
pattern-handoffs.png同上02
pattern-skills.png同上02
pattern-router.png同上02
oneshot-subagents.png总览页「One-shot request」03
oneshot-handoffs.png同上03
oneshot-skills.png同上03
oneshot-router.png同上03
multidomain-subagents.png总览页「Multi-domain」03
multidomain-handoffs.png同上03
multidomain-skills.png同上03
multidomain-router.png同上03、12

除这些官方位图外,笔记里的流程图/时序图都是可编辑的 Mermaid(Obsidian、GitHub、VS Code 都能直接渲染)或 ASCII 图。


来源清单(10 篇原文)#

#原文标题URL
1Multi-agent(总览)https://docs.langchain.com/oss/python/langchain/multi-agent
2Subagentshttps://docs.langchain.com/oss/python/langchain/multi-agent/subagents
3Handoffshttps://docs.langchain.com/oss/python/langchain/multi-agent/handoffs
4Skillshttps://docs.langchain.com/oss/python/langchain/multi-agent/skills
5Routerhttps://docs.langchain.com/oss/python/langchain/multi-agent/router
6Custom workflowhttps://docs.langchain.com/oss/python/langchain/multi-agent/custom-workflow
7Build a personal assistant with subagentshttps://docs.langchain.com/oss/python/langchain/multi-agent/subagents-personal-assistant
8Build customer support with handoffshttps://docs.langchain.com/oss/python/langchain/multi-agent/handoffs-customer-support
9Build a SQL assistant with on-demand skillshttps://docs.langchain.com/oss/python/langchain/multi-agent/skills-sql-assistant
10Build a multi-source knowledge base with routinghttps://docs.langchain.com/oss/python/langchain/multi-agent/router-knowledge-base

延伸阅读(同源、不在本板块路径下):Deep Agents 内置了 subagents / skills / planning / 虚拟文件系统 / 上下文管理,想少写编排代码可以直接用它——Deep Agents 概览 | Subagents | Skills。另外 langgraph-supervisor 包已不再维护,官方给了迁移指南。


加工说明(哪些是原文、哪些是笔记加的)#

为了不误导读者,这里把改动说清楚:

  1. 结构:概念篇保留原文全部小节(Key characteristics / When to use / Basic implementation / 各设计决策 / Context engineering / Checkpointing 等)并逐节讲解;官方总览页拆成 01/02/03 三篇。
  2. 代码:概念篇的短示例整段保留,只把注释译成中文、删掉文档站特有的渲染标记(围栏上的主题参数、代码高亮指令注释等);实战篇(09–12)采用提炼式精讲——每步给 10–30 行关键代码骨架,上千行的完整示例只给原文链接,不整段复制。
  3. 补充解读:凡标注 🧭 补充解读(非原文) 的段落,都是本笔记结合工程经验加的(类比、取舍建议、成本直觉、与 Deep Agents 的关系等),不是官方说法。
  4. 原文瑕疵:发现原文笔误或前后不一致时,保留原样并标注 ⚠️ 原文如此,不改写官方代码。
  5. 图片:官方位图为原图直存(图内英文标签未改),中文图注用于补齐语义;自绘的流程图/时序图使用 Mermaid(节点标签中文化,关键术语中英并列)与 ASCII 图。
  6. 未验证的部分:笔记未在本机实际运行任何示例代码,因此不承诺可直接跑通;模型名(如 gpt-5.5、gemini-3.6-flash)沿用原文,落地时请替换为你可用的模型。
  7. 以原文为准:文档会持续更新,遇到冲突请以官方文档为最终依据。

学完自测(能答上来就算过关)#

  1. “我要上多 Agent”这句话背后,通常对应哪三种真实诉求?
  2. 五种模式里,哪一个支持”用户直接跟专家对话”?哪一个不支持多跳?
  3. 一次性请求里,Subagents 比 Handoffs 多出来的那一次调用花在哪?值不值?
  4. 为什么多领域任务里 Skills 只调 3 次却最贵?这个结论对你的选型意味着什么?
  5. Subagents 的”三处上下文阀门”分别是什么?各自影响谁?
  6. Handoffs 的交接工具里,为什么必须补一条 ToolMessage?
  7. Router 用 Send 扇出后,结果为什么必须靠 reducer 合并?
  8. 什么情况下应该放弃”让模型决定路由”,改用 Custom workflow?

答案都在对应篇章里;03 篇的数字表建议反复看两遍——选型的一半功力在那张表上。


相邻主题:Agent 应用开发 | 相关主题:多 Agent 架构与业务流程梳理

多 Agent 官方文档中文精讲(LangChain · Multi-agent)
https://aicooleo.cn/blog/posts/multiagent-overview/
作者
aicooleo
发布于
2026-09-01
许可协议
CC BY-NC-SA 4.0
多 Agent 精讲 · 第 22 / 22 篇 返回合集