Coding Agent Harness 三要素消融实验:固定模型换 Harness 精度翻倍 · 干货攻略

  • 链接: https://arxiv.org/abs/2609.20804
  • 分类: x-tips
  • 来源: X @_akhaliq
  • 作者: Jay
  • 更新: 2026-10-10
  • 仓库: 无(arXiv 论文,非开源仓库)

这是什么

An Empirical Study of Harness Design for Coding Agents(Run-Ze Fan 等,UMass Amherst / Emory / UNC Charlotte / Zoom,arXiv:2609.20804,2026 年 9 月 17 日)是目前最系统的 Coding Agent Harness 消融实验。

它没有去比较不同开源 Harness(OpenHands vs SWE-Agent vs Claude Code),而是从零搭了一个模块化 Harness,固定执行循环,然后分别替换三个核心组件:

组件 具体内容 消融方式
Planning(规划脚手架) update_plan 工具让模型在轨迹中维护任务计划 开 / 关
Action Space(行动空间) 预定义工具集(read_file / write_file / edit_file 等 8 个)vs 纯 bash 二选一
Context Management(上下文管理) 5 种策略 × 4 种 context-window 预算(32k/64k/96k/128k) 交叉测试

测试模型:Nemotron-3-30B / 120B / 550B(NVIDIA 家族能力轴)+ Mistral-Medium-3.5-128B(跨家族对照)。 测试基准:SWE-Bench Verified(500 个真实 GitHub issue)+ Terminal-Bench 2.1(89 个命令行终端任务)。 总计 176 个匹配实验配置。


为什么值得关注

谁分享的

@_akhaliq 长期追踪 AI 论文与开源工具,是 X 上硬核 AI 技术信号最集中的账号之一。这次分享的是一个 系统性消融研究,而非某公司的产品发布——它的价值在于给出因果结论而非相关性。

解决什么问题

当前行业有一个普遍误解:模型强 = Agent 强。实际上,同一个模型在不同 Harness 下跑,精度差可达 30pt 以上(FineEnvs 的数据);本文用控制变量法把差距拆解到具体组件级别,告诉你是哪个组件在哪种场景下起作用。

核心问题:当你抱怨模型"不够聪明"时,到底是模型的问题,还是 Harness 的问题?

四个核心发现(全部来自论文原文)

发现 1:Context 管理在 context window 紧张时价值最大

当 context window 只有 32k 或 64k 时,没有上下文管理的 T0 基线大量任务因 context overflow 而提前终止。Context 管理的收益主要来自防止这种"溢出失败",而非提升模型本身的能力。当 context window 扩大到 128k 时,管理策略的精度收益就大幅缩减了。

论文原文(Section 4.1):"Context management becomes increasingly valuable as the context-window budget tightens, with most of its benefit coming from preventing context-overflow failures."

发现 2:T4 策略(先 elision 再 summarization)效率最高;Recall 机制几乎没人用

T4 = 先用规则删掉过期工具输出(elision,M1),超过硬阈值后再调用 LLM 做 summarization(M3)。T2 加了 recall_event 把被删内容存到外部存储使其可恢复——但实验显示模型几乎不主动召回,没有精度提升,徒增复杂度。

论文原文(Section 4.2):"Staging rule-based elision before LLM-based summarization provides the strongest overall efficiency among the context-management strategies. Recall mechanism is rarely invoked and yields no accuracy gain."

发现 3:Planning 从弱模型的精度脚手架,变成强模型的成本节省器

  • 弱模型(如 Nemotron-3-30B):开启 Planning 后任务轨迹变长,有更多机会尝试修改代码,精度提升,但 cost 上升。
  • 强模型(如 Mistral-Medium-3.5-128B):开启 Planning 主要省掉重复的后编辑验证步骤,cost 下降,精度变化极小。

论文原文(Section 4.3):"Planning shifts from an accuracy scaffold for weaker models to a cost saver for stronger models, with little change in accuracy."

发现 4:预定义工具 vs 纯 bash——取决于模型本身会不会 bash

  • Bash 弱的模型:预定义工具集(read_file / write_file 等)显著提升精度,因为不需要靠 bash 命令操作文件。
  • Bash 强的模型:纯 bash 接口效果相当,但 cost 大幅降低(尤其是命令行密集的 Terminal-Bench 任务)。

论文原文(Section 4.4):"Predefined tools improve performance for models with weaker bash proficiency, whereas bash-capable models can operate effectively with a bash-only interface and achieve substantially lower cost."


核验过程

