IBM提出一致性诊断法,缩小AI智能体可靠性缺口

IBM研究院发现AI智能体在重复任务中存在显著的一致性缺口。通过构建Consistency Analyzer诊断工具并生成针对性指导方针,团队将GPT-4.1驱动的智能体在AppWorld基准上的Pass^5成功率从53%提升至69%,有效缩小了平均准确率与完全可靠率之间的差距。

AI 智能体的「可靠性缺口」:IBM 研究院提出一致性诊断与修复方法

智能体在预演中运行良好,现场演示时却走了另一条路径,以同样任务失败。这类问题对关键业务影响显著——编排金融交易、核查合同义务等场景,一旦工作流程在用户重复提出相同请求时表现不稳定,后果远比演示尴尬严重。

多数基准指标把这种波动藏在平均值里。IBM 研究院的 Evelyn Duesterwald、Lilian Ngweta、Vatche Isahagian、Jayaram Radhakrishnan、Vinod Muthusamy、Gaodan Fang、Ashwath Vaithinathan Aravindan、Punleuk Oum、G Thomas、Merve Unuvar、Ayhan Sebin 与 Michał Ulewicz 团队在 AppWorld 基准上发现:基于 GPT-4.1 的 ReAct 智能体在 5 次重复运行中平均成功率为 77.4%,但能在全部五次运行中都成功的任务只占 53.0%,差距达 24.4 个百分点。

一致性缺口从24.4pp缩至12.0pp

大多数基准报告的是前一个数字。团队建立了测量后者的方法,并找到了缩小差距的手段。

此前该团队发布了 ALTK-Evolve 系统,可将智能体自身的历史轨迹转化为可复用的指导方针(guidelines)。不过那些结果同样只回答平均表现的问题。本次发布的文章介绍了一类新的指导方针——一致性指导方针(Consistency Guidelines)

核心结论

  • 准确率掩盖了不可靠性。ReAct 智能体(GPT-4.1,AppWorld test_normal)Mean@5 为 77.4%,Pass^5 仅 53.0%,差距 24.4 个百分点;在困难任务上差距达 30 分。
  • 团队为此构建了诊断工具 Consistency Analyzer。该分析器重放智能体已记录的轨迹,找出容易翻转的决策点——即模型只差一个采样标记就会做出不同选择的步骤。它不需要标注答案,也不需要从头重跑任务;对每个决策点用单次调用并行请求 k 个补全(默认 k=5),仅基于已记录上下文重新采样,不产生新的工具调用或环境交互。
  • 将诊断转化为指导方针后,差距从 24.4 个百分点缩小至 12.0 个百分点(同类任务 Pass^5 提升 16.0pp,相似任务提升 13.0pp),且平均准确率未受损害。
  • 完整方法与评估见 arXiv 技术报告。

几乎无人报告的指标

标准智能体评估报告的是 Mean@k:将基准运行 k 次,取平均通过率,有时 k=3,有时仅为 1。"77% 准确率"的含义仅此而已。

Mean@k 回答的是"这个智能体平均有多好",却没有回答用户真正关心的问题:再次提出同一请求时,它还能成功吗?后者对应 Pass^k:智能体在 k 次运行中全部成功的任务占比。

Pass^k 与 Pass@k 并不是同一个指标。常见的 Pass@k 是乐观口径,询问 k 次尝试中是否至少一次成功;Pass^k 是其悲观镜像,要求每一次尝试都成功。同样的字母,相反的问题。恒有 Pass^k ≤ Mean@k ≤ Pass@k。

基于 GPT-4.1 的 ReAct 智能体 Mean@5 为 77.4%,但 Pass^5 只有 53.0%——近四分之一的任务属于"有时能解、有时不能解"的类型,而任务本身在运行之间并没有任何变化。团队将这一差值定义为一致性缺口(Consistency Gap),即 Mean@k 减去 Pass^k。

这不是换用更大模型就能解决的功能问题。一致性与能力是两个正交的轴:一个智能体可以同时具备能力和不一致性。

智能体为何会摇摆:尖锐分布与平坦分布

每当 LLM 智能体做出决策——调用哪个 API、传什么参数、是否重试——该决策都来自下一个 token 的概率分布,关键在于这个分布的形状。尖锐的分布把绝大部分概率集中在单个 token 上,第二名远远落后;平坦的分布则将相近的概率分散在几个 token 之间,谁胜出近乎抛硬币。

形状决定了需要多少扰动才能改变结果。尖锐分布具有弹性:GPU 浮点非结合性、请求批处理等平台的副作用会轻微推移数值,但远不足以重排明确的赢家。平坦分布则容易受到这类冲击:微小扰动下,势均力敌者可能重新排序。由于一条轨迹串联了数十个决策,每一步小幅的翻转概率会复合成整体的大幅翻转概率——这正是 24 分缺口的来源。

这也解释了该问题为何能穿透常规解码设置。贪心解码和固定种子只控制分布如何变成 token,对分布本身毫无作用;在托管端点上,概率随运行略有波动,因此同一模型、同一提示、零温度下,今天和明天的解法仍可能不同。

实验设置:ReAct 智能体在 0.0 温度下运行,上述差异并非普通采样所致。

先诊断,再修复

由此,问题转化为一个搜索任务:给定一条轨迹,哪些步骤是平坦的?知道了之后又能做什么?

