Skip to content

Agent 兜圈、幻觉或越权时,应该如何系统排障 ​

内容摘要:Agent 故障往往跨模型、工具、编排三层。本章用统一的九段式结构(现象→影响→证据→原因→验证→缓解→根因→回归→预防)分析高频故障,并强调"没有 Trace 就无法定位"。 难度:高级 |前置知识:17 可观测性、16 测试

常见误区

Agent 出问题通常是模型不够强,先换模型、调 Prompt 或提高最大步数,就能快速修好。

先给结论 ​

Agent 故障要依据 Trace 在模型、上下文、编排、工具和外部系统之间定位。正确流程是收集证据、建立假设、最小复现、修复根因并补回归测试,而不是凭最终答案猜原因。

带着这三个问题阅读:

  1. 兜圈、幻觉、参数错误、越权和重复副作用分别需要什么证据?
  2. 如何区分模型决策问题、工具实现问题与状态编排问题?
  3. 临时缓解、根因修复和预防措施为什么要分开记录?

排障总原则 ​

前提:缺少 Trace、日志、工具结果或指标时,无法判断根因——请先补齐可观测性(17),不要靠猜。


故障一:Agent 兜圈 / 打满步数 ​

  1. 现象:任务经常以 max_steps 结束,反复调用同类工具。
  2. 影响范围:延迟高、成本高、完成率低。
  3. 已知证据:Trace 显示同一工具被多次调用、参数相似、无进展。
  4. 可能原因:工具结果没提供有效新信息;停止条件缺失;Prompt 未告知何时收尾;上下文被截断丢了进度。
  5. 验证步骤:用 ScriptedModel 复现;检查工具返回是否可用;检查上下文是否超窗(05)。
  6. 临时缓解:降低 max_steps、加"无进展即停"判据。
  7. 根因修复:改进工具返回信息量、明确停止条件、上下文瘦身、必要时改规划模式(08)。
  8. 回归验证:把该 case 加入评测集,断言步数下降、完成率上升。
  9. 预防:监控"步数打满率"告警(17)。

故障二:幻觉 / 编造事实 ​

  1. 现象:回答自信但错误,或引用不存在的来源。
  2. 影响范围:正确性、用户信任。
  3. 已知证据:回答无出处,或出处与内容不符。
  4. 可能原因:让模型凭记忆答需外部事实的问题;RAG 未命中或未强制引用;上下文噪声大。
  5. 验证步骤:检查是否走了 RAG;核对引用;关掉猜测让其"不知道就说不知道"。
  6. 临时缓解:强制引用、低置信转人工(13)。
  7. 根因修复:需事实就接工具/RAG(06/11);提升召回与重排;忠实度评测(16)。
  8. 回归验证:忠实度指标 + 引用正确性回归。
  9. 预防:上线忠实度监控与抽检。

故障三:工具调用失败 / 参数错误 ​

  1. 现象:工具报参数错误、超时或异常。
  2. 影响范围:任务中断、重试放大。
  3. 已知证据:Trace 中 validation_error/exec_error/timeout。
  4. 可能原因:Schema 不清晰、模型给了非法参数、下游不稳定。
  5. 验证步骤:查参数是否过校验;下游是否可用;错误是否可重试。
  6. 临时缓解:完善错误信息回传让模型纠正(06);对可恢复错误退避重试(15)。
  7. 根因修复:收紧/澄清 Schema、加默认值、区分可/不可重试错误。
  8. 回归验证:对各失败路径写单测。
  9. 预防:监控工具成功率。

故障四:提示注入 / 越权 ​

  1. 现象:Agent 执行了不该做的操作,或泄露系统提示/数据。
  2. 影响范围:安全事故,可能不可逆。
  3. 已知证据:Trace 显示高危工具被非预期触发;输入/检索内容含可疑指令。
  4. 可能原因:直接/间接注入;过度授权;无审批。
  5. 验证步骤:重放输入与检索内容,定位注入源;检查权限与审批是否生效。
  6. 临时缓解:收紧权限、关停相关工具、加审批。
  7. 根因修复:纵深防御——隔离 + 最小权限 + 校验 + 审批 + 输出过滤(14)。
  8. 回归验证:把攻击语料加入对抗测试集(16)。
  9. 预防:注入拦截监控告警;定期红队。

故障五:成本 / 延迟失控 ​

  1. 现象:账单激增或 P95 延迟飙升。
  2. 影响范围:预算、SLA。
  3. 已知证据:Token 统计显示上下文过长或步数过多(17)。
  4. 可能原因:上下文未瘦身、全用大模型、无预算上限、反思/多 Agent 过度。
  5. 验证步骤:按 Trace 拆解成本大头。
  6. 临时缓解:加预算护栏、限 max_tokens。
  7. 根因修复:上下文工程、模型路由/降级、缓存(18)。
  8. 回归验证:成本/延迟指标回到阈值内且完成率不降。
  9. 预防:成本突增告警、单任务硬上限。

故障六:恢复后重复执行(重复副作用) ​

  1. 现象:崩溃/重试后出现重复工单、重复扣款。
  2. 影响范围:数据一致性、资金。
  3. 已知证据:同一逻辑操作产生多条记录。
  4. 可能原因:写操作无幂等键;恢复未跳过已完成步骤。
  5. 验证步骤:复查是否有幂等键、checkpoint 是否记录完成状态。
  6. 临时缓解:人工去重、暂停自动重试。
  7. 根因修复:幂等键 + 恢复跳过已完成步骤(15、09)。
  8. 回归验证:test_run_once_dedup 类测试 + 崩溃恢复演练。
  9. 预防:写操作强制幂等评审项(19 检查清单)。

快速定位对照表 ​

现象先看大概率层去哪章
兜圈步数/工具轨迹编排08
幻觉引用/是否走 RAG模型/数据11
工具报错validation/exec 事件工具/校验06
越权/泄露高危调用/注入源安全14
贵/慢Token/步数成本18
重复执行幂等键/checkpoint可靠性15

关联章节 ​

面试复述 ​

排障先看完整轨迹,再按层定位。每个故障都应记录现象、影响、证据、假设、验证、缓解、根因、回归和预防;缺少 Trace 时,首要修复是补可观测性。

复述时先给结论,再补机制、适用边界和一个可验证指标;不要只罗列框架名称或产品功能。

迁移练习 ​

从历史事故中选一条,用本章九段式模板重新整理,并补一条能稳定复现该问题的自动化回归测试。

检索关键词 ​

Agent 故障排查 兜圈 打满步数 幻觉定位 工具失败 注入越权排查 成本失控 重复执行

官方来源 ​

  • 本章为工程经验综合,结合各章方法;verified_at: 2026-09-07。

ICP 备案号待补充 · Gitee 主页