MASFT(Berkeley,2025)将 14 种多 Agent 失败模式归入 3 个类别。Microsoft 的分类法记录了现有 AI 失败在 Agent 环境中如何被放大。行业一线数据收敛于五种反复出现的模式:幻觉动作、范围蔓延、级联错误、上下文丢失、工具误用。
学习目标
- 说出 MASFT 的三大失败类别,以及每类中至少四种具体模式。
- 解释为什么 Agent 失败会放大现有的 AI 失败模式(偏见、幻觉)。
- 描述五种行业反复出现的模式及其缓解措施。
- 实现一个 stdlib 检测器,为 Agent 轨迹打上失败模式标签。
问题
团队交付的 Agent 在 90% 的轨迹上工作正常。剩下 10% 的失败不是随机噪声——它们集中在少数几类反复出现的类别中。一旦你能叫出它们的名字,就能监控并修复它们。
概念
MASFT(Berkeley,arXiv:2503.13657)
多 Agent 系统失败分类法(Multi-Agent System Failure Taxonomy)。14 种失败模式归入 3 个类别。标注者间 Cohen's Kappa 为 0.88——这些类别可以被可靠地区分。
核心主张:失败是多 Agent 系统中的根本设计缺陷,而不是靠更好的基座模型就能修复的 LLM 局限。
Microsoft 的 Agent AI 系统失败模式分类法
- 现有 AI 失败(偏见、幻觉、数据泄露)在 Agent 环境中会被放大。
- 新的失败源于自主性:大规模的非预期动作、工具误用、任务漂移。
- 该白皮书是 Agent 产品的风险登记册。
Characterizing Faults in Agentic AI(arXiv:2603.06847)
- 失败源于编排、内部状态演化以及与环境交互。
- 不仅仅是「坏代码」或「坏模型输出」。
LLM Agent 幻觉综述(arXiv:2509.18970)
两种主要表现:
- 指令遵循偏离(Instruction-following Deviation)——Agent 不遵循 system prompt。
- 长程上下文误用(Long-range Contextual Misuse)——Agent 遗忘或误用前几轮的上下文。
子意图错误:遗漏(Omission,漏掉步骤)、冗余(Redundancy,重复步骤)、错序(Disorder,步骤顺序错误)。
五种行业反复出现的模式
Arize、Galileo、NimbleBrain 2024-2026 年的一线分析收敛于:
- 幻觉动作。 Agent 调用了不存在的工具,或捏造参数。
- 范围蔓延。 Agent 把任务扩展到用户要求之外(创建多余的 PR、发送多余的邮件)。
- 级联错误。 一次错误调用触发下游连锁反应。一个虚构 SKU 的幻觉触发四次 API 调用——演变为多系统事故。
- 上下文丢失。 长程任务遗忘了早先轮次的约束。
- 工具误用。 用错误的参数调用正确的工具,或完全用错工具。
级联是致命杀手。Agent 无法区分「我失败了」和「任务不可能完成」,并且常常在收到 400 错误时幻觉出一条成功消息来闭合循环。
缓解:每一步都设关卡
在推理链的每一步设置自动验证关卡,对照环境状态检查事实依据。具体地:
- 每步安全分类器(第 21 课)。
- Tool call 参数校验(第 06 课)。
- 将检索到的内容与已知事实交叉核对(第 05 课,CRITIC)。
- 通过重新探测状态来检测成功幻觉(文件是否真的创建了?)。
失败监控容易出错的地方
- 只给崩溃打标签。 大多数 Agent 失败产生的是看似有效的输出。需要内容级检查。
- 没有基线。 漂移检测需要一个 last-known-good;没有它,你无法判断「情况正在变差」。
- 告警过度。 每次失败都触发一页告警。需要聚类与速率限制。
构建它
code/main.py 实现一个 stdlib 失败模式标注器:
- 一个覆盖五种模式的合成轨迹数据集。
- 按模式划分的检测器函数(针对 tool call、输出、重复动作的签名模式)。
- 一个标注器,为每条轨迹打标签并报告模式分布。
运行它:
python3 code/main.py输出:每条轨迹的标签 + 汇总分布,以低成本复现 Phoenix 轨迹聚类所呈现的结果。
使用它
- Phoenix 用于生产漂移聚类(第 24 课)。
- Langfuse 用于会话回放 + 标注。
- 自定义实现 用于你的可观测平台无法检测的领域特定签名。
交付它
outputs/skill-failure-detector.md 生成贴合你领域的失败模式检测器,并接入轨迹存储。
练习
- 添加一个「成功幻觉」检测器:Agent 返回成功,但目标状态未改变。
- 为你构建过的产品标注 100 条真实轨迹。哪种模式占主导?修复它的成本是多少?
- 实现「级联半径」指标:给定第 N 步的失败,它影响了多少下游步骤?
- 阅读 MASFT 的 14 种失败模式。挑选三种适用于你产品的模式,编写检测器。
- 将一个检测器接入 CI 作业:若 >=5% 的轨迹命中某模式,则让构建失败。
关键术语
| 术语 | 常见说法 | 实际含义 |
|---|---|---|
| MASFT | 「多 Agent 失败分类法」 | Berkeley 的 14 模式分类 |
| 级联错误(Cascading error) | 「涟漪式失败」 | 早期的一个错误沿 N 个步骤传播 |
| 上下文丢失(Context loss) | 「忘了约束」 | 长程轮次丢弃早期事实 |
| 工具误用(Tool misuse) | 「错工具 / 错参数」 | 调用有效,但调用方式错误 |
| 成功幻觉(Success hallucination) | 「伪造完成」 | Agent 在 400 上声称成功;状态未变 |
| 范围蔓延(Scope creep) | 「越权」 | Agent 做的事超出要求 |
| 指令遵循偏离(Instruction-following deviation) | 「不服从」 | 无视 system prompt 或用户约束 |
| 子意图错误(Sub-intention errors) | 「计划缺陷」 | 计划执行中的遗漏、冗余、错序 |
进一步阅读
- Cemri et al., MASFT (arXiv:2503.13657) —— 14 种失败模式,3 个类别
- Microsoft, Taxonomy of Failure Mode in Agentic AI Systems —— 风险登记册
- Arize Phoenix —— 实践中的漂移聚类
- Anthropic, Building Effective Agents —— 更简单的模式如何完全避开这些失败模式