@dair_ai:来自 Microsoft 及其合作者的出色工作。这篇文章关注的热门新话题是 harness 与模型的协同演化。(收藏)

X AI KOLs Timeline 论文

摘要

一篇微软研究院等机构的论文提出 Self-HPO,一种交替优化 harness 与策略模型的递归自我改进框架,将 Qwen3.5-35B-A3B 在三个编码基准上的平均解决率从 57.8% 提升到 64.8%,且联合增益超过各自增益之和。

来自 Microsoft 及其合作者的出色工作。 这篇文章关注的热门新话题是 harness 与模型的协同演化。 (收藏一下) 他们通过交替优化两者,将 Qwen3.5-35B-A3B 在三个编码基准上的平均解决率从 57.8% 提升到 64.8%。 在每一轮中,策略模型会阅读自己的失败案例并提出 harness 修改建议。随后,它在自己选定的 harness 下接受 RL 训练。训练过程中仍然难以解决的任务,则成为下一轮 harness 搜索的候选集。 联合增益大于仅优化 harness 的增益与仅优化策略的增益之和。每个优化后的部分在与另一部分的原始版本搭配时,也能保持各自的改进效果。 在同一循环中使用 Opus 4.8 作为 harness 提议者,还能在此基础上带来额外增益,这使得该方法成为一种切实可行的途径——将前沿模型对 harness 的判断能力迁移到更小的策略模型上。 https://arxiv.org/abs/2610.22791 Chat with Paper: https://academy.dair.ai/papers/self-evolving-coding-agents-via-harness-policy-optimization-2610.22791…
查看原文
查看缓存全文

缓存时间: 2026/10/21 16:34

微软与合作者的优秀工作。这篇论文关注的是当前热门的新方向——让 harness 与模型共同进化(值得收藏)。他们通过交替优化这两者,将 Qwen3.5-35B-A3B 在三个编程基准上的平均解决率从 57.8% 提升到 64.8%。在每一轮中,策略模型会阅读自身的失败案例,并提出 harness 改进方案,然后在选定的 harness 下通过强化学习进行训练。训练过程中仍然难以解决的任务,会成为下一轮 harness 搜索的任务集。两者联合优化的增益,大于仅优化 harness 与仅优化策略模型的增益之和。此外,每个优化后的组件与另一组件的原始版本配对使用时,仍然能保持各自的增益。在同一流程中使用 Opus 4.8 作为 harness 提议器,还能在此基础上进一步提升性能,这意味着这是一种将前沿模型的 harness 判断力迁移到较小策略模型的实用方法。https://arxiv.org/abs/2610.22791 论文对话:https://academy.dair.ai/papers/self-evolving-coding-agents-via-harness-policy-optimization-2610.22791…


通过 Harness-策略优化实现自进化编程智能体

来源:https://arxiv.org/html/2610.22791

Zhepei Wei††脚注:该工作在 Microsoft Research 实习期间完成。 Wenlin Yao 单位:Microsoft Research Baolin Peng 单位:Microsoft Research Danqing Wang 单位:Carnegie Mellon University

https://github.com/MSR-Orchard/Self-HPO

Qianhui Wu 单位:Microsoft Research Hao Cheng 单位:Microsoft Research Yu Meng 单位:University of Virginia Jianfeng Gao 单位:Microsoft Research

摘要

大语言模型(LLM)智能体在编程任务中展现出巨大潜力,其性能由策略模型(policy model)和 harness 共同决定——harness 是模型与环境交互的中间层。事实上,harness 与策略模型是相互促进的,仅优化其中一个组件并非最优策略:为某个检查点调优的 harness 可能无法针对更新后策略模型的失败模式,而策略模型的学习也受限于固定 harness 所引导出的轨迹。基于此,我们提出 Self-HPO,一种面向编程智能体的递归自改进框架,交替进行 harness 优化和策略优化,并以不断进化的策略模型作为自身的 harness 提议器。具体而言,在每一轮中,当前策略模型首先分析自身的失败案例,并提出新的 harness 候选方案(H-step)。然后在选定的 harness 下通过强化学习(RL)更新策略模型(P-step),训练过程中识别出的困难任务构成下一轮的 harness 搜索任务集,使 harness 优化始终针对策略模型不断演化的失败模式。在三个编程基准上,Self-HPO 持续优于仅优化 harness 和仅优化策略模型的基线方法,将 Qwen3.5-35B-A3B 的平均解决率从 57.8% 提升至 64.8%,且增益可泛化到分布外场景。进一步分析表明,两个优化后的组件即使与各自的原始版本配对使用,仍能保留增益,且联合增益超过两者单独增益之和。Self-HPO 还提升了可靠性(pass@1)并扩展了能力前沿(pass@k)。此外,我们还证明,使用更强的外部模型(如 Opus 4.8)作为 harness 提议器,同一框架能带来进一步的性能提升。

1 引言

