Harness-R1 把 harness 修补训练成一个 9B 模型的专门能力:从 failure packet 生成 lifecycle-wide patch,再用冻结 target agent 的真实重跑收益做 GRPO。本文区分训练目标、四个 hooks、迁移结果与同批奖励的局限。
Q1. 为什么要专门训练一个 harness engineer?
论文把“读失败—改 runtime—重跑验证”从一次性 prompt 技巧变成可训练策略。通用 frontier editor 有时能写出好 patch,也会把已有能力改坏;固定规则又不能从新失败中学习。Harness-R1 用单独的 Qwen3.5-9B engineer 学习什么失败该改、改哪个生命周期位置、什么代码才会带来真实任务收益。
Q2. 它与 Self-Harness、HarnessFix 和直接微调 target 有什么不同?
它的独特之处是在线强化学习直接奖励 patch 后的 target-agent 成功率。Self-Harness 用同一个模型提出并筛选自己的修改;HarnessFix 先构造 HTIR 做结构化诊断;直接 SFT target 则更新任务模型权重。Harness-R1 不碰 target weights,而是训练另一个模型编辑四个 runtime hooks。
因此结果要解释为“学习到的工程师对冻结 target 的增益”,不是 target model 本身更聪明。论文也展示 target 做过 SFT 后,专门 engineer 仍能继续增益,指向 model 与 harness 两条更新轴。
Q3. failure packet 如何变成可执行 patch 和在线奖励?
每个 failure packet 包含失败轨迹、环境反馈和当前 harness;engineer 输出四处 hook 的补丁。它们分别是 on_init、make_pre_hint、on_before_action、on_post_step,覆盖初始化、决策前提示、动作前守卫和动作后反馈。
- SFT877 个冷启动例:WebShop 381、ALFWorld 248、DBBench 248。
- SAMPLE每个 packet 采样 8 个 patch。
- VALIDATE必须可解析、可安装、能完成完整 rerun;no-op 与不完整 patch 奖励为 0。
- REWARD比较同一完整 batch 修补前后的 realized success,再做 GRPO。
这个奖励路径很实在,却也是最关键的边界:patch 直接针对产生 failure packet 的同一 batch 优化,是 transductive objective;训练目标没有单独惩罚 held-out regression 或推理成本。
Q4. 三个环境与迁移实验支持多强的结论?
在三个训练环境上,vanilla Qwen3.5-9B 从 44.3% 提到 53.6%,增加 9.3 个百分点;target 先 SFT 后再修 harness,则从 59.2% 到 64.2%。在 20 个 unseen targets 上平均 +7.06 pp,21×3 个 model-environment 配对中 56/63 改善。只给稀疏失败的 1,270 个 held-out tasks,提升为 +8.9±1.5 pp,而两个 frontier editor 的平均改动为负。
patch 具体改了什么?
WebShop patch 在颜色未选择时阻止 Buy Now;ALFWorld 组合 stage state、hint 与 placement guard;DBBench 保留 verifier 需要的 4 Hours 大小写。相反,一个 Gemini patch 把 ALFWorld 从 41.6% 降到 35.4%,说明“能写合理代码”不等于行为会改善。
ablation 显示 pre-action 与 post-feedback 最重要,但贡献随环境变化,不能相加成一条普遍排序。
Q5. 下一步怎样避免同批过拟合与回归?
应把奖励从 same-batch delta 扩展成 train gain、held-out non-regression 与运行成本的多目标函数。每个 patch 应在相邻任务和不同 seed 上重放,并设置自动 rollback。还需要研究 engineer 是否迁移到不同 hook API、不同 target model 和更大代码库。
官方仓库可访问,本文固定核验 commit 94f2e087…;模型权重也公开。可复现性优于只给论文的工作,但在线 RL 的完整计算成本和跨版本依赖仍需谨慎记录。
Q6. 最后怎样评价 Harness-R1?
Harness-R1 的贡献不是“RL 又赢一次”,而是把 executable patch 的真实后果接回训练环。证据表明专门化 engineer 比通用一次性 editor 更稳定;但同批奖励仍可能鼓励局部修补,尚不能证明它学会了普遍的软件维护能力。
主要来源:论文全文与附录、arXiv v1 元数据;代码或项目页于 2026-10-08 核验。固定来源状态:94f2e087f573e1b82fc9568bb634d4ae9a887e28。
留言