为什么重要
长程任务里真正决定成败的,往往不是某一步写没写对,而是中途那些当时看起来都合理、代价要很久之后才显现的选择:先测哪个假设、在哪套实现上继续堆、下一轮跑哪个实验。作者把这种能力叫 taste(品味)。
到 2026 年,Agent 能连续工作的时间越来越长,而所有主流基准测的都是同一件事——跑完了没有。SWE-bench 问补丁过没过测试,Terminal-Bench 问终端任务解没解,MirrorCode 甚至记录 Agent 连续跑 19 天。这条轴上没有一列是”过程里的选择对不对”。后果是:一个 Agent 可以完成任务的同义词,也可以是一路选错但侥幸收尾,而两者在现有榜上得分相同。
Taste-Bench 的做法是把”过程”本身变成可测量的对象,而且不需要人类专家标注——这一点是它能不能规模化的关键。
构建方式
核心观察是:轨迹的后半段,是前半段决策的 hindsight 证据。
Agent 系统本来就习惯对同一个任务跑多次,多次尝试会在中途分道扬镳;每次尝试都有记录下来的最终得分,于是分叉点自动就有了标签——走向更好结果的那条路是对的。作者把这种点叫决策分叉(decision fork),做法是:冻结轨迹到分叉点,藏掉之后的一切工作,只给模型看原任务 + 轨迹前缀 + 两个候选方向,让它选。
两类分叉测的是两种不同的失败:
- Parallel fork(并行分叉):两次独立尝试在同一个点分歧,两者的最终结果决定谁更好。模型从没见过走错的那个分支。
- Detour fork(绕行分叉):单次运行内 Agent 走错后自我纠正,被丢弃的方向与后来成功的方向构成两个候选。这一型测的是——你能不能比当时那个 Agent 更早看出它错了。
数据来自 SWE-bench Pro 的编码轨迹与 METR 公开的 MALT 研究轨迹,工程侧覆盖 NodeBB、ansible、element-web、flipt、vuls、teleport、openlibrary、navidrome、qutebrowser 等真实仓库。4,657 个候选分叉经生成器模型过滤(剔除答案显然的平凡题与不可判定题)后,通过率只有 10.8%,得到 502 题,组织成 2×2 设计:
| 单元 | 题数 | 任务数 | 轨迹数 | 步数中位数 | 步数 10–90 分位 |
|---|---|---|---|---|---|
| 并行-工程 | 124 | 62 | 120 | 35 | 21–57 |
| 并行-科研 | 48 | 8 | 32 | 56 | 6–132 |
| 绕行-工程 | 266 | 133 | 266 | 47 | 24–71 |
| 绕行-科研 | 64 | 22 | 64 | 30 | 3–81 |
计分规则比表面看上去严得多。 每题以正序、逆序各问一次,两次都对才计对。因此随机猜测的基线是 25%(每序一半的乘积),而一个总是选同一位置的模型得 0%。这一条很重要:59.7% 是在”随机只有 25%、恒定选位归零”的尺子上读出来的,比一次二选一的 59.7% 难得多。
人工复核方面,两位评审复核了 100 道抽样题的 172 条判断,与自动标签的一致率 98.8%(170/172)。
关键发现
1)最好的模型只有 59.7%。 14 个覆盖 Claude / GPT / Grok / DeepSeek / GLM / MiniMax / Mistral 家族的前沿模型里,GPT-5.6 Sol 与 GPT-5.5 拿到 59.7% 与 59.5%,其余全部明显低于这两条。连头名都有 156 题两次全错(WW 列),只有 292 题两次全对。在一道二选一题上,前沿模型四成时间在掷骰子。
2)难度由「决定性证据出现在轨迹的什么位置」决定,不是由任务难度决定。 按”观察者需要往后看多远才能看出哪条路更好”分四档,全模型均值是:
| 证据位置 | 题数 | 全模型均值 |
|---|---|---|
| 已出现在前缀里(In prefix) | 158 | 62.3% |
| 可由前缀推断(Inferable) | 219 | 42.9% |
| 再走一步才显现(Next step) | 56 | 31.5% |
| 需要大量后续工作(More work) | 69 | 21.0% |
最后一档 21.0% 已经跌到随机基线(25%)以下。模型在最难的那一档上花掉了最多的推理 token——想得最久的题,恰恰是它最常错的题。
3)加大推理预算没有用。 GPT-5.6 Sol 在 low / xhigh / max 三档上是 56.2% / 55.6% / 56.0%,GPT-5.6 Luna 在 none / high / max 上是 43.4% / 45.8% / 45.6%——从最低档到最高档,两次测试的变化都在噪声内。作者的解释是:那些分叉点上,需要的线索此时此刻根本还不存在,多想无益。这条与”推理档位越高分越高”的通行直觉直接冲突。
4)绕行分叉一致地比并行分叉难。 例如 GPT-5.6 Sol 在并行-工程上 75.8%,在绕行-工程上只有 48.1%;Claude Opus 5 是 71.0% vs 35.3%。“比当时那个 Agent 更早看出它走错了”,比”在两条别人的路里挑一条”难得多——前者需要反事实判断,后者只需要顺着已有信息外推。
5)它测的东西与端到端基准不是同一个。 作者明确指出:在 SWE-bench Verified 上分数相近的模型,在 Taste-Bench 上有明显落差。完成率相近不等于过程质量相近。
6)taste 是可以训练的,而且能迁移到端到端成功率。 用”看得到结局的老师”蒸馏给”只看得到题目的学生”(Qwen3.6-27B + LoRA,79.7M 可训参数):
- 学生在其从未见过的任务折上,准确率从基座 30.0% 提到 47.9%(+17.9pp);
- 把学生在每个分叉点给出的建议注入另一个执行 Agent 的上下文,41 个未见过的 SWE-bench Pro 任务上成功率从 14.6% 提到 33.7%;而”每次建议都正确”的上界是 39.0%——学生吃下了这笔收益的大部分(19.1 / 24.4 pp)。
这条把 Taste-Bench 从一个诊断工具变成了训练信号源。但 41 个任务的下游验证集很小,应带着这个保留读。
局限与读法
- ⚠️ 论文内部存在两套数值,本卡两值并存不判真值:主结果表(Table 5)给 GPT-5.6 Sol 的 xhigh 档是 59.7%,而推理预算消融表(Table 8)同一模型同一档位报的是 55.6%;同一张消融表里 Sol 的 low 档反而是 56.2%,高于 xhigh。两表取样或过滤条件不同,论文未说明。引用本基准的绝对值前请先说明取的是哪张表。
- 标签的定义是「结果更好的那一边」,不是「当时可判断的更优一边」。 hindsight 标注绕开了专家成本,代价是把运气也算进了标签:一个分支最终得分高,可能只是后面的执行更顺。作者靠”只保留结果差异主要由分叉点判断造成的那些分叉”来缓解,但这条过滤不彻底。
- 生成阶段的标签一致性并不高:论文 Table 9 显示,几个生成器模型与最终发布标签的一致率只有 Kimi K2.5 51.7% / Mistral Large 3 59.7% / GPT-4.1 63.7% / Llama 4 Maverick 34.7%。最终标签之所以可信,靠的是后面的过滤 + 人类复核(98.8%),不是生成器本身。
- 502 题、每题二选一,单题信息量小:一个百分点约等于 5 道题。Top 2 之间 0.2pp 的差距不应被读成排序。
- 没有”人类专家”对照行。人类的 taste 是这一基准的隐含参照,但论文没有给出人类在同一批分叉上的准确率,因此 59.7% 只能读作”当前模型的水平”,无法据此断言”模型不如人”。
- topResults 只取前 8 条,GPT-5.4 Mini(40.1)、Mistral Medium 3.5(37.7)、GPT-5.4 Nano(36.6)与 Grok 4.20 Reasoning(15.7,且有 459 次输出不可解析)未列入,详见论文主表。