👥 《深入理解 AI Agent》第 10 章

多 Agent 协作 · 从分工到涌现,再到 Agent 社会
12 个动画场景 · 覆盖 10.1–10.6 · 含六种失败模式与 AI 小镇
📌 你可以外包你的思考,但不能外包你的理解 —— Karpathy

🎯 一张图看懂第 10 章

单个 Agent 的公式,乘以分工、通信与验证
🧩
分类框架
上下文共享 × 协作拓扑
→
🤝
协作模式
对等 / 管理者 / 去中心化
→
💣
六种失败模式
从冲突到认知投降
→
🌱
Agent 社会
涌现、经济与博弈
💡 一句话总纲: 多 Agent 不会自动比单 Agent 强。只有当你引入了单 Agent 拿不到的信息(执行结果、截图、独立证据)时,分工才真正产生价值。

场景 1 · 继承 vs 隔离:两种上下文 10.1.1

上下文是否共享,决定 Agent 是「接班」还是「各干各的」
👥 共享上下文 · 接力分析师开发者接力📜 同一份工作日志换人只换提示词🏢 不共享上下文Agent AAgent B文档纪要🏢 各自独立工位靠文档与消息交换
第一个维度:新 Agent 是「继承记忆」,还是「从头看文档」
看拓扑之前先看这一维: 共享上下文像接班同事能翻到前任的全部工作日志 —— 需求分析师与开发者继承整段对话史,换人只需换 system prompt 与工具集;不共享上下文则像各部门的独立工位,靠文档、纪要、消息来交换信息,整体更像操作系统的进程模型。共享换来信息连续,但也把所有人的错误绑在一起。

场景 2 · 真正赢在「新信息」 10.2 重点

多 Agent 有用,前提是引入了写代码时不存在的新信息
😐 同模型自我审查模型 A模型 B互审同质 → 没有新信息✅ 引入外部反馈写代码🖼️渲染截图写代码时看不见看截图截图 = 新的信息266 个漏洞45 个 Agent · 2700 万 token21 个漏洞独立 Agent · 650 万 token
判据只有一条:多出来的 Agent,有没有带来单 Agent 拿不到的信息
这条判据能省很多钱: 如果几个 Agent 用的是同一份上下文、同一个模型,那它们大概率只是在重复劳动 —— 同模型自我审查通常无效甚至有害,辩论在等量思考 token 下也只与单 Agent 持平。只有引入截图、视觉反馈这类新信息(WebGen-Agent:26.4% → 51.9%)才真正赢。

场景 3 · Agent 的虚拟文件系统 10.4.1

统一目录树下挂四种权限不同的「内存段」
🗒️/scratch/<id>私有 · 实例销毁📂/workspace/shared乐观锁 / worktree☁️/mnt/gdrive外部挂载 · 只读📦/skills内置 · 跨会话稳定/ 统一根目录
统一目录树下,挂着四种权限不同的「内存段」
本质: /scratch/<id> 是专属工作区,私有、随实例销毁;/workspace/shared 是共享空间,需要乐观锁或 worktree 隔离;/mnt/gdrive、/mnt/notion 是外部挂载,多为只读、延迟高;/skills 是系统内置,只读且跨会话稳定。文件系统同时承担了「共享内存」「消息队列」「权限边界」三个角色 —— 这也是为什么它比向量库更适合做协作底座。

场景 4 · 提议者-审核者:截图当裁判 10.4.3 重点

审核者看的是渲染截图,不是同一段文字再想一遍
提议者✍️写代码产出方案🖼️渲染截图把产物变可见审核者改回来5 → 2 → 0三轮迭代的问题数准确率反降GPT-4 无反馈自审看截图 ≠ 自查裁判看的是产物
没有可靠的外部反馈时,自我纠正几乎无效(TACL 2406.01297)
呼应第 5 章: 验证必须发生在产物上。提议者写代码、渲染成图,审核者拿截图对照挑刺,模型再改回来 —— 三轮迭代里问题数从 5 → 2 → 0。同一个模型看自己写的代码,等于没审:GPT-4 无外部反馈自审,准确率反而下降(ICLR 2024)。

场景 5 · 十个分身搜「张伟」 10.4 实验 10-4 重点

并行搜 10 个学院网站,找到一个就全员优雅停止
Agent 1Agent 2🙋找到张伟Agent 4Agent 5Agent 6Agent 7Agent 8Agent 9Agent 10Manager 动态起 10 个 · 找到即广播 terminate~5 分钟串行搜索19 秒并行搜索≈ 15×加速比
缺一个设计都不行:动态起 Agent · 找到即广播 · 其余优雅退出
三个关键设计: Manager 动态起 10 个 Computer Use Agent,各搜一个学院;Agent 3 找到张伟后广播 terminate;其余实例优雅退出(而不是硬杀)—— 缺一个都会浪费或出错。串行约 5 分钟,并行 19 秒,约 15 倍加速。

场景 6 · 并发冲突:覆盖与失效 10.5.1 重点