大语言模型(LLM)智能体在复杂多步骤任务上取得了快速进展,例如软件工程(Jimenez et al., 2024;Yang et al., 2024)、网页导航(Zhou et al., 2024;He et al., 2024;Wei et al., 2025c)和计算机操作(Xie et al., 2024;Agashe et al., 2025)。这样的智能体由两个组件构成:策略模型(policy model)及其 harness——即决定模型观察到什么、如何执行动作、接收什么反馈以及何时终止一个回合的外部脚手架(Yao et al., 2023;Shinn et al., 2023;Yang et al., 2024;He et al., 2024;Lee et al., 2026;Zhang et al., 2026a)。通常,策略模型定义了智能体的能力边界,而 harness 决定了这些能力如何被激发,因此同一个模型在某个问题上可能成功也可能失败,取决于它所使用的 harness(Le et al., 2026;Zhang et al., 2026a)。

目前有两条主要的改进路线。Harness 优化固定策略模型,在提示词、工作流或智能体代码上进行搜索(Hu et al., 2024;Lee et al., 2026;Zhang et al., 2026a),而策略优化固定 harness,从成功轨迹或可验证奖励中更新模型(Shao et al., 2024;Guo et al., 2025;Wei et al., 2025a)。然而,仅优化 harness 无法改进底层模型,仅优化策略模型也只能从固定 harness 所引导出的轨迹中学习。尽管近期已有工作开始同时优化两个组件(Kim et al., 2026;Chen et al., 2026a),但它们依赖外部的 harness 提议器,并面临随着策略模型及其失败模式不断演化而导致优化目标持续变化的挑战,使得编程智能体的自驱动进化仍处于探索不足的状态。

在本文中,我们提出 Self-HPO,一种由智能体自身策略模型驱动的递归自改进框架。如图 1 所示,Self-HPO 交替进行 harness 优化(H-step)和在优化后 harness 下的策略优化(P-step)。Harness 优化暴露并弥补当前策略模型的弱点,而策略优化则将被激发的行为内化到模型中,并转移下一轮 harness 应当针对的失败模式。具体而言,在 H-step 中,当前策略模型分析其失败轨迹,并提出针对自身失败模式的 harness 修改方案,然后基于搜索任务集上的性能选择更新后的 harness(§2.2)。在 P-step 中,策略模型在优化后的 harness 下通过强化学习进行更新(§2.3)。在下一个 H-step 中,更新后的策略模型充当 harness 提议器,并以从上一个 P-step 中识别出的困难任务作为搜索任务集,确保 harness 搜索与策略模型不断演化的失败模式保持一致。

图片

https://huggingface.co/self-hpo

图 1:Self-HPO 利用智能体自身递归地改进 harness 和策略模型。左:在每个 H-step 中,当前策略模型提出改进后的 harness,每个 P-step 随后在优化后的 harness 下通过强化学习更新策略模型。右:SWE-Bench Verified、SWE-Bench Multilingual 和 SWE-Bench Pro 上沿 H-step 和 P-step 的平均解决率。策略模型基线和 harness 基线分别指 RLVR(Peng et al., 2026)和 Self-Harness(Zhang et al., 2026a)。

我们以 Qwen3.5-35B-A3B(Qwen Team, 2026)作为基础策略模型,以 mini-SWE-agent(Yang et al., 2024)作为种子 harness 来实例化 Self-HPO。在三个编程基准上,Self-HPO 持续优于仅优化策略模型和仅优化 harness 的方法,平均解决率在每个优化步骤都有提升,如图 1 所示。在 SWE-Bench Verified(Chowdhury et al., 2024)上,它将基础解决率从 61.0% 提升至 69.5%,且增益可迁移到分布外的 SWE-Bench Multilingual(Yang et al., 2025)和 SWE-Bench Pro(Deng et al., 2025)。消融实验进一步表明,使用策略学习过程中识别出的困难任务来演化 harness 搜索任务集,比复用固定任务集取得更好的性能。我们还扩展了 Self-HPO 的外部模型设置,使用 Opus 4.8 作为外部 harness 提议器,进一步将 SWE-Bench Verified 上的解决率提升至 71.6%。

本工作的主要贡献如下:

  • 我们提出 Self-HPO,一种面向编程智能体的递归自改进框架,交替进行 harness 和策略优化,智能体使用自身的策略模型作为 harness 提议器,并使 harness 搜索适应策略模型不断演化的失败模式。
  • 我们证明 Self-HPO 在三个编程基准上持续优于仅优化策略模型和仅优化 harness 的基线方法,将平均解决率从 57.8% 提升至 64.8%,且增益可泛化到分布外场景。
  • 我们的研究表明,Self-HPO 的两个优化后的组件即使与各自的原始版本配对使用,仍能保留增益,而联合增益超过两者单独增益之和。我们还发现 Self-HPO 不仅提升了可靠性(pass@1),还扩展了智能体的能力前沿(pass@k)。

2 Self-HPO:通过 Harness-策略优化实现自进化

图片

图 2:Self-HPO 概览。上(H-step):冻结的策略模型分析智能体在搜索任务集上的失败,并提出新的 harness 候选。下(P-step):使用更新后的 harness,策略模型通过强化学习不断进化。更新后的策略模型成为下一个 harness 提议器,而在此 P-step 中始终未被解决的任务构成下一个搜索任务集。

2.1 问题设置

