ByteDance等机构推出HarnessDev基准,测试LLM为Agent构建可运行harness的能力。实验发现6个模型自建harness在写作和ML实验上接近人类水平,但在代码和搜索任务上明显落后,且进化改进中仅34%能在未知任务上泛化。
Agent Harness 是围绕模型的代码:执行循环、工具、上下文、状态、恢复和验证。根据 Terminal-Bench 2.1 排行榜,GPT-5 在 Terminus 2 中解决 35.2% 的任务,但在 Codex CLI 中(相同权重)解决 49.6%。大多数基准测试保持 Harness 固定不变。ByteDance Seed、新加坡科技设计大学、佐治亚理工学院、M-A-P 和 TokenWave.AI 的研究人员团队提出的 HarnessDev 反转了目标:被评估的产物是模型编写的可运行 Harness,而非它产生的答案。
在 Creation 阶段,每个创建者收到相同的弱种子:被动的 file、search 和 process 原语,加上 result 和 trajectory 写入器,没有循环、规划器、验证器、重试或停止规则。未修改时,它在所有地方都得 0 分。创建者获得一个 task-family spec、一个简短的设计教程和 1 到 3 个开发用例,构建一个完整的 Harness,并在隐藏任务之前冻结。
在 Evolution 阶段,创建者从自己冻结的 Creation 代码 Harness 出发,利用固定集合的 100 个 SWE-bench Pro 任务和全部 89 个 Terminal-Bench 2.1 任务的执行反馈进行修订。每个正式候选需要成对完成两个评估,预算为 10 对,两对之间最多 2 次五任务探测。每个正式版本随后在 630 个创建者从未见过的保留 SWE-Pro 实例上评分。
Harness 按能力(任务成功率)和效率(executor token,创建者 token 除外)评分。
测试了 6 个创建者 LLM:Opus 4.8、GPT-5.5、Gemini 3.1 Pro、DeepSeek V4 Pro、Qwen 3.7 Max 和 Seed 2.0 Pro,运行在 Claude Code 2.1.177 内(GPT-5.5 使用 Codex 0.144.3)。Creation 跨越 4 个领域和 5 个基准测试,共 2,207 个实例:SWE-bench Pro 公开划分(731)、Terminal-Bench 2.1(89)、MLE-bench(75)、EQ-Bench3(46)和 BrowseComp(1,266)。每个创建者为每个基准测试构建 3 个 Harness,报告为 avg@3。Self-Eval 使用其创建者运行每个 Harness;Unified-Eval 使用 Gemini 3.1 Pro 运行所有。
在 Self-Eval 下,Opus 4.8 创下最高平均分 67.8,人类工程参考为 86.2。差距因领域而异:
Code:Opus 4.8 在 SWE-Pro 上达到 69.3,参考为 80.0。Gemini 3.1 Pro 在 Terminal-Bench 领先,为 68.8 对 88.8。
Search:差距最大。最佳 BrowseComp 分数是 52.6(GPT-5.5),参考为 92.2。
Writing:Opus 4.8 在 EQ-Bench3 上得分 84.6,高于 83.7 的参考。
ML experimentation:Opus 4.8(32.9)和 Gemini(32.4)击败 24.0 的 MLE-bench 参考。
SWE-Pro、Terminal-Bench 和 BrowseComp 的参考是 OpenAI GPT-5.6 报告的外部结果,不是重新运行。
代码量不能预测质量:18 个代码 Harness 增加了 17,111 净行,但 Gemini 增加最少(1,006)却在 Terminal-Bench 领先。自测次数与分数相关性很低(Spearman 0.13 到 0.26);修订调用达到 0.57。
大量生成的机制是惰性的。108 个代码组件实例中,72 个在真实运行中触发,18 个从未触发,全部是状态和内存。18 个 Harness 中有 11 个定义了 State 类,但在 26,679 条轨迹中没有出现任何检查点事件。587 个写作特性中有 124 个是死代码。
MLE-bench token 使用量大约相差 19 倍。GPT-5.5 获得 19.1% 的奖牌率,消耗 29.3M token;而 DeepSeek V4 获得 19.6%,消耗 208.4M token。将 executor 换成 Gemini 后排名被打乱:Qwen 在 BrowseComp 上获得 17.6 分,在 MLE-bench 上获得 12.9 分;而 Opus 4.8 的 SWE-Pro 分数从 69.3 降到 33.0,部分原因是某个 Harness 围绕其原始 executor 硬编码了 120 步限制。Opus 搜索 Harness 的重复查询率在切换后从 10.1% 跳到 88.2%。
9 个谱系(5 个 self-runtime,4 个 fixed-Gemini)产生了 73 个正式版本和 64 个相邻切换。所有 5 个 self-runtime 创建者在保留任务上都有改进,从 +1.43 到 +4.44 分(平均 +3.11)。在固定 Gemini 下,只有 Opus 改进;GPT-5.5 退步了 10.32 分。
进展不是单调的。64 次切换中,8 次在两个基准上退步,16 次在一个上退步,27 次仅在噪声范围内获得增益,2 次显示明确的正向证据。单次提交的变化大约为 ±4.75 的 pair-score 分。反馈分数和保留分数只在 64 次中的 34 次(53.1%)方向相同,9 个声明的最终版本中只有 2 个是保留最优的。169 个新函数或类中,有 25 个没有任何调用者。
最清晰的胜利:Opus 4.8 发现 100 次运行中有 99 次报告成功,而实际上只有 48 次通过,将其追溯到过早完成,并添加了完成门。失败诊断是 otherwise 最弱的步骤:专门的 trajectory 接口只被调用了两次。
HarnessDev 评估的是模型构建的 Harness,而非它返回的答案。
自建 Harness 在写作和 ML 实验上匹配或击败参考,但在代码和搜索上严重落后。
Harness 质量是 executor 特定的;Opus 4.8 在 Gemini 下 SWE-Pro 从 69.3 降到 33.0。
Evolution 收益很小、嘈杂,只有 64 个变更中的 34 个在保留任务上指向相同方向。
大量生成的状态和内存代码从未执行。
查看论文和项目页面。也请关注我们的 Twitter,别忘了加入我们的 15 万+ ML SubReddit 并订阅我们的通讯。等一下!你用 telegram 吗?现在你也可以加入我们了。
需要与我们合作推广你的 GitHub Repo 或 Hugging Face 页面或产品发布或网络研讨会等?请联系我们。