团队将方案接入 ALTK-Evolve 的现有机制,仅更换驱动内容生成的信号源。

第一步:检测。Consistency Analyzer 接收一条已记录的轨迹,通过受控重采样重放每一个决策步骤,测量模型输出在该点实际变化的程度。具体而言,每个决策步骤只需一次额外的模型调用:离线采样时设置为一次生成 k 个补全(默认 k=5),基于已记录的上下文重放——没有新的工具调用、没有新的环境交互、没有对任务的第二次端到端 rollout。每个决策步骤的一致性得分写入计分卡,精确指出哪些决策可能在下一次运行中被翻转。检测完全是黑盒的:无需插桩、无需模型内部信息,只需已有的轨迹。

第二步:生成有针对性的指导方针。每个被标记的步骤都会成为标准 ALTK-Evolve 格式的候选一致性指导方针,可直接接入现有的存储与检索流水线。以下是一个真实示例,由 GPT-4.1 从 AppWorld 任务"根据我的 SimpleNote 笔记,我的预期清单中完成了多少项活动"的轨迹中生成:

[指南 1] 在注释内容中统计复选框式标记时,使用逐行正则匹配,而不是简单的子字符串计数;注释标题常在子标题行中重复标记符号。[指南 2] 在继续之前,始终通过检查多个匹配项并确认正确的注释来验证注释查询的搜索结果。

这些内容并非特定任务所独有。字符串计数错误和未经确认的搜索结果,是许多 AppWorld 任务中出现高不确定性的决策点。这正是设计要点:分析器针对的是不稳定性而非故障,因此它能捕捉那些这一次做对了、但下一次极易出错的步骤。

团队提供了一个 2 分钟演示:由于对计数策略存在不确定性,智能体在 5 次并行运行中以 3 比 2 分裂;在上下文中加入这些指导方针后再次运行,五次结果全部一致。

结果:不损失准确率的前提下缩小缺口

评估在 AppWorld test_normal(168 个任务)上进行,使用 GPT-4.1 驱动的 ReAct 智能体。一致性指导方针由每个任务的单条基线轨迹生成,并在 5 次新运行中测试。

一致性缺口大约缩小了一半。总体 Pass^5 从 53.0% 升至 69.0%,Mean@5 从 77.4% 升至 81.0%,"看起来有能力"与"可靠"之间的差距从 24.4pp 收窄至 12.0pp。此前近三分之一的不一致任务,变成了智能体每次运行都能通过的任务。

中等难度和困难难度层的收益最大:中等层 +22.9pp(相对提升 44%),困难层 +14.3pp(相对提升 45%)——两层相对表现基本持平,中等层绝对领先。简单层仅 +12.2pp,因其基线已高、可提升空间有限。这正是这类指导方针的设计目标:定位并稳定特定的决策点。

Mean@5 全程未下降。保持平均准确率是硬性要求而非加分项:一个以牺牲 Mean@5 换取 Pass^5 提升的系统只是在转移不可靠性,而非修复它。在每个难度层级上,平均准确率均保持或提升。

指导方针具有泛化性,并非对单条轨迹的修补

将同一 AppWorld 场景中生成的指导方针应用到不同的、但相关的任务(该场景的另一个变体)上,Pass^5 仍提升 13.0pp,仅比同任务情形低 3 个百分点。从一次运行中获得的指导方针并非只修补那一次运行,而是捕获了可迁移的内容。

更清晰的证据来自较弱的模型 gpt-oss-120b。同任务 Pass^5 从较低的基线 10.1% 升至 16.1%,提升 6.0pp;值得注意的是,相似任务的泛化提升(+8.7pp)超过了同任务提升,表明指导方针捕获的是真正可复用的失效模式,而非记住某条轨迹的具体情况。

对智能体开发者的建议

  • 在 Mean@k 旁边同时报告 Pass^k。平均值无法区分可靠的智能体与侥幸的智能体;即使 k=3,缺口也可能存在而你毫无察觉。
  • 预计缺口随难度扩大。最困难的层级恰是单一平均数最具误导性的地方。
  • 不要先寄望于更大的模型。一致性与能力正交:更强的模型提升 Mean@k,并不必然缩小一致性缺口。
  • 诊断既不需要评分也不需要现场重放:每个决策步骤一次额外的 LLM 调用(默认采样 k=5 个补全)即已足够。这使其可用于生产流量场景——在那里通常无法反复执行任务。

上手尝试

ALTK-Evolve 开源仓库现已包含本实验所用的一致性分析器与一致性指导方针生成器,可直接试用;完整方法见 arXiv 技术报告。

附录:指标说明

  • Mean@k:将任务运行 k 次,报告平均通过率。多数基准称之为"准确率"。
  • Pass^k:智能体在全部 k 次独立运行中成功的任务占比。恒 ≤ Mean@k。对应用户两次运行同一查询时的实际体验。
  • Pass@k:k 次运行中至少一次成功。代码生成论文中常见的乐观口径。
  • 一致性缺口:Mean@k 减 Pass^k,以百分点计。

相关资源

  • ALTK-Evolve 开源仓库 — github.com/AgentToolkit/altk-evolve
  • 技术报告(arXiv)
  • 一致性指导方针演示(2 分钟视频)

评论 0

0/500

评论需审核后展示,请文明发言

💬
还没有评论,来说两句

相关阅读