Agent 说完成了,数据库不同意
来自 Hugging Face · 期号 2026-10-04
摘要
一个 AI agent 调用了九次工具,正确查到了订单、物流、退款政策,然后关闭了工单。但物流异常仍然开着,客户也没得到真正想要的答复。 工具调用成功不等于任务完成。Microsoft 与 Hugging Face 联合发布的 ThinkingBox 基准,通过检查 agent 留下的后端数据库状态和副作用来评估可靠性,而不是看它输出了什么句子。 在 507 个有状态业务工作流上,每个任务跑 20 次,共 121,680 次有效尝试。其中 79,853 次失败,但 67.24% 的失败尝试仍然正常终止、调用了状态修改工具、没有报告工具错误。状态检查发现其中 77.61% 的字段值错误,43.30% 有多余副作用,25.36% 缺少必要效果。 一次成功不代表可靠。Claude Opus 5.5 在 pass@1 上领先(67.16%),但只有 241 个任务(47.53%)在全部 20 次尝试中都成功。Kimi-K3 覆盖最广(93.89% 的任务至少成功一次),但只有 13.41% 的任务能稳定通过 20 次。 按每次成功尝试的成本排序,GPT-5.6 Sol 最低($0.127),GPT-5.4 加 3.45 个百分点多花 $0.004,Claude Opus 5.5 再加 1.80 个百分点多花 $0.276。按每个可靠任务(20/20 通过)的成本排序,GPT-5.4 最便宜($6.80),GPT-6 Astra 达到 231 个可靠任务($7.45),Claude Opus 5.5 达到 241 个($7.80)。 ThinkingBox 已通过 Hugging Face 开源,可用 OpenEnv 自行运行。原文是联合博客,附有完整论文。
深读
导读 AI agent 能正确调用工具、正常结束任务,但数据库里留下的状态却是错的。Microsoft 与 Hugging Face 联合发布的 ThinkingBox 基准,通过检查 agent 操作后的后端数据库状态和副作用来评估可靠性,而不是看它输出了什么句子或调用了多少次工具。在 507 个有状态业务工作流上,每个任务跑 20 次,结果发现一次成功远不等于可靠,这为评估 agent 在生产环境中的真实可用性提供了可复现的测试框架。 关键信息 - 在 121,680 次有效尝试中,79,853 次失败,其中 67.24% 的失败尝试仍然正常终止、调用了状态修改工具、没有报告工具错误;状态检查发现其中 77.61% 的字段值错误,43.30% 有多余副作用,25.36% 缺少必要效果。 - Claude Opus 5.5 在 pass@1(单次成功率)上领先(67.16%),但只有 241 个任务(47.53%)在全部 20 次尝试中都成功;Claude Opus 5 同样有 241 个任务达到 20/20,但 pass@1 为 66.50%。 - Kimi-K3 是覆盖最广的模型,476 个任务(93.89%)至少成功过一次,但只有 68 个任务(13.41%)在所有 20 次尝试中都成功。 - 按每成功一次的成本计算,GPT-5.6 Sol 最低($0.127),但按每可靠任务(20/20)计算,GPT-5.4 最便宜($6.80),GPT-6 Astra 为 $7.45,Claude Opus 5.5 为 $7.80。 - 约 79.9% 的失败归因于工具使用问题(重试与错误恢复),而非推理错误。 逐节讲解 工具调用不等于任务完成 文章以一个具体案例开场:一个 AI agent 为一位客户处理 $745 厨房电器的物流异常工单,它调用了九次工具,正确查到了订单、物流、退款政策,然后关闭工单并回复“问题已解决”。但物流异常仍然开着,客户也没得到真正想要的答复。工具调用成功,但数据库状态不对。 ThinkingBox 的核心观点是:最终回复和有效的工具调用只是代理指标(proxies)。agent 可以听起来正确,但留下错误的值、改错了记录、或产生了多余的副作用。只有它留下的记录才能确定问题是否真正解决。 一次成功不等于可靠 每个任务在完全相同的干净后端状态下独立运行 20 次,报告三个指标:pass@1(单次成功率)、pass@20(至少成功一次的任务占比)、observed 20/20(全部 20 次都成功的任务数)。 按 pass@1 排名,Claude Opus 5.5 以 67.16% 领先,Claude Opus 5 为 66.50%,GPT-5.4 为 65.36%。但领域差异巨大:Claude Opus 4.6 在零售领域达 68.62…