官方来源

  1. arXiv abstract 页(https://arxiv.org/abs/2609.20804):获取了摘要、作者团队、提交时间、论文定位。
  2. arXiv HTML 全文(https://arxiv.org/html/2609.20804v1):获取了 Introduction(研究动机)、Section 2(Harness 设计细节:T0-T4 策略定义、Planning 机制、Action Space 工具表)、主要发现描述。核心引文与摘要完全一致。
  3. DAIR.AI Academy 摘要页(https://academy.dair.ai/papers/an-empirical-study-of-harness-design-for-coding-agents-2609.20804):第三方整理,确认了四项核心发现与原文一致。

交叉验证

  • LangChain 博客(2026 年 2 月):LangChain 团队仅换 Harness,Terminal-Bench 2.0 从第 30 名进到第 5 名,与本文"换 Harness 可带来大幅度独立收益"的结论方向一致。
  • Faros "Harness Engineering: A Guide to AI Coding Agents"(2026 年 5 月/7 月更新):确认了"Harness 是 Agent = Model + Harness 中独立于模型的那一半"这一定价框架,与本文实验设计哲学吻合。
  • Augment Code "Harness Engineering for AI Coding Agents"(2026 年 4 月/6 月):引用 Mitchell Hashimoto 2026 年初的定义,与本文背景描述一致。

⚠️ 未核验项

论文报了具体数字(Nemotron-3-30B 在 32k budget 下 T0 溢出率、X 模型精度对比具体差值)但 HTML 格式未完整展示所有图表数值,攻略中的百分比描述均基于摘要/引言的定性描述,非精确数字,已在文中标注为来自原文定性结论,非精确数值。


上手步骤

实验框架速览

ReAct Loop(固定)
├── Planning(开/关)
├── Action Space(预定义工具 vs 纯 bash)
└── Context Management(T0/T1/T2/T3/T4 × 32k/64k/96k/128k)

Context 管理五种策略

策略 说明 适用场景
T0 无任何管理,context 满就终止 大 context window + 短任务
T1 过期工具输出直接 elision(删除) 中等预算
T2 T1 + elision 内容存入外部存储,可 recall 原帖主张有收益,实验证明无收益
T3 全量 LLM summarization 高预算,质量优先
T4 先 T1 elision,超硬阈值后 T3 summarization 推荐默认:效率最高

Planning 决策规则

if 模型 in [Nemotron-3-30B]:  开启 Planning(精度收益 > 成本)
elif 模型 in [Mistral-Medium-3.5, GPT-5 class]:  关闭 Planning 或仅在 cost-critical 时开启

Action Space 决策规则

if 模型 bash 能力强(如 Claude Code 级别):
    使用纯 bash 接口(成本大幅降低)
else:
    使用预定义工具集(read_file, write_file, edit_file...)

评估基准说明

  • SWE-Bench Verified:500 个人工筛选的真实 GitHub Python issue,评测 repo 级代码修改能力。
  • Terminal-Bench 2.1:89 个端到端命令行任务(搭 web 服务器、管理系统包等),评测 agent 在真实 shell 环境的泛化能力。

坑与适用边界

⚠️ 本文结论的边界

  1. 只在代码任务上验证:SWE-Bench + Terminal-Bench 都是软件工程类任务,不一定能推广到 QA、写作、多模态 Agent。
  2. 模型范围有限:主要测了 NVIDIA Nemotron 家族和 Mistral,没有测 Claude/GPT 系列(后者通常被作为 Harness 本身的一部分而非研究对象)。
  3. T4 是效率最优,非精度最优:论文说 T4 在效率(accuracy/cost)上最强,不是说它精度最高。极端精度优先场景可能要单独评估。
  4. Recall 机制无收益的结论是群体统计结论:个别模型/任务可能受益,不排除特殊情况。

实践建议

  • 先测 Harness 再换模型:如果当前任务精度不够,先换 Harness(尤其是加上 Context 管理),看是否解决问题,再考虑换模型。
  • 不要盲目抄最先进的配置:强模型 + 强 Planning 反而 cost 更高;弱模型关 Planning 精度骤降。
  • T4 是工程上最推荐的默认策略:elision 处理高频溢出,summarization 处理极端情况,recall 机制可以先不加。

一句话结论

Coding Agent 的性能瓶颈未必在模型——固定模型、换上文管理的 Harness,精度可以独立提升数十个百分点;其中 T4(先 elision 再 summarization)+ 按模型强度选择 Planning 开/关,是最具性价比的通用配置。


参考链接

  • 论文:https://arxiv.org/abs/2609.20804(arXiv:2609.20804,2026-09-17)
  • 论文全文(HTML):https://arxiv.org/html/2609.20804v1
  • DAIR.AI 摘要页:https://academy.dair.ai/papers/an-empirical-study-of-harness-design-for-coding-agents-2609.20804
  • X 原帖(@_akhaliq 分享):https://x.com/_akhaliq/status/2101020560964866103
  • LangChain Harness Engineering 博客:https://www.langchain.com/blog/improving-deep-agents-with-harness-engineering
  • Faros Harness Engineering Guide:https://www.faros.ai/blog/harness-engineering