Agent 的能力上限早就不是模型决定的,是 harness 决定的。
HF Papers 热榜上的 Harness²(Recursive Agent Harnessing for an Open World)把这个判断推进了一步:既然 harness 是可变面,能不能让 Agent 自己改自己的 harness?它给出的是一个两级递归框架——任务级用 Propose-Probe-Compose 的对比式编辑,在没有标准答案的开放任务上也能可靠判断"这次改动是不是更好";harnessing 级把这些编辑经验沉淀下来,让 Agent 面对下一个新任务时起点更高。结果是在三个专业基准、四种模型配置上,单步递归即稳定提升:GLM-5 与 Gemini 3.5 Flash 在 WorkBuddy-Bench 最高提升 11.5 分,LAB 提升 11.8 个百分点。
这篇拆解两级递归各自解决了什么难题,讨论生产系统里启用自演化 harness 的安全边界与成本结构,附接入示例,走 4sapi.com 统一端点。
一、痛点:harness 的迭代速度跟不上任务
harness 是模型之外的一切:工具定义、提示词、循环结构、校验规则、重试策略。现实里它有三个迭代瓶颈:
- 人工维护是串行的。每个新任务类型暴露一个 harness 缺陷,工程师修一个,任务不等人。
- 开放任务没有标准答案。想自动改进 harness,就要自动判断"改完之后更好了",但开放世界里没有 ground-truth 验证器,传统的自动调优没有目标函数。
- 经验不复用。为任务 A 修的 harness 缺陷,任务 B 遇到时从零再踩一遍,改进是点状的不是累积的。
Harness² 的两级递归正好对应这三个瓶颈:任务级递归解决"没有验证器怎么改",harnessing 级递归解决"经验怎么累积"。
二、原理速览:两级递归各管一层
任务级递归的聪明之处在于把"结果对错"换成"过程对比":同一个任务,改动前后的执行轨迹放在一起,哪个版本的工具调用更合理、失败恢复更顺畅、卡点更少,模型可以对比判断而不需要知道正确答案。这让自演化第一次在开放任务上变得可靠。
harnessing 级则是把"这次学到的"变成"下次自带的"——递归不止加深一步,还留下沉淀。
三、数字怎么读
| 基准 | 提升幅度 | 说明 |
|---|---|---|
| WorkBuddy-Bench | 至 +11.5 分 | 专业工作流任务 |
| JobBench | +4.5 分 | 求职类任务 |
| LAB | +11.8pp | 代码/Agent 长任务 |
三点纪律:
- 单步即有效。一次任务级递归就带来上述提升,且递归预算增加时收益继续涨——说明提升来自机制而非运气。
- 跨模型成立。GLM-5 与 Gemini 3.5 Flash 两种骨干都受益,说明这是 harness 层的普适方法,不绑定特定模型。
- "单步"的成本不是零。每个任务要多跑若干次对照执行,成本账在第五节算。
四、与人工 harness 工程的分工
自演化不是取代人工 harness 工程,是重新划界:
| 工作 | 归属 | 理由 |
|---|---|---|
| 安全边界、权限、审计 | 只能人工 | 自演化不得触碰 |
| 工具集定义与凭证管理 | 人工为主 | 涉及外部资源 |
| 提示词与流程的局部调优 | 任务级递归 | 高频、低风险、可对比验证 |
| 跨任务模式沉淀 | harnessing 级 | 数据驱动,人工做不动 |
一条硬边界:递归编辑的对象必须圈定在白名单字段内(提示词模板、重试策略、输出格式约定等),权限配置、工具权限、外发通道这些字段对自演化只读。这是第294期治理原则在自演化场景的直接应用:模型可以提议,但不能成为唯一的授权者。
五、成本结构:对照执行的账
任务级递归的额外成本来自 Probe 环节的对照执行:
三个控制手段:
- 按任务价值分档。高价值任务(对外交付、长链路 Agent)启用完整递归,低价值任务直接用现有人工 harness。
- 对照执行用便宜档。Probe 的目的是比较过程质量,不追求最优产出,用中档模型跑对照,预算可压到主任务的零头。
- harnessing 级的收益是摊销的。一次沉淀惠及后续所有任务,按月度口径摊算,递归的整体成本随任务量上升而下降。
六、Python 接入示例:白名单内的任务级自演化
通过 4sapi.com 端点实现一个最小版 Propose-Probe-Compose,编辑范围锁在提示词模板白名单内:
要点:
- 编辑提议的 system 提示里显式禁止触碰权限类内容,配合代码层白名单双保险。
- judge 只看过程质量不看答案,这正是开放任务上无需标准答案的关键。
- 采纳的编辑要落盘记录(示例省略),作为 harnessing 级沉淀的原料。
七、落地路径
把自演化 harness 引入生产,建议三步走:
- 影子期:递归只做提议与对比,不采纳,人工审阅每条编辑建议,积累"机器能改对什么"的证据。
- 受限采纳期:白名单字段内自动采纳,每次采纳生成 diff 与触发任务的审计记录,周度人工复盘。
- 常规期:采纳照常,人工精力转向 harnessing 级沉淀的泛化质量与边界巡查。
整个路径的节奏由数据决定,影子期的通过率低于五成就延长观察,不硬切。
八、风险与注意事项
- 奖励投机:对比判断可能偏好"看起来更努力"的输出(更多步骤、更多工具调用),judge 的评价标准要明确惩罚冗余。
- 过拟合单一任务:任务级采纳的编辑可能只对该任务有效,污染共享 harness;共享层的更新必须经过 harnessing 级的泛化提炼。
- 审计完整性:每次编辑保存前值、后值、触发任务与对比证据,任何一次能力回退都能还原到上一个版本。
- 成本漂移:对照执行的成本随任务复杂度波动,预算控制按任务设上限。
九、验收清单
- 白名单字段清单生效,只读字段有代码级保护而非仅提示词约束。
- 每次采纳有完整 diff 与审计记录,回滚演练通过。
- judge 评价标准含冗余惩罚条款,投机样本回归集通过。
- 影子期通过率数据归档,进入受限采纳期的决策有据可查。
- harnessing 级沉淀有独立版本管理,与任务级编辑分离。
总结
Harness² 把"harness 是可变面"推进到"harness 可以自我演化":任务级 Propose-Probe-Compose 用过程对比绕开了开放任务没有标准答案的死结,harnessing 级把编辑经验沉淀成跨任务的起点提升,GLM-5 单步即涨 11.5 分且跨模型成立。对生产系统,关键动作是划清边界——提示词与策略白名单内交给递归,权限与外发只读保留给人工,配合影子期与受限采纳期控制引入节奏。我在这篇里给了两级递归的拆解、成本控制手段和最小实现代码,4sapi(https://4sapi.com)同一端点可以为编辑、对照、评判三角色配置不同档位的模型,自演化的账算得清。欢迎在评论区聊聊:Agent 的 harness,上一次人工优化是什么时候?