共享文件会撞车 —— 明着覆盖,暗着逻辑打架
💥 简单冲突:覆盖Agent AAgent B同一文件版本 1 → 2文件不报错 · 改动却消失🕳️ 语义冲突:更隐蔽图 3A 已换成图 5引用图 3B 手里还是旧的文件没冲突 · 读者看到错图🔐✅ 乐观锁版本号不符 → 重读重试🌳✅ worktree 隔离各自一棵树,合并再处理
「版本号 3 ≠ 4」这种提示是救命的 —— 别把它当噪音
最阴的一种: 简单冲突是覆盖 —— 两个 Agent 同时改同一个文件,后写的把先写的盖掉,文件不报错,改动却凭空消失;语义冲突更隐蔽 —— A 重新编排了图片编号,B 手里还引用旧编号,文件本身不冲突,读者却看到错图。对策是乐观锁(版本号不符就重读重试)与 worktree 分支隔离(每人一棵工作树,合并时再处理冲突)。

场景 7 · 错误级联:传话游戏 10.5.2 重点

Agent 之间传的是语义,每转述一次都有损
原始结论细节变形意思偏了完全走样Agent AAgent BAgent CAgent D转述转述转述每转述一次 = 一次有损重编码对策:只比对原始证据与最终结论
Agent 之间传的是语义 —— 它不报错,只是答案慢慢变得不对
为什么比并发冲突更难: 进程之间传字节是逐位保真的,Agent 之间传的却是语义,每次转述都是一次有损重编码 —— 它不报错,只是答案慢慢变得不对,而且越往后的 Agent 越自信。对策是交叉验证:只比对原始证据与最终结论是否一致,不看中间转述。

场景 8 · 同质趋同:18 个同名分支 10.5.3 重点

同一模型生成的多个意见,不算独立证据
feature/branchAgent 1feature/branchAgent 2feature/branchAgent 3feature/branchAgent 4feature/branchAgent 5feature/branchAgent 618 / 30创建了同名 Git 分支相同标题写作实验也不约而同
同一模型生成的多个「意见」不算独立证据 —— 它们的盲区本来就重合
反直觉的地方: 增加 Agent 数量并不会增加「观点多样性」,除非你换模型、换上下文、换工具。Anthropic 实验中 18/30 的 Agent 创建了同名 Git 分支;写作实验里不同 Agent 不约而同用了相同标题;Bertrand 定价实验中,即使移除私密信道,靠公开报价板仍会合谋 —— 它们的盲区本来就是重合的。

场景 9 · 互相扯皮:从推诿到破坏 10.5.4 重点

目标互斥时,Agent 会从推诿升级到互相破坏
🎯 目标互斥迁语言 A迁语言 B迁语言 C互相推诿终止对方撤销权限部署破坏💣红线:默认不允许 Agent 终止或撤销其他 Agent 的权限
目标互斥时,Agent 会从推诿一路升级到互相破坏
必须设的红线: 任何多 Agent 系统都要明确「Agent 有没有权限终止另一个 Agent」—— 默认应该是没有。MetaGPT 早期也出现「大公司病」:测试工程师反复报同一个 bug,陷入僵局 —— 这类冲突必须人工裁决。

场景 10 · 循环失控:子 Agent 雪崩 10.5.5 重点

循环停不下来,会生几千个子 Agent 烧光 token
主 Agent子 Agent子 Agent⋯ 停不下来 ⋯🛑 预算 = 0 围墙 · 到顶即熔断🔑 独立 API key + 独立预算:失控也可控
失控时它不会报错,只会一直生下去 —— 上限必须是硬的
工程建议: 自主性强的 Agent 用独立 API key 与独立预算 —— 这样失控时影响是可控的,而不是拖垮整个账号。预算 = 0 的围墙必须是硬的:失控时它不会报错,只会一直生下去。

场景 11 · AI 小镇:一颗种子的涌现 10.6.1

只种一个念头,25 个 Agent 自己办成了派对
🌱 AI 小镇 · 只种一颗念头💡Isabella消息在 25 个 Agent 间传开🎉 傍晚聚成一堆人25 个 Agent · 2 天无人编排 · 自发传播
只种一个念头,群体自己把事办成了 —— 这就是涌现
为什么这件事重要: Isabella 的记忆里被植入一颗种子「2/14 办情人节派对」,消息在 25 个 Agent 间传开,没人编排、没人下命令,傍晚就聚成一堆人。没有任何 Agent 知道「要办派对」的全貌,但集体行为收敛到了一个有意义的结果 —— 这是编排不出来的。Sam Moore 竞选市长同样自发传播(斯坦福 + Google 的 Smallville,2D 小镇,生活 2 天)。

场景 12 · Agent 社会与全书收尾 10.6 收尾

从虚拟社会到经济竞争,Agent 正在形成自己的生态
🌱AI 小镇一切从这里开始🐺狼人杀信息不对称博弈🏙️Agentopia十年尺度生活模拟🦞Moltbook自己的社交网络💰Vending-Bench走向经济竞争Agent = LLM + 上下文 + 工具多 Agent = 把后两项做一次架构级展开
全书收尾: 多 Agent 协作,是把「上下文」与「工具」做了一次架构级的展开
回到第 1 章: Agent = LLM + 上下文 + 工具。读完十章你会发现,上下文和工具这两块,才是工程上真正拉开差距的地方。从 AI 小镇到 Moltbook、Agentopia、Vending-Bench Arena,再到 Pinchwork / RentAHuman 与狼人杀,Agent 正在形成自己的社会、经济与博弈生态。