给定一个软件工程任务 x,编程智能体将由 LLM 参数化的策略模型 P 与控制上下文、工具、反馈和终止条件的 harness H 结合。由此产生的轨迹 τ ~ π_{H,P}(·|x) 由可执行验证器 y(x, τ) ∈ {0,1} 进行评分。我们用 harness-策略对在训练数据 D 上的期望解决率来衡量其优劣:

J(H, P) = E_{x~D} E_{τ~π_{H,P}(·|x)}[y(x, τ)] (1)

我们研究的是如何让编程智能体自改进其自身的 harness 和策略模型。Harness 改变了当前策略模型能够可靠表达的行为,而策略模型的更新则改变了下一轮 harness 应当针对的失败模式。如图 2 所示,每个 H-step 固定策略模型,利用它来分析失败并提出 harness 修改方案;每个 P-step 再冻结该 harness,通过强化学习更新策略模型。更新后的策略模型成为下一个 harness 提议器,从训练过程中识别出的困难任务构成下一个搜索任务集。我们称这种交替框架为 Harness-Policy Optimization(HPO),并在两种设置下实现它。在自改进设置(Self-HPO)中,不断进化的策略模型提出自身的 harness 候选方案,因此不需要单独的提议器模型。作为参考,我们还用 Opus 4.8 作为固定的外部提议器实例化了相同的 HPO 流程。

算法 1 自 Harness-策略优化(Self-HPO)

1:种子 harness H₀、基础策略模型 P₀、训练数据 D、harness 搜索预算 K 2:t ← 0,随机初始化 harness 搜索任务集 S_t ⊂ D 3:while 未收敛 do ▷ 停止准则(§2) 4:/* H-step:以当前策略模型为提议器搜索 harness */ 5:评分 v₀,轨迹 T₀ ← Eval(H_t, P_t, S_t),经验 E ← {(H_t, T₀)},v_best ← v₀,H_{t+1} ← H_t 6:for k = 1, …, K do 7: H_t^k ← ProposeHarness(H_{t+1}, P_t, E) ▷ 自提议器(§2.2) 8: v_k, T_k ← Eval(H_t^k, P_t, S_t),E ← E ∪ {(H_t^k, T_k)} 9: if v_k > v_best then 10:  H_{t+1} ← H_t^k,v_best ← v_k 11:/* P-step:在更新后的 harness 下训练策略模型 */ 12:P_{t+1}, T_RL ← RL(H_{t+1}, P_t, D) 13:S_{t+1} ← SelectHardTasks(T_RL) ▷ 演化式搜索任务集(§2.3) 14:t ← t + 1 15:return H_t, P_t

Self-HPO 的形式化描述见算法 1。从基础策略模型 P₀、种子 harness H₀ 和随机搜索任务集 S₀ ⊂ D 出发,该方法交替进行两种更新。在第 t 轮(从 t = 0 开始),H-step 固定 P_t,并利用它提出 K 个 harness 候选 {H_t^k}{k=1}^K,在 S_t 上保留得分最高的 harness 作为 H{t+1}。然后 P-step 冻结 H_{t+1},在 D 上通过强化学习将 P_t 更新为 P_{t+1}。由此产生的训练回放轨迹确定下一轮的困难任务集 S_{t+1},当困难任务集在各轮之间趋于稳定时循环停止。

2.2 H-step:基于失败条件的 Harness 搜索

Harness 优化的自提议器。H-step 使用冻结的 P_t 同时作为任务求解器和 harness 提议器。当前的 (H_t, P_t) 组合首先在 S_t 上生成轨迹,提议器检查当前的失败案例,并针对提示词或可执行运行时逻辑提出有针对性的修改(提示词见附录 D)。每次搜索迭代都基于 H_t 修订当前最优的 harness,利用所有已评估 harness 及其轨迹所积累的经验。所有候选方案都在同一搜索任务集 S_t 上进行评估。

演化式搜索任务集。搜索任务集在一个 H-step 内保持固定,但在不同轮次之间会演化。初始化时,我们从 D 中均匀采样 S₀。后续的搜索任务集由训练轨迹中识别出的困难任务组成。

相似文章

@xiangxiang103: 清华 × 微软亚研这篇新论文,我读完最大的感受是:DSH 被严重低估了! 论文本来是讲 HarnessMM,一个让 agent 别再"做完一步就从头想一遍"的方法。它拿 Codex 和 DeepSeek Harness两个工业级外壳当实验…

X AI KOLs Timeline

清华与微软亚研合作的 HarnessMM 论文提出通过受保护的决策复用与递归自改进来提升 agent harness 的 token 效率,实验显示 DeepSeek Harness(DSH)收益显著:HumanEval 成功率从 71.43% 升至 85.71%,每题 token 省 87.93%,而 Codex 仅省 29.54%。

@AlphaSignalAI: https://x.com/AlphaSignalAI/status/2074130508833845396

X AI KOLs Timeline

自我改进的机制使AI代理能够通过分析执行轨迹自主重写其运行规则,从而实现60%的性能提升。来自上海AI实验室的研究引入了Self-Harness框架,使得轻量级模型能够在无需人工工程的情况下超越更大规模的模型。