本文核心数据和分类框架来源于 UC Berkeley MAST 研究(arXiv:2503.13657)及 futureagi 2026 工程实战总结,适配至国内部署环境。
TL;DR
Multi-Agent 系统在生产环境的失败率高达 41%-86.7%。79% 的失败不是模型不够好、不是 GPU 不够多——是 specification 不清晰和 agent 间协调失败。本文拆解 14 种失败模式(含 MAST 分类法),给出每种模式的识别信号 + 修复方案。核心结论:大多数场景下,单个强 agent + 清晰 prompt > 多个弱 agent 协作。
现象:你的 Multi-Agent 系统为什么越加越慢?
| 你做的 | 发生的 |
|---|---|
| 加了 3 个 specialist agent | 准确率反而降了 15% |
| 让 agent A 审核 agent B 的输出 | agent A 永远说「OK」,agent B 的 bug 照发不误 |
| 4 个 agent 协作完成一个 task | 有时快 2 倍,有时死循环 10 分钟 |
| 增加了 conversation history 共享 | agent 开始「串供」——互相复制对方的错误 |
| 这不是你的 prompt 写得不好。这是 Multi-Agent 的固有复杂度:n 个 agent = n(n-1)/2 个通信链路 = 每个链路都是潜在的失败点。 | |
| --- | |
| ## 14 种失败模式(MAST 分类法) | |
| UC Berkeley 的 MAST(Multi-Agent System Failure Taxonomy)将失败分为三大阶段: | |
| ### 执行前(Pre-Execution)—— 44.2% 的失败 | |
| # | 失败模式 |
| --- | --------- |
| 1 | 不遵守任务规范 |
| 2 | 不遵守角色规范 |
| 3 | 步骤重复 |
| 4 | 丢失对话历史 |
| 5 | 不知道何时终止 |
| ### 执行中(Execution)—— 32.3% 的失败 | |
| # | 失败模式 |
| --- | --------- |
| 6 | 推理-行动不匹配 |
| 7 | 隐藏信息 |
| 8 | 忽略其他 agent 的输入 |
| 9 | 不请求澄清 |
| 10 | 对话重置 |
| 11 | 任务跑偏 |
| ### 执行后(Post-Execution)—— 23.5% 的失败 | |
| # | 失败模式 |
| --- | --------- |
| 12 | 提前终止 |
| 13 | 不验证/验证不完整 |
| 14 | 验证错误 |
| > 核心数据:前三大失败模式(不遵守规范 + 步骤重复 + 提前终止)占 40.7%。修好这三个,失败率直接砍半。 | |
| --- | |
| ## 为什么 Multi-Agent 比 Single-Agent 更容易翻车? | |
| ### 通信开销指数增长 |
1 agent → 0 条通信链路
2 agents → 1 条
3 agents → 3 条
4 agents → 6 条
10 agents → 45 条
每条链路都是「消息失真 + 延迟 + 误解」的机会。4 个 agent 就有 6 个潜在失败点,10 个 agent 有 45 个。
「审核员悖论」
最常见的 Multi-Agent 架构:Agent A 干活 → Agent B 审核 → 通过后输出。 实际效果:Agent B(审核员)有它自己的 prompt 和 context,但它的理解偏差和 Agent A 的不一样。结果: - Agent A 写了一个有 bug 的代码 - Agent B 看了说「looks good」 - 原因:Agent B 的 evaluation criteria 里没有检查这个特定 bug 审核员 agent 不是「更强的模型」,它是一个「不同偏好的模型」。
Anthropic 的研究结论
Anthropic 测试发现:简单往 workflow 里加 agent 往往降低性能,而不是提升。多 agent 只有在满足以下条件时才优于单 agent: 1. 任务可被严格分解为独立子任务 2. 各子任务的输入输出 schema 明确且不重叠 3. 有硬验证关卡(非 LLM 判断,而是编译/测试/assert)
修复方案(按效果排序)
方案 A:降级——用单 Agent + 更好 Prompt(最推荐 ✅)
适用场景:你的 Multi-Agent 系统目前准确率 < 80%。
❌ Agent A(规划) → Agent B(执行) → Agent C(验证)
✅ 单 Agent + system prompt 内嵌三段式指令:
1. 先列出你要做什么(plan)
2. 逐步执行,每步输出中间结果
3. 完成后自我检查:逐一核对 requirements
效果:多数场景下,一个强 prompt 的 agent 比多个弱 prompt 的 agent 协作效果更好。省掉通信开销,消除串供风险。
方案 B:硬关卡取代 LLM 审核员
把「LLM 判断」改为「程序判断」:
# ❌ 让另一个 agent 审核输出
reviewer.evaluate(agent_output)
# ✅ 程序化验证
assert agent_output.keys() >= {"field_a", "field_b"}
assert all(isinstance(v, str) for v in agent_output.values())
assert len(agent_output["summary"]) <= 500
# 跑一个实际测试
test_result = run_test(agent_output)
assert test_result.passed
LLM 可以判断「这个回答通不通顺」,但不能可靠判断「这段代码对不对」。后者的判断权交给编译器/测试框架。
方案 C:Schema 强约束(结构化输出)
每个 agent 的输入/输出用 pydantic/JSON Schema 锁定:
from pydantic import BaseModel
class CodeReviewOutput(BaseModel):
issues: list[str] # 必定是字符串列表
severity: str # 只能是 "critical"/"warning"/"info"
must_fix: bool # 必定是布尔值
# Agent 输出被强制解析,不符合 schema = 失败,不回传下游
效果:消除了「agent B 忽略 agent A 输入」「信息格式不一致」类的失败。
方案 D:Human-in-the-Loop(高风险操作)
对「删除数据库」「修改生产配置」「发送外部消息」类操作:
Agent 执行 → 暂停,等待人工确认 → 通过后继续
不是 LLM 判断,是真实人类按下确认按钮。
如何自检你的 Multi-Agent 系统是否在裸奔
| 检查项 | 通过标准 | 不通过怎么办 |
|---|---|---|
| 每个 agent 的输入/输出 schema | 有 pydantic/JSON Schema 定义 | → 方案 C |
| 关键操作有非 LLM 把关 | assert / 编译 / 测试框架在 pipeline 中 |
→ 方案 B |
| Agent 数量 | ≤ 3 个 | → 方案 A(降级到单 agent) |
| 审计日志 | 每个 agent 的输入/输出可回溯 | → 至少存到文件/SQLite |
| 死循环检测 | 有最大步数限制 + 超时 | → max_steps=10, timeout=300s |
| --- | ||
| ## 启示 | ||
| 1. Multi-Agent 不是 Silver Bullet。 大多数「我加个 agent 就好了」的想法,实际是「我加了个新的失败点」。 | ||
| 2. 79% 的失败和模型能力无关。 别急着换模型、加 GPU——先修 specification 和 coordination。 | ||
| 3. 两个 agent 已经是高复杂度。 3 个以上 = 需要专门的编排层 + 硬关卡。 | ||
| 4. 审核员 agent 是最大的幻觉来源之一。 LLM 倾向于「确认偏误」——它看到的东西符合预期就说 OK,不会有真正的批判性思维。 | ||
| 5. 单 agent + 结构化输出 + 硬关卡,比 4 agent 自由对话可靠得多。 这不是直觉,是数据。 | ||
| --- | ||
| > 原始出处: | ||
| > - MAST: Multi-Agent System Failure Taxonomy (arXiv:2503.13657) —— UC Berkeley,14 种失败模式分类 | ||
| > - Why do multi agent LLM systems fail (and how to fix) - 2026 Guide —— 工程化修复方案 | ||
| > - Are Your Multi-Agent Systems Failing for These 7 Reasons? - Galileo —— 协调成本指数增长模型 | ||
| > - Multi-Agent in Production in 2026: What Actually Survived - Medium —— 四种生产级架构对比 | ||
| --- | ||
| 本文首发于 CSDN 专栏《人工智能 Agent 从部署到生产》,转载请注明出处。 |
本文由 admin 原创,转载请注明出处。
评论
0