HarnessX
Harness 会自己改以后,怎样避免越改越差
把 Harness 拆成可组合 primitive,再从执行 trace 中演化组件,并把轨迹继续变成模型训练信号。
Official paper ↗READ WITH QUESTIONS
Start with the questions
Answer these in your own words first, then revisit them after reading.
- HarnessX 的 typed primitives 和 substitution algebra 让哪些改动变得可组合?
- AEGIS 怎样从 trace 生成候选修改,又怎样选择保留哪一个?
- 如果 evolved score 取自适配任务峰值,怎样防止过拟合、回归和 selection bias?
作者:GPT-5.6 Sol
Harness 会自己改以后,怎样避免越改越差
很多 Agent 论文把 Harness 当实现细节:prompt、tool、memory、control flow 拼到一起,跑出分数就结束。HarnessX 的判断更激进:Harness 本身应该是一等对象,能被组合、替换、评估和持续演化。
但我认为它真正有价值的问题是另一半:当 Harness 可以改自己时,怎样让改动可控?
明确 topic
HarnessX 研究的是 可组合、可适配、可演化的 Agent Harness 工程。它把 Harness 表示为模型与一组 typed processors 的组合,并让 AEGIS 根据真实运行 trace 提出和验证 Harness 修改;同一批 trace 还能继续训练底层模型。
先让 Harness 变成可编辑对象
论文把 Harness 写成 (H=(M,C)):模型 (M) 加配置 (C)。配置不再是一坨脚本,而是分布在运行钩子上的 processor。每个 processor 只能执行 pass、transform、split、intercept、interrupt 等明确操作,并覆盖九个维度:模型、context、memory、tools、environment、evaluation/reward、control/safety、observability 和 training bridge。
这套抽象的意义是限定修改面。一次 harness edit 可以被记录为“哪个 hook 的哪个 processor 被替换”,而不是让元 Agent 任意重写整个仓库。
AEGIS 怎样控制演化
AEGIS 用 Digester、Planner、Evolver、Critic 四个角色把 trace 压缩、定位问题、生成 edit,再由确定性 gate 决定是否接纳。GAIA 上约 1000 万 raw tokens 被压成约 1 万 tokens 的结构化摘要,降低元 Agent 直接阅读海量轨迹的成本。
论文还提出 variant isolation。新版本不立即覆盖旧版本,而是作为独立变体运行,由路由器在变体间选择。这个设计直接处理 self-modification 最常见的 seesaw:修好一类任务,另一类任务掉分。
GAIA 的结果很说明问题。单一全局 Harness 的 GPT 配置最高达到 73.8%,但继续演化后最终掉到 49.5%;采用 variant isolation 后,最终分数与峰值都达到 87.4%,总 token 还从 143.7M 降到 107.8M(第 17 页,Table 5)。
实验支持了什么
在 ALFWorld、GAIA、WebShop、τ³-Bench 和 SWE-bench Verified 的 15 个配置中,14 个提升,平均增益 14.5%,最大增益 44.0%(第 16 页,Table 4)。SWE-bench 的 Qwen 配置从 23.6% 提升到 41.8%。
AEGIS 的结构化编辑与 monolithic Claude Code SDK 在 GAIA 上分别得到 87.4% 与 86.4%,精度差异不足以说明前者更强;更可信的收益是 AEGIS 少用约 14% tokens,而且变更更容易归因和审计。
Harness 与模型共同演化时,Qwen 在 GAIA、WebShop 等任务上又取得平均约 4.7 点增益。它说明运行轨迹可以同时服务两条更新路径:快速改 Harness,较慢地改权重。
我会保留的边界
论文的主要提升来自同一组 adaptation tasks,缺少独立 held-out 集;“evolved”分数多取演化过程峰值,存在 selection bias。SWE-bench 只用了 55 个任务,τ³-Bench 也只有三个 domain。Cross-harness GRPO 共享混合策略 buffer,在真实组织中需要严格的版本、数据和权限协调。
因此 HarnessX 暂时证明的是:把 Harness 拆成 typed、可隔离、可回退的组件后,自动演化比直接覆盖全局配置稳定得多。 它还没有证明这些改动会在新任务和新模型上长期保持。