为什么"虚拟公司"式多Agent架构在工程上不成立
Anthropic、OpenAI、Google三家的工程实践中,没有一家采用角色扮演式多Agent分工
什么是"三省六部"式架构
这个比喻指的是一类在社区里广泛流行的多Agent设计思路——role-based agents、virtual team、CrewAI式分工、MetaGPT式组织,本文统称"三省六部"。核心模式是:把一个复杂任务拆解成若干职能,每个Agent扮演一个角色——PM负责需求、Tech Lead负责架构、Dev负责实现、QA负责测试。任务在Agent之间流转,像一条流水线。这个模式在图示上非常好看,满足了人类对"分工协作"的直觉。问题在于,它解决的是人类的瓶颈,不是AI的瓶颈。
为什么这个类比从根本上是错的
"
人类需要分工,是因为单个人的注意力有限、有专业壁垒、需要接口协调。但LLM的特性完全不同:同一个模型既能写PRD又能写代码,没有"职业边界";模型的瓶颈不是注意力广度,而是推理深度和信息完整性。
核心论点
角色标签制造假边界
给Agent贴上"产品经理"的标签,不会让它更专业——但会让它拒绝越界。一个被框死在"测试工程师"角色里的Agent,看到架构层的问题可能直接跳过,因为"不在我职责范围内"。最有价值的推理往往发生在边界上,而三省六部模式在系统层面封死了这个可能性。
信息在流转中死亡
三省六部模式里,Agent A产出一个文档传给Agent B。这个过程传递的是结论,不是推理过程。B拿到文档重新理解,原始意图在衰减,隐含假设在丢失,每次传递都在累积误差。工作流越长,最终输出越"局部正确但整体漂移"——每个节点看起来合理,但整体已经偏离了最初的目标。大量token被浪费在Agent之间的"交接文件"上,而不是用于实际推理。你得到的是一个模拟公司行为的系统,而不是一个解决问题的系统。
关键区别:角色交接 vs 外部状态
| 三省六部传递 | 外部状态文件 | |
|---|---|---|
| 1 | 角色间单向交接,A写完交给B | 同一任务的增量日志 |
| 2 | 信息被压缩成结论,推理丢失 | 信息连续积累,非压缩传递 |
| 3 | 接棒就是断点,B不再回头 | 读写主体相同,只是时间不同 |
| 4 | 每传一次,累积一次误差 | 推理链跨session保持连续 |
三家厂商实际怎么做
Anthropic:Context Engineering + 显式状态文件。claude-progress.txt作为跨session工作日志,Git history作为状态锚点。多Agent架构采用orchestrator-worker模式,subagent并行探索不同方向,而非顺序传递。他们发现token消耗量解释了80%的性能差异。
OpenAI:任务开始时冻结Spec文件防止方向漂移,server-side compaction作为默认primitive,Skills作为版本化工具集。
Google:追求1M token大窗口,Conductor扩展实现持久化规范,Thought Signatures保存推理链关键节点防止reasoning drift。
真正的架构原则
1. 推理链不能断,只能分叉再合并
主agent持有完整意图,子调用深挖子问题,结果回流给主agent,不是传给下一个agent
2. 显式外部状态,不靠模型记住
progress.txt、git history、spec文件——推理链关键节点必须外化到持久存储
3. 多Agent的价值是并行覆盖,不是分工
性能提升来自"花了更多token"覆盖更大搜索空间,而非"分工更合理"
4. 验证Agent是否定者,不是接棒者
正确设计是让一个Agent专门找另一个的问题——对抗性检验,不是流水线传递
5. 工具比角色标签重要
给Agent配什么工具决定它"能"做什么;角色标签只是约束它"愿意"做什么
实践建议
最好的多Agent系统,不像公司。它更像一个思考者的多次草稿——同一个大脑,在不同维度上展开推理,最终合并成一个连贯的结论。
三省六部为什么还会流行
因为它好解释、好展示。用流程图画出来,有部门、有箭头、有交接,非常直观。但好解释和好展示,与工程上是否成立是两件事。三省六部是一个让人感觉良好但工程上代价高昂的错觉。它的真正成本不是直接失败,而是让系统在复杂度上升时,以一种难以诊断的方式退化——每个节点都"看起来在工作",但整体在漂移。保持架构的可演化性,比选一个"完美架构"更重要。
参考来源:Anthropic Engineering Blog(Building Effective Agents, Effective Context Engineering, Multi-Agent Research System);OpenAI Developers Blog(Run Long Horizon Tasks with Codex, Shell + Skills + Compaction);Google Developers Blog(Architecting Efficient Context-Aware Multi-Agent Framework, Conductor)