分层自我改进:任务专属可进化的智能体 Harness 框架 Hierarchical Self-Improvement: A Framework for Task-Specific Evolvable Agent Harnesses
冻结大模型通过三层自指改写自身 Harness 与进化策略,实现持续自我提升
前置知识
Agent Harness(智能体脚手架)
围绕 LLM 的可执行脚手架,包含提示词、工具编排、记忆、状态管理与验证逻辑等组件,决定模型如何与环境逐步交互。评测研究(如 Harness-Bench)表明,相同骨干模型配不同 harness 可产生巨大性能差距,它是独立于模型参数之外的关键性能决定因素。
本文的核心研究对象就是 harness 本身——理解 harness 的构成,才能明白 HSI 究竟在进化什么、可编辑边界划在哪里。
Gödel 式自我改进
源自 Schmidhuber 2003 年的 Gödel Machine 思想:系统可以修改自身程序(包括负责修改的程序本身),前提是能证明修改后性能更优。近年 Gödel Agent、Darwin Gödel Machine(DGM)、Huxley-Gödel Machine(HGM)、GEA 等将其操作化为 LLM 智能体的运行时自编辑与进化搜索。
HSI 与这一脉络直接对话,但把可编辑边界从逐步决策代码扩展到整个 harness;理解该脉络才能准确定位本文的贡献与差异。
BALROG 基准
由六个长程文本交互式游戏环境组成的 LLM 智能体评测基准:BabyAI、BabaIsAI、Crafter、MiniHack、TextWorld、NLE,难度递增,覆盖指令跟随、导航、长程规划、稀疏反馈等能力,以 episode 级 % Progress(0-100 刻度)衡量任务完成度。
本文全部实验都在 BALROG 上进行,其天然难度梯度正是作者用来刻画 harness 进化能力边界(何时有效、何时无效)的关键工具。
元进化(Meta-Evolution)
进化过程再往上一层:不仅改写任务 harness,还改写'负责改写 harness 的进化策略 Σ',包括种子选择、候选生成、提交选择与终版导出等策略代码。meta-evolver 自身的执行逻辑从不可变模板加载并冻结,作为防止无界自指的外层锚点。
分层是标题的由来,meta-on/off 消融(TextWorld 上相差 19.0 分)也是核心实验之一,不理解这一层就无法读懂实验设计。
Thinking on/off 设计
在任务执行阶段关闭模型的扩展推理(thinking-off),在自我改写阶段开启(thinking-on)。由于任务阶段的推理配置固定关闭,模型的逐步能力天花板被锁定,观测到的性能提升只能归因于 harness 进化,而非推理时额外的搜索计算。
这是本文隔离混杂因素、让'进化收益'结论可信的关键实验设计,也是评估任何自我改进论文时必须检查的控制变量。
LCB 奖励(下置信界奖励)
随机环境下比均值更稳健的候选排序指标:$r = \mu - z\frac{\sigma}{\sqrt{n}}$,其中 $\mu$、$\sigma$ 为评估轨迹奖励的均值与标准差,$z=0.5$。它惩罚高方差候选,降低进化过程被随机高分轨迹误导的风险,用于进化期间的版本排名与提交决策。
进化循环中所有候选 harness 的排序与提交都依赖该公式,是读懂 Figure 2/3 进化轨迹与实验协议的前提。
研究动机
现代 LLM 智能体的改进通常依赖人工修改提示词、工具或工作流,而包裹模型的可执行脚手架——harness——在部署后往往被当作固定产物。已有自我改进工作存在两个根本缺口:其一,Gödel 式自我改进系统(Gödel Agent、Darwin Gödel Machine、HGM、GEA、HyperAgents)主要进化智能体的逐步决策代码,没有把可编辑边界推进到更广的 harness 层;而 Meta-Harness、AutoHarness 等 harness 优化方法又依赖外部 proposer 或更强的设计模型,改进并非内生。其二,观测到的 harness 进化收益究竟反映真实能力提升还是仅仅是测试时搜索,并不清楚——近期评估研究(Rethinking the Evaluation of Harness Evolution)显示自动 harness 进化可能严重过拟合,甚至跑不过简单的测试时缩放基线。这引出本文的中心问题:当底层模型冻结时,智能体能否内生地进化自己的 harness 来提升性能,这种提升的极限又由什么决定?
本文的目标是本文的目标是构建并检验 HSI(Hierarchical Self-Improvement)框架:让单一冻结 LLM 同时承担三种角色——任务执行、harness 改写与进化策略改写——从而在不更新任何参数的情况下持续提升任务表现。具体设计中,每个任务族维护自己专属的、可跨迭代热插拔的 harness,通过固定的任务注入接口与任务连接,利用环境反馈不断重写。作者还希望给出可检验的边界刻画:反馈保真度边界(进化需要信息量足够的奖励信号来引导选择)与骨干能力边界(harness 重设计无法克服冻结模型本身的局限),并回答'何时进化有效、何时徒劳'这一实践问题。
与已有工作不同的是,本文的独特切入是用三个设计问题组织与既有工作的对比。第一,可编辑边界在哪:不同于只进化决策代码的 Gödel 风格方法,也不同于依赖更强外部模型的 harness 工程,HSI 让同一个冻结模型既执行任务又执行进化,可编辑面覆盖提示词、工具、记忆、状态管理、hooks 等全部任务侧组件。第二,进化如何扩展:不假设单一通用 harness 一次优化终身使用,而是任务族专属持续进化,用 20% held-out 划分严格评估泛化,直接回应'进化 harness 可能过拟合'的批评。第三,自我修改时什么保持固定:采用分层约束——harness 可变而进化策略被锚定、进化策略可变而外层执行逻辑冻结,评估信号与数据划分也不受智能体控制,把自指限制在有界范围内。thinking-on/off 设计进一步把推理时算力这一混杂因素隔离掉。
核心方法
HSI 的直觉是:与其人工打磨 harness,不如让冻结模型自己迭代改写它,而且'改写方法'本身也可以被改写——只是层级之间有冻结的锚。技术路线上,单一冻结 LLM $M$ 运行于三个层级 scope:任务 harness $H$ 直接与环境交互,包含提示词、工具、记忆、状态管理与执行策略;evolver 执行策略 $\Sigma$,负责跨迭代重写 $H$;meta-evolver 在更高层重写 $\Sigma$,而其自身执行逻辑从不可变初始化模板加载、作为冻结外锚。完整进化循环含五个阶段:种子选择、主进化、提交选择、元进化与终版选择,共 $T=5$ 次外迭代、每次最多 80 个 react() 步。实验在 BALROG 上以 DeepSeek-V4-Flash-Preview 为骨干,候选按随机下置信界奖励 $r = \mu - z\frac{\sigma}{\sqrt{n}}$($z=0.5$)排序;任务执行时关闭推理、改写时开启,以锁定模型逐步能力天花板。
核心创新是'冻结锚约束下的分层进化'。与 Gödel 风格方法的本质区别在于可编辑对象:前者只改逐步决策代码,HSI 把整个任务侧 harness(提示词、工具、记忆、状态管理、hooks、执行策略)都设为可编辑,同时让执行与进化共享同一个冻结模型 $M$、相同的提示格式与 react() 原语,不借助任何外部 proposer。与一次优化出通用 harness 的方法不同,HSI 采用任务族专属持续进化范式:每个任务族维护自己的 harness,通过固定的任务注入接口热插拔,泛化用 held-out 划分严格评估。第二条原则是自决探索-利用:框架不预设何时检查代码、评估候选、提交变更或记录经验,这些都属于可进化策略的一部分;框架只提供原子交互原语、进化反馈信号(评估奖励、已提交版本谱系、BOOTSTRAP.md 中的持久经验教训)与结构不变量,探索-利用的分配本身由模型在进化中自行决定。
方法步骤详情
五阶段循环如下。第一步种子选择:$(\hat{H}_t, h_t) = \mathrm{seed\_selection}(G_t, M)$,从累积进化图 $G_t$ 中选祖先版本作锚,生成含动机、改进方向与可证伪判据的假设 $h_t$,把无约束变异变成目标导向搜索。第二步主进化:候选集 $\{V_t^{(k)}\}$ 由 $M$ 改写 $\hat{H}_t$ 得到,可编辑面覆盖提示词、工具、记忆、状态与 hooks,候选经任务 scope 评估返回奖励反馈,唯一不变量是任务注入接口固定,保证热插拔与公平对比。第三步提交选择:得提交池 $C_t$,维护多样化候选而非只留最高分,入选版本连同语义理由写入进化图,供后续种子选择在成功、失败与未探索分支上推理。第四步元进化:$\Sigma_{t+1} = \mathrm{meta\_evolution}(G_t \cup C_t, \Sigma_t; M)$,改写种子、进化、提交与终版选择策略本身,但 meta-evolver 自身执行逻辑不可编辑。第五步终版选择:$H^*$ 按 $G_T$ 上的验证性能泛化优先导出部署。
技术新颖性
技术新颖性体现在四点。第一,递归但有界的自我修改:harness 可进化、进化策略可再进化、外层执行逻辑冻结,配合评估信号与数据划分不受智能体控制,避免了无界自指——比允许元机制完全可编辑的 HyperAgents 更保守也更可控。第二,任务专属进化作为缩放轴:不追求单一通用 harness,而是每个任务族独立进化,BabaIsAI 上 BreakStop/GoTo 分别取得 0.98/1.00 的 held-out 成绩,证明族内泛化真实存在。第三,thinking-on/off 协议:任务时关推理、进化时开推理,锁定逐步能力天花板,使提升不能归因于推理时搜索——这是对 Wang et al. (2026b) 指出的混淆因素的正面回应。第四,LCB 奖励 $r = \mu - z\frac{\sigma}{\sqrt{n}}$ 抗随机高分,加上刻意采用单谱系进化(非种群并行)换取归因清晰度:性能变化可直接归因于 harness 重设计而非候选吞吐量增加。
实验结果
Setup A(同分布进化):冻结 DeepSeek-V4-Flash 从初始 harness 平均 18.9% Progress 升至 meta-on 的 41.4%,meta-off 为 33.1。逐环境:BabyAI 42.0→81.3(+39.3)、Crafter 11.6→44.6(+33.0)、TextWorld 40.0→65.0(+25.0)、MiniHack 0.8→15.8(+15.0),NLE 仅 0.2,骨干能力不足时进化无效。TextWorld 65.0 超 Grok-4 的 62.9,平均 41.4 逼近 Claude-Opus-4.5 的 42.1。meta-off 消融:TextWorld −19.0、MiniHack −10.0、Crafter −8.2、BabyAI −4.0。Setup B(BabaIsAI 20% held-out):BreakStop 从 0.0333 升至 0.98(meta-off 达 1.00),GoTo 从 0.1818 升至 1.00;Make 仅 0.3625,逼近能力边界。最大提升通常出现在第一次迭代。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| BALROG-BabyAI(同分布) | % Progress | 81.3 ± 4.2 | Init harness 42.0 ± 3.5 | +39.3 |
| BALROG-Crafter(同分布) | % Progress | 44.6 ± 3.2 | Init harness 11.6 ± 5.0 | +33.0 |
| BALROG-TextWorld(同分布) | % Progress | 65.0 ± 3.0 | Init harness 40.0 ± 6.2 | +25.0(超过 Grok-4 的 62.9) |
| BALROG-MiniHack(同分布) | % Progress | 15.8 ± 2.9 | Init harness 0.8 ± 1.9 | +15.0 |
| BALROG-NLE(同分布) | % Progress | 0.2 ± 0.3 | Init harness 0.0 | +0.2(无意义,骨干能力边界) |
| BabaIsAI-BreakStop(20% held-out) | task progress | 0.9800 ± 0.0632(meta-on) | Init harness 0.0333 ± 0.0334 | +0.95(meta-off 达 1.00) |
| BabaIsAI-GoTo(20% held-out) | task progress | 1.0000 ± 0.0000(meta-on) | Init harness 0.1818 ± 0.0802 | +0.82 |
| BabaIsAI-Make(20% held-out) | task progress | 0.3625 ± 0.3284(meta-on) | Init harness 0.0000 | +0.36(仍逼近能力边界) |
局限与改进
作者承认的局限:一是反馈保真度边界——NLE 奖励极稀疏时进化收不到有用信号,meta-on 也只有 0.2;二是骨干能力边界——BabaIsAI-Make 即便进化也只到 0.3625 且方差大;三是进化非单调,Crafter 第 5 迭代回归,说明 harness 设计空间非凸;四是单谱系进化换取归因清晰度,牺牲搜索效率。我的观察:全部实验限于 BALROG 文本游戏,未在代码生成、SWE 等真实任务上验证;只用 DeepSeek-V4-Flash 一个骨干,'中等难度才有收益'的边界对其他模型适用性未知;进化成本(5 迭代 × 80 步 × 高频评估)未报告 token 与费用;进化期每候选仅 1 个 episode 评估,虽有 LCB 缓解噪声,选择仍有统计风险;泛化只在任务族内部(80/20 划分)验证,跨任务族迁移未测试,'任务专属'范式某种程度是绕开而非解决通用泛化难题。
独立分析的弱点
第一,进化期评估的统计强度不足:每候选每次 evaluate() 只跑 1 个 episode,BALROG 环境又按新种子随机生成,容易被单次运气左右;虽然用 $r = \mu - z\frac{\sigma}{\sqrt{n}}$ 惩罚方差,但 $z=0.5$ 的取值没有敏感性分析。改进方向:进化中期对头部候选追加多 episode 复评,或自适应调整 $z$。第二,结论对骨干的依赖未经消融:只用 DeepSeek-V4-Flash,无法外推'能力边界'的位置。改进方向:在 2-3 个不同能力档位的模型上重复 Setup A。第三,成本与效率不透明:未报告 API 调用次数、token 消耗与墙钟时间,也缺少与等成本测试时缩放基线的对照——这正是 Wang et al. (2026b) 批评的缺失比较。改进方向:报告成本-性能曲线。第四,任务注入接口与 react() 原语仍由人工设计,'内生'程度有限。改进方向:把接口本身纳入可编辑面并配套验证机制。第五,自我改写执行代码的系统缺少安全性讨论:无沙箱隔离、资源限制与恶意退化分析。改进方向:加入回滚机制与代码审计约束。
未来方向
作者提出的方向:与更强基础模型结合(能力边界随骨干上移)、在反馈更丰富的环境中进化(缓解反馈保真度限制)、引入可扩展的种群搜索(与单谱系互补的额外缩放维度)。基于成果可延伸的方向:其一,跨任务族的 harness 库与自动路由——既然族内泛化已被证明,可研究族间模块复用与元学习式初始化;其二,成本感知进化——把 API 预算作为约束纳入 $\Sigma$,让 meta-evolver 学会分配评估资源;其三,理论刻画——结合 Wang et al. (2026a) 的 PAC 界,分析分层可编辑面复杂度与泛化保证的关系;其四,迁移到真实生产任务(代码仓库维护、网页操作、科学实验编排),检验任务注入接口在开放域是否够用;其五,安全性研究——自我改写执行代码的系统的沙箱、审计与失败回滚机制。
复现评估
复现条件较好:代码在 GitHub 开源(github.com/TailinZhou/hsi),BALROG 公开,leaderboard 数字标注检索日期(2026-08-03),协议描述详细——同分布协议按新种子重采样、BabaIsAI 按子套件划分 dev/val/test(20% held-out),Advanced 因仅 3 个任务被排除的细节也如实说明。骨干通过 deepseek-v4-flash-preview API 获取,无需本地 GPU,门槛主要在 API 预算:每个任务族独立进化需 T=5 外迭代 × 每迭代至多 80 个 react() 步 × 高频评估,五个环境加三个子套件总量可观。主要不确定因素:LLM 进化有随机性,作者未报告 HSI 本身的多种子重复实验(Init Harness 基线跑了 3 次取平均),复现者需多次运行确认提升幅度;且论文基于 2026 年的 API 服务,模型更迭后需换等价骨干,结论可能变化。总体:中等难度复现,框架逻辑清晰、组件边界明确是加分项。
论文图表