The Tasteful Agent: Measuring and Improving Taste in Long-Horizon Tasks
Wenbo Pan, Zhichao Liu, Shujie Liu, Jingying Zeng, Chin-Yew Lin, Xianfeng Tang, Yan Lu, Qi He, Xiaohua Jia
cs.AI
2026-09-22
港城大与微软从工程和科研轨迹自动挖出502道长程分叉题,最好模型双序全对59.7%;蒸馏后SWE-bench Pro成功率从14.6%升到33.7%。
长程 agent 跑软件工程或科研实验时,中途选哪条实现、测哪个假设,会决定整趟预算怎么烧。选错当时往往看起来合理,代价在很后面才出现。现有 benchmark 只报任务成不成,不报这些分叉选得对不对。人来标又贵,还跨不了领域。
港城大、独立研究者与微软把这种能力叫 taste:在结果还没出来时,选到后来被证据撑住的那条方向。Taste-Bench 用 agent 已经跑过的轨迹当事后标签,自动出题。
一个 decision fork 是两条尝试在同一前缀后分开的点。前缀、任务、两个中性候选给被测模型,fork 之后全部藏起来。标签来自后来的测试结果或实验分数,好的那边叫 supported candidate。
题从两类轨迹挖。parallel:同一任务多次尝试,一对一过一挂,在分叉处对齐。detour:单次轨迹里 agent 先走死再改道,弃掉的方向对上后来成功的方向。生成器用 GPT-5.6 Sol。过滤两刀:只看两个候选就能猜中的题丢掉;看完全记录后评委还不同意标签的题丢掉。4,657 个候选过完剩 10.8%,得到 502 题:工程 390(SWE-bench Pro 上 GPT-5.4/5.5 的 2,677 条 rollout),科研 112(METR 公开的 MALT 里 RE-Bench / HCAST 的 1,132 条)。
评分故意治位置偏差:每题正反两种候选顺序都要答对才算对,随机猜是 25%。人工抽 100 题,172 个明确 A/B 判断里 170 个与挖掘标签一致(98.8%)。
训练侧把 Qwen3.6-27B 当学生。教师是同一个冻结底座,上下文里多看一眼正确答案的短描述,写出推理和选择;学生只看到题,用 token 级 KL 去对齐教师。工程 390 题按任务切成两折,互不看见对方的源任务。推理蒸馏后再用学生自己的轨迹校准最终选项。
14 个前沿模型,主指标是科研与工程各占一半的 Average。GPT-5.6 Sol 59.7%,GPT-5.5 59.5%,Claude Opus 5 55.5%,Grok 4.5 54.6%。随机基线 25%。detour 题比 parallel 难,这个差距大于工程和科研之间的差距。
时间地平线一拉长,正确率掉:14 模型均值从 in-prefix 的 62.3% 掉到 more-work 的 21.0%,接近乱猜。GPT-5.6 Sol 把推理预算从最低加到最高,正确率变 −0.2 点;Luna 变 +2.2 点。模型在 more-work 题上推理 token 最多,正确率最低。
Taste-Bench Average 与 SWE-bench Verified 的 Pearson r 是 +0.63(R²=0.39);只看工程子集 r=+0.37。Verified 前四名彼此差 4.0 点,Taste-Bench Average 差 10.7 点。
蒸馏后,学生在未见任务上双序全对 47.9%,底座 30.0%,高出 17.9 点。41 个留出 SWE-bench Pro 任务上,固定 Qwen3.6-27B 执行器无建议成功率 14.6%,学生建议 33.7%,全对建议上限 39.0%。这些 fork 来自这些任务更早的 run,建议在新 run 开始前就写进上下文,执行器自己跑完。
SWE-bench 分接近的模型,在分叉判断上能差出十几个点。加推理预算几乎不动这块,缺的是事后证据,不是当下算力。对训 agent 的人,轨迹本身就是监督:教师看结局,学生看分叉,LoRA 两小时一块 A100。
可落地的用法是顾问模型:执行器不变,把分叉判断写成「别走这条、走那条」。41 个任务上 19.1 个点不是小数字,但实验形态是旧轨迹挖出的 fork 当建议,不是在线识别正在发生的分叉。
标签把判断和执行质量、环境噪声捆在一起,过滤只能去掉明显对不上的题。科研格只有 112 题、来自 47 个任务,parallel research 只覆盖 8 个任务,方差会很大。出题生成器是 GPT-5.6 Sol,它自己又是榜上第一,过滤用了别的评委,仍有出题模型偏置。端到端实验的建议来自旧 run 挖出的 fork,新 run 未必会走到同一个分叉,也没有活体检测 fork 这一步。教师在蒸馏时见过正确答案,泄漏靠结构约束(闭式二选一、输出不含示范原文),没有外部探针证明零泄漏。论文没有单独的 Limitations 节,上述缺口要靠实验设置自己读出来。