HarnessOpt-Bench:评测大语言模型的智能体线束优化能力 HarnessOpt-Bench: Evaluating LLMs at Harness Optimization
首个衡量 LLM 在固定预算下迭代优化智能体线束的基准,揭示了模型差异大于工具差异
前置知识
智能体线束(Agent Harness)
线束是包裹在大语言模型外层的整套程序代码,包括提示词(prompt)、工具定义(tool schema)、控制流(control flow)、上下文与记忆管理(memory)以及调用模型的编排代码(orchestration)。同一个底座模型在不同线束下会展现出截然不同的能力。线束优化就是让一个 AI 系统在有限的评测预算内,迭代地、依据评测反馈地改进这套外层代码,从而提升智能体在目标任务上的表现。它是衡量模型能否'改造别的智能体'的关键能力。
本文的全部工作都是围绕'线束'这一概念展开的,不理解线束是什么、它如何决定智能体表现,就无法理解本文为何把优化线束视为一种独立的、值得评测的前沿能力。
标准化增益(Normalized Gain)
因为不同任务的评分尺度不同,原始的提升幅度无法跨任务比较。本文定义标准化增益 $g = \frac{E_\theta(H^+) - E_\theta(H_0)}{1 - E_\theta(H_0)}$,其中 $H_0$ 是固定的种子线束、$H^+$ 是优化器最终提名的候选线束、$E_\theta(\cdot)$ 是在留出测试集上的期望得分。分母 $1 - E_\theta(H_0)$ 是种子线束距离满分(1.0)的'提升空间',因此 $g$ 表示优化器捕获了多少比例的剩余空间。$g<0$ 意味着提名的候选甚至比种子更差。这一指标使四个不同任务的结果落在可比的'提升空间单位'上。
标准化增益是贯穿全文的唯一主指标,Table 1 与 Figure 2、3、4、5 都基于它。掌握它的定义和留出评测逻辑,才能理解后续所有模型对比与结论。
留出评测与信任执行边界(Held-out Evaluation & Trusted Execution)
为防止优化器'刷分'而非真正改进泛化能力,数据被切成互不重叠的开发集 $D_{dev}$、验证集 $D_{val}$ 和测试集 $D_{test}$。开发集对优化器完全透明(含每条样本的得分与执行轨迹),验证集只暴露聚合分数用于选择候选,而测试集在搜索全程对优化器不可见,只有当优化器提交最终候选后,才由独立的信任服务器评测。信任执行边界还强制执行预算、隔离留出状态、为每个候选版本做审计留痕,并通过模型网关对优化器和被测智能体的每次模型调用施加白名单与 token 上限。
这套受信评测机制是本文区分于以往工作的核心,正是它把'优化器模型''编码线束''目标智能体'三者的贡献解耦,使三个研究问题(RQ1/RQ2/RQ3)变得可回答。
LSS-λ 跨任务模型评分(Composite Model Score)
为了在共享线束、平衡网格上得到一个跨任务的模型分数,作者把每个模型-任务的增益 $\bar{g}_{mt}$ 分解为 $\bar{g}_{mt} = \mu + \tau_t + \lambda_m + \epsilon_{mt}$,其中 $\tau_t$ 吸收任务级差异、$\lambda_m$ 是模型效应(约束 $\sum_t \tau_t = 0$ 与 $\sum_m \lambda_m = 0$)。因为网格是平衡的,模型效应的估计为 $\hat{\lambda}_m = \frac{1}{|T|}\sum_t \bar{g}_{mt} - \frac{1}{|M||T|}\sum_{m'}\sum_t \bar{g}_{m't}$。LSS-λ 定义为 $\text{LSS}_\lambda(m) = \hat{\lambda}_m$,即模型相对于参评模型总体平均的、任务调整后的平均表现,以标准化增益为单位,越高越好。
Figure 2 右图与 RQ1 的核心论断(模型差异大于线束差异)直接来自 LSS-λ 的估计,理解它才能读懂作者如何把多维结果压成一个可比较的模型排名。
编码线束与优化器配置(Coding Harness & Optimizer Configuration)
优化器本身是一个'模型 + 编码线束'的组合。编码线束是编码智能体用来改写目标线束代码的那套工具与交互界面。本文固定使用一个共享编码线束 opencode,让所有模型在相同脚手架下公平比较;同时让每个模型也跑在各自的'原生'编码线束上(Claude 用 claude-code、GPT 用 codex、Kimi 用 kimi-cli)。'优化器配置'指一个模型-线束对,核心网格共 10 个配置。这种成对设计能分离'模型本身的能力'与'它所依托的编码工具'两个因素。
本文最反直觉的结论之一就是'原生线束没有稳定优势''模型差异大于工具差异',这些都建立在区分编码线束与优化器模型这一设计上,是读懂 RQ3 的前提。
研究动机
随着大语言模型越来越多地以'智能体'形式部署,其表现不仅取决于模型权重,还取决于包裹它的线束——提示词、工具、控制流、记忆与编排代码。同一个模型在不同线束下能力差异巨大,因此'线束优化'(在固定预算下、依据评测迭代改进线束)正成为构建强 AI 系统的重要途径,同时也是对 AI 系统自身的一项高要求能力。然而社区此前没有一个通用协议来衡量前沿 LLM 在这一任务上做得有多好:各家方法(VERO、MetaHarness、ShinkaEvolve、GEPA、DSPy、ADAS、AFlow 等)用各自的目标智能体、种子、预算、披露策略和打分协议来评测,结果把'优化器模型''它所依托的编码线束''目标智能体''评测协议'四者的贡献混为一谈,无法横向比较。此外,线束优化的反馈是昂贵且随机的——一次改动的效果必须靠在多条样本上反复运行随机智能体来估计,这使它本质上不同于廉价的单元测试,对推理、预算分配和'信号与噪声的分离'都提出了更高要求。
本文的目标是本文的目标是为'线束优化'建立一个可复现、可比对、防作弊的评测基准 HARNESSOPT-BENCH,使优化器模型、编码线束与搜索算法能在同一道场下被公平比较,从而把线束工程从'每个方法各自演示'变成'一个可衡量、可开发的评测对象'。具体地,作者希望回答三个研究问题:RQ1 前沿模型在此任务上能否被区分;RQ2 它们在哪里不足;RQ3 优化器自带的编码线束相对于模型本身贡献多大。为此基准要固定目标模型、环境与验证器,把最终评测全程留出,并用信任执行边界强制预算、隔离状态、留痕审计。
与已有工作不同的是,本文的独特切入角度有三点。其一,它不关心'廉价的提示词搜索',而是专门瞄准评测本身昂贵且带噪声的任务(固定语料研究、终端使用等),这正是未来系统优化最棘手也最现实的场景。其二,它通过固定目标三元组 $\theta=(M,E,V)$、留出测试集与信任执行边界,首次把以往被混为一谈的四个因素解耦,使'换模型''换工具'的效果可单独测量。其三,它采用成对设计——让每个模型既跑共享编码线束 opencode、又跑各自的线束——直接检验'原生工具是否更优'这一普遍假设。这套组合在此前任何单一工作(VERO、MetaHarness 等)中都不存在。
核心方法
整体思路是:把'线束优化'形式化为一个约束随机程序优化问题,然后构建一套受信交互协议让任意优化器进入,最后用平衡网格实测。直觉上,优化器像一个'代码医生':它拿到一个故意没调好、留有明显改进空间的种子线束 $H_0$(例如 OfficeQA 的约 130 行、三工具、24 轮循环的朴素智能体),可以编辑代码、可以在开发集/验证集上有限次'试药'(每次评测都会消耗预算),最终提名一个候选 $H^+$;一个独立服务器再在它从没见过的测试集上打分,并用标准化增益 $g$ 衡量它捕获了多少提升空间。技术路线上,基准固定了任务三元组 $\theta$、预算向量 $B$(开发/验证各 100 次评测调用、各 4 个完整 case 通过,外加目标模型 token 上限)、披露策略 $\pi_D$(开发集给完整轨迹、验证集只给聚合分、测试集完全沉默),并通过沙箱隔离、模型网关与版本审计强制执行。作者据此跑了 4 个下游任务、5 个前沿优化器模型、2 类编码线束,共 111 次带分评测。
核心创新点不是某个优化算法,而是把'线束优化'确立为一个可隔离变量、可复现的评测对象。与已有方法的本质区别在于'把对照实验做对':第一,固定目标模型、环境、验证器,使候选之间的差异只能来自线束本身而非评测漂移;第二,最终评测全程留出,迫使提升来自泛化而非对可见分数的拟合;第三,信任执行边界把'不许越界'从一句口头约束变成执行环境的物理属性(留出数据、凭证与预算执行都不在优化器沙箱内),杜绝作弊;第四,成对的共享线束 vs 原生线束设计,使'模型效应'与'工具效应'可被分别估计(这是本文最巧妙的设计)。在此框架下,任何满足接口、遵守预算、编辑种子并提名候选的系统都能参赛,基准对优化器设计是中立的。
方法步骤详情
流程遵循 Algorithm 1。输入种子 $H_0$、三元组 $\theta=(M,E,V)$、预算 $B$、披露策略 $\pi$。第 1 步初始化候选集 $C=\{H_0\}$。第 2-7 步搜索循环:只要累计成本 $\sum_j c_j\le B$ 且尚未提名,优化器要么提交新候选 $H'\in\mathcal{H}$ 加入 $C$,要么选已有候选 $H\in C$ 与样本批 $Q$ 调用评测算子 $F_\theta(H,Q)\to(\hat s,\varphi)$,再按 $\pi_D$ 观察输出——开发集 $Q\subseteq D_{dev}$ 暴露输入、每例结果与轨迹以诊断,验证集 $Q\subseteq D_{val}$ 只给聚合分以选择,测试集全程沉默。第 8 步提名 $H^+$;第 9 步信任服务器在 $D_{test}$ 评测;第 10 步报告 $g=\frac{E_\theta(H^+)-E_\theta(H_0)}{1-E_\theta(H_0)}$。基线与候选均用 $K=3$ 轮独立重复取均值并钉死,每任务估出'分辨率带',小于带视作不可分辨。预算 $B$ 含开发/验证各 100 次评测调用与各 4 个完整 case 通过,外加目标 token 上限。实测网格为 5 个模型×4 个任务各跑 2 次,加 GAIA 上的 goose、mini-swe-agent 两个额外线束,以及 Claude Opus 与 GPT 5.x 两家族在 OfficeQA 上的多代对比,共 111 次带分评测。
技术新颖性
技术新颖性集中在三点。其一,评测隔离设计:通过固定 $\theta$、全程留出测试、信任执行边界三者合用,本文首次让'优化器模型''编码线束''目标智能体''协议'可被解耦,从而把 RQ1/RQ2/RQ3 变成可回答的问题——以往工作做不到这点。其二,受信执行基础设施:每个优化器在独立沙箱中只能写目标线束、只能读评测结果与任务数据,每次模型调用(优化器自己的和被测智能体的)都过网关强制白名单与按作用域的 token 预算,每个候选都版本留痕供审计,这把'防作弊'从约定变成了系统的物理属性。其三,平衡成对设计:共享线束 opencode 对所有模型固定、再叠加各模型原生线束,使作者能定义并估计 LSS-λ 来量化'模型效应 vs 工具效应'。这套基础设施与协议在 VERO 之上扩展,并贡献了一整套种子已钉死、划分不重叠、披露分级的优化任务套件。
实验结果
核心发现分四组。第一,模型差异大于工具差异(RQ1/RQ3):固定任务与线束只换模型,增益平均移动 0.142;只换线束仅 0.079,模型对比约是工具对比的 1.8 倍,二者均超任务分辨率带(OfficeQA ±0.045、GAIA ±0.035)。最强 claude-opus-5+opencode 在 OfficeQA 拿 0.63、BrowseComp-Plus 拿 0.48;最弱 gpt-5.6-terra+codex 在 BrowseComp-Plus 与 Terminal-Bench 上与零不可分辨,中间配置常落在轮间波动内,支持'分层'而非'精细排名'。第二,模型进步可被分辨(5.2 节):5 代 GPT 在 OfficeQA 增益从 +0.03 单调升到 +0.49(4 步里 3 步超带),5 代 Claude Opus 在 +0.37 到 +0.59 间首末差也超带。第三,搜索广度关联增益(5.3 节):搜索中触碰 8 个线束杠杆的比例与增益正相关,Spearman $\rho$ 从 +0.34(GAIA) 到 +0.88(OfficeQA),是唯一四任务同向的流程指标;读轨迹占比则与增益负相关(−0.31 到 −0.64)。预算上中位优化器只用 8 次调用(4%)却消耗 82% 的 case 配额,100 格中 55 个耗尽某分区 case 配额,说明'case 通过数'是真瓶颈。第四,原生线束无稳定优势(5.4 节):20 对中共享线束赢 11、原生赢 9;GAIA 上两 GPT 在 codex 下比最佳共享线束好 +0.179、+0.131(约 4-5 个带),两 Claude 与 Kimi 都在零附近一两个带内,优势高度集中。多数格子的提交候选测试分低于搜索中最佳验证分,验证分偏乐观。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| OfficeQA(共享 opencode 线束,标准化增益) | normalized gain g(越高越好,分辨率带 ±0.045) | claude-opus-5 0.63(最高) | gpt-5.6-terra(opencode) 0.14(最弱共享配置) | 最优模型约为最弱的 4.5 倍,且远超分辨率带 |
| GAIA(种子为不可用 stub,增益=原始留出分) | normalized gain g(分辨率带 ±0.035) | gpt-5.6-sol+codex 0.49、claude-opus-5+opencode 0.47 | gpt-5.6-terra+opencode 0.17 | GPT 模型在原生 codex 下比共享线束高约 +0.18(4-5 个带) |
| GPT 5 代发布在 OfficeQA 上的能力阶梯 | 标准化增益 g(带 ±0.045) | 从 +0.03 单调升到 +0.49 | 最早发布版 +0.03 | 4 步中有 3 步超过分辨率带 |
| 搜索广度 vs 增益(8 个线束杠杆) | Spearman ρ(按任务分别计算) | ρ = +0.34 (GAIA) 到 +0.88 (OfficeQA/BrowseComp-Plus) | 读轨迹与增益负相关 ρ ∈ [−0.64, −0.31] | 搜索广度是唯一在四任务上方向一致的正向流程指标 |
局限与改进
作者承认若干局限。其一,基准'抗作弊'但非'不可作弊':留出数据、凭证、预算执行虽不在优化器沙箱内,但反复的开发/验证反馈仍可能奖励针对固定评测器特定伪迹的策略。作者建议未来版本对 case、工具行为、验证器实现引入每轮抖动,以区分'真泛化'与'对稳定伪迹的利用'。其二,种子线束本身是任务相关的先验:改进成熟智能体测的是'诊断与精修',从 stub 起步测的是'构造',套件两种都有,但没有系统化变化种子复杂度,因此 LSS-λ 应相对当前的任务/种子分布来解读。其三,候选被限制为 Python、每个任务只用一个钉死的目标模型,对其他语言、运行时、智能体架构与目标模型的泛化未经验证。此外需补充:111 个格子虽多,但每配置仅 2 轮重复,中间配置之间的差异常落在轮间波动内;LSS-λ 的分解假设了加性效应 $\bar{g}_{mt}=\mu+\tau_t+\lambda_m+\epsilon_{mt}$,模型-任务交互被吸收进残差,强交互(如 GAIA 上 GPT×codex)会偏离该分解;多数结论以'方向性关联'(ρ、均值对比)呈现而非显著性检验,作者也明确声明分辨率带只是描述性阈值。
独立分析的弱点
独立看,本文有几处值得改进。第一,重复轮次偏少(每配置 2 轮),导致中间梯队的排名不可靠——可把每配置重复提升到 5 轮以上并报告 bootstrap 置信区间,或对关键边界(如 sonnet-5 vs kimi-k3)做针对性加密。第二,种子复杂度没有系统扫过,使 LSS-λ 强依赖于当前种子分布——改进方向是构造一条'种子完整性/架构复杂度阶梯',看优化器性能如何随先验强度变化(作者自己也提到了这点)。第三,优化器自身推理 token 被计量但未设上限,结果偏向'推理不是稀缺资源'的设定;现实中推理成本不可忽略,应把优化器 token 也纳入预算 $B$,给出'等计算'下的比较。第四,任务覆盖偏窄(仅 4 个、均 Python、各一个目标模型),难以外推到多语言/多架构——应增加非 Python 线束与多个目标模型。第五,对'搜索广度→增益'只给相关性,无法区分是'广度本身有用'还是'广度与修改总量共线'(作者承认这两者相关),需要消融来分离广度与总修改量。第六,'验证分偏乐观'的归因未拆开——可设计实验区分选择过拟合与验证-测试分布失配。
未来方向
作者明确提出的方向包括:对 case、工具行为与验证器实现引入每轮抖动以区分泛化与利用伪迹;构建种子完整性与架构复杂度的受控阶梯,揭示优化器性能如何随先验强度变化;扩展到更多语言、运行时、智能体架构与目标模型;在匹配计算条件与增加重复后,把 HARNESSOPT-BENCH 发展为对工具集成推理的全面度量。基于本文成果可延伸的研究还有:把优化器自身推理 token 纳入预算向量 $c_j$,研究'等计算预算'下的最优搜索策略;用本文的轨迹级数据训练一个'搜索策略预测器',预测何种杠杆组合最可能带来增益;把'线束优化'与'线束合成(从 stub 构造)'放在同一谱系上量化,明确 GAIA 这类从零起步任务与 OfficeQA 这类精修任务的相对难度;以及探索非加性的模型-任务交互建模,替代当前的 LSS-λ 线性分解,更稳健地处理 GAIA 上 GPT×codex 这类强交互。
复现评估
复现性总体较强但有门槛。作者钉死了每个任务的种子 $H_0$、基线 $E_\theta(H_0)$($K=3$ 轮均值)、目标模型,以及不重叠的开发/验证/测试划分,披露策略 $\pi_D$ 与预算向量 $B$(各分区 100 次调用、各 4 个 case 通过、目标 token 上限)都写明,评测在隔离沙箱中进行并版本留痕,理论上任何满足接口的系统都能参赛。基础设施基于 VERO 扩展,信任执行环境、模型网关、预算计量都有描述。但复现成本极高:111 个带分运行、每个测试候选要 $K=3$ 次/case 重复评测,叠加 5 个前沿模型的优化器推理(作者声明推理 token 被计量但未封顶),算力与 API 花费巨大;论文提到把 token 用量作为一等指标但正文未给出具体数字,难以精确估算成本。Appendix A(Table 2/3)补全了运行范围与种子对比开源线束的细节,是复现的关键依据。挑战主要在工程上重建信任沙箱与网关,而非数据缺失。
论文图表