引言
一个端到端完成 **0% Harvey 法律智能体基准(LAB)**任务的开源模型,并没有分数看起来那么弱。我们完全不动模型权重,只让自动化循环改写它外围的代码。在循环从未见过的留出测试集上,整项任务成功率从 0% 升至 5.0%,评分标准通过率从 63.4% 升至 80.1%;按 LAB 的核心指标,这个开源模型落在 Sonnet 4.6 与 Opus 4.6 之间。
模型权重一个也没改。
之所以能取得这种提升,关键在于模型究竟失败在哪里。在 LAB (Harvey, 2025) 中,开源模型可能已经读完文档、发现问题并写出可靠分析,却把它保存成错误的文件名、留在临时目录,或者根本没有写出最终文件。裁判只读取 output/ 顶层中名称与要求完全一致的文件,所以优秀的工作也可能得零分。
问题往往不在法律推理,而在模型外围的代码,也就是 Harness(运行框架) (Hugging Face, 2025)。Harness 是模型的运行时封装层:它向模型提供工具和上下文、执行工具调用,并决定何时结束运行。
这正是 Zhang et al. (2026) 所说的“管理不善的天才”假说:有能力的模型被脆弱的人工脚手架拖累,低分反映脚手架的问题可能不亚于模型本身。手工改进 Harness 既慢又依赖特定模型,因此我们将其自动化:冻结模型,搜索 Harness。
我们在 deepseek-ai/DeepSeek-V4-Pro 上运行了 Meta-Harness 循环 (Lee et al., 2026)。由 Claude(Opus 4.8)担任提案者:读取运行历史,复制当前最佳 Harness,再加入一个机制。只有当新方案在 24 项开发集上超过噪声裕量时,外层循环才会保留它。
下文将沿着实验过程展开:循环如何改写 Harness,哪些修复真正提高了分数,哪些机制能跨模型迁移,以及脚手架改动从何处开始失效。
Harness 是模型外围的运行时封装层:它决定模型读取哪些文档、可以调用哪些工具、哪些信息进入上下文、如何执行工具调用,以及何时结束运行 (Hugging Face, 2025)。基础 Harness 只转发任务提示和工具调用;更好的 Harness 可以加入方法论、修复格式错误的工具调用,或在运行结束前检查输出。模型权重始终不变,改变的只有封装层。
传统上,这一层依靠人工改进:检查失败、调整提示词、添加校验、修改工具封装,再重新跑基准。Meta-Harness 将这个循环自动化:把既有 Harness 代码、执行轨迹和得分交给编码智能体,让它提出下一次修改 (Lee et al., 2026)。
- Harvey. (2025). Introducing Harvey’s Legal Agent Benchmark. Harvey blog. https://www.harvey.ai/blog/introducing-harveys-legal-agent-benchmark
- Hugging Face. (2025). Agent Glossary. Hugging Face blog. https://huggingface.co/blog/agent-glossary back: 1, 2
- Lee, Y., Nair, R., Zhang, Q., Lee, K., Khattab, O., & Finn, C. (2026). Meta-Harness: End-to-End Optimization of Model Harnesses. https://arxiv.org/abs/2603.28052 back: 1, 2
- Zhang, A. L., Li, Z., & Khattab, O. (2026). The Mismanaged Geniuses Hypothesis. Blog post. https://alexzhang13.github.io/blog/2026/mgh/
搜索之前:基准、模型与基线
基准(LAB)
Harvey 法律智能体基准由一组贴近现实的法律事项组成 (Harvey, 2025)。每项任务都向智能体提供一个封闭的文档工作区(合同、邮件、电子表格、幻灯片等),并要求交付具体成果,例如尽调备忘录、问题清单、修订稿或草案。
LLM 裁判依据一份很长的评分细则评估交付物。它只读取 output/ 顶层、且文件名与要求完全一致的文件。
我们跟踪两个数字:汇总评分项通过率是整次运行中所有评分项的通过比例。它信号密集、变化平滑,因此用作优化目标。全项通过率是所有评分项均通过的任务比例,是 LAB 的核心指标,也最符合实际价值;但在小数据集上,它稀疏且噪声很大。即使前沿模型,端到端完成率也不足 10% (Harvey, 2025b)。
前沿实验室直到最近才开始公开法律工作能力。Anthropic 于 2026 年 6 月发布 Claude Fable 5 时 (Anthropic, 2026),据我们所知,这是首次有前沿模型在发布时的核心对比中列出法律智能体基准;而 LAB 也是 Fable 5 明显最弱的一项。
即使对闭源前沿模型,法律工作也很难。LAB 推出不久后,各模型的全项通过率如下 (Pereyra, 2026)。除 Fable 5 外(13.3%,图中未列,且发布后不久即停止广泛提供),最强模型也只能端到端完成约 7% 的任务,大多数模型接近零。这正是改进 Harness 值得研究的原因。
留出测试集
Harvey 没有公开训练/测试划分 (Harvey, 2025c),因此我们基于 1,251 项公开 LAB 任务,以固定提交和随机种子构建了一套划分。它包含两个冻结部分:循环用于优化的 24 项开发集(每个法律业务领域一项任务),以及仅用于最终报告的 100 项留出测试集。测试集先匹配完整基准的分布,再强制纳入各个“越多越难”维度的极端样本:150 万 token、11 个交付物、194 条评分标准、55 份文档。因此我们的核心结果更接近下界。
如何构建数据划分
测试集由缺口评分贪心算法填充,使多个维度同时接近全局比例:法律业务领域、工作类型、评分细则规模,以及文件类型标记(电子表格和幻灯片来源、电子表格交付物、邮件)。随后强制纳入每个“越多越难”维度的极端样本,包括 150 万 token 的事项。
上下文大小按解析后的 token 数衡量,而不是文档数;两者密度相差超过 20 倍(150 万 token 的事项只有 10 份文档,而一项含 55 份文档的任务约为 12.1 万 token),所以按文档数分桶会产生误导。
24 项开发集本身是一项局限:循环只能发现这 24 项任务中出现的失败模式。测试集用于检验开发集上的改进能否泛化。开发集之所以保持较小,是因为评分成本很高。
一次评估要花多少钱
被优化的模型固定为 deepseek-ai/DeepSeek-V4-Pro,通过兼容 OpenAI 的路由器调用 Hugging Face Inference Providers。我们从不微调模型,唯一变化的是 Harness。随后把所得 Harness 原样用于其他模型,以测试迁移能力。裁判是独立的 claude-sonnet-4-6。
评估有两个昂贵环节:智能体需要处理很长的事项;随后裁判会针对每条评分标准调用一次 Sonnet,100 项测试约需 6,300 次调用。提示缓存避免裁判成本占据大头,但扩展开发集仍然很贵。单次完整测试约花费 120 至 160 美元(智能体运行约 90 至 100 美元,裁判调用约 30 至 60 美元);24 项开发集跑 3 次的成本也在同一量级。22 轮候选评估占据了主要支出,所以开发集保持较小。如果评分便宜且确定,应使用大得多的开发集。
成本明细
智能体侧,100 项测试约需 90 至 100 美元:多数运行超过 100 万 token,平均每项任务约 180 万总 token。开发集评估共运行 72 次(24 项任务 × 3 次),事项较小,成本更低但仍属同一数量级。裁判侧,测试约调用 Sonnet 6,300 次,开发集约 4,500 次。提示缓存可跨评分项复用每项任务的交付物前缀,使裁判输入成本降低 5 至 8 倍,完整测试的裁判账单约为 30 至 60 美元,开发集稍低。
基础基线
划分固定后,起点是 LAB 的原始 Harness。开发集的汇总通过率为 63.1%、全项通过率为 0%;留出测试集分别为 63.4% 和 0%。零分任务主要集中在起草和多交付物任务:模型没有生成交付物、生成不完整,或生成的文件无法被评分器找到。
下图按任务和法律业务领域展示基线。点击领域可展开具体任务。
通用智能体 Harness 不如 LAB 基础版
我们还想知道,通用智能体 Harness 能否在没有领域专用机制的情况下处理法律工作,因此在相同条件下比较了三种开源智能体 Harness。
它们均未超过原始 LAB Harness。Pi 最强,汇总通过率为 45.4%,但仍比 LAB 基础版低 18.0 个百分点,比优化后的前沿低 34.7 个百分点。Goose 为 23.2%,mini-swe-agent 为 3.5%。同一模型、同一裁判、同一批任务,却出现五种截然不同的分数——这就是“管理不善的天才”假说的量化体现。
外部 Harness 出了什么问题
交付问题解释了很大一部分差距。Pi 在 100 项任务中的 75 项生成了预期文件类型,这些任务得分 56.8%;其余 25 项只有 11.6%。Goose 和 mini-swe-agent 生成预期文件类型的次数更少,分别为 26/100 和 7/100。
超时也是 Harness 行为的一部分,而非从结果中排除的基础设施问题。Goose、Pi 和 mini-swe-agent 分别在 73/100、25/100 和 13/100 项任务上超时;这些运行均作为失败计入汇总。
这些接近零分的任务和较弱的通用 Harness 基线,正是优化空间所在。固定基准与数据划分后,我们就可以追问:优化器如何在不触碰模型的情况下,把缺失的交付物变成可评分成果?
- Anthropic. (2026). Claude Fable 5 and Claude Mythos 5. Anthropic announcement. https://www.anthropic.com/news/claude-fable-5-mythos-5
- Harvey. (2025a). Introducing Harvey’s Legal Agent Benchmark. Harvey blog. https://www.harvey.ai/blog/introducing-harveys-legal-agent-benchmark
- Harvey. (2025b). Legal Agent Benchmark: Initial Results. Harvey blog. https://www.harvey.ai/blog/legal-agent-benchmark-initial-results
- Harvey. (2025c). Post-training Open Legal Agents with Baseten Research. Harvey blog. https://www.harvey.ai/blog/post-training-open-legal-agents-with-baseten-research
- Pereyra, G. (2026). State of the art on the Legal Agent Benchmark. X (Twitter). https://x.com/gabepereyra/status/2059320727988224128
循环如何工作
循环概览
循环有两项职责。语言模型扮演研究员:读取运行历史、提出假设,并向 Harness 写入一个新机制。普通 Python 脚手架扮演实验室:运行实验、在固定开发集上评分,并决定是否保留改动。模型可以发挥创造力,脚手架则严格界定什么才算有效。
每轮流程如下:提案者复制当前最佳 Harness,只加入一个机制,并在少量开发任务上检查;随后写出描述改动的 pending_eval.json。外层循环在全部 24 项开发任务上各运行 3 次。只有候选方案的混合得分比当前最佳高出 1 分(min_delta,略高于三次平均后的残余噪声),才会晋级为新的最佳 Harness。
协议与脚手架
meta_harness.py 负责运行实验室,SKILL.md 则规定提案者的行为。最重要的是两条规则。
第一,复制后改造,每次只加一个机制。每个候选都从当前最佳 Harness 的精确副本开始,再加入一项改动。这样收益可以累积:机制一经接纳,后续候选都会继承。第二,不得加入任务专属提示,也绝不能读取测试集。机制必须对陌生事项有效,而不是记忆开发集。
完成后,提案者写出 pending_eval.json,包含 hypothesis、changes、fix_tasks、regression_tasks 和 observed 证据。下面是一项真实候选,长文本字段有所删节。
pending_eval.json 示例(单个候选,文字有删节)
{
"iteration": 5,
"candidates": [
{
"name": "deliverable_reassembly_gate",
"hypothesis": "Reassembling a chunked-write-clobbered deliverable from the model's own write history raises the pooled criterion pass rate: a full-document `write` exceeds the per-message output cap, so the model writes the instrument in sequential chunks, but `write` replaces rather than appends, so the graded file holds only the final fragment while every clobbered chunk survives in the transcript and is deterministically recoverable with zero added model tokens.",
"changes": "Copied the highest not-promoted orphan deliverable_superset_gate to agents/deliverable_reassembly_gate.py (all inherited code byte-identical) and added ONE deterministic post-solve mechanism, _land_clobbered_deliverables: gather the ordered write chunks per deliverable, take the last H1-headed chunk as the head, append the continuation chunks, and land the reassembled document under the exact requested name. Fires only when the graded file is a headless fragment and the reassembly is >= 3x longer. [...]",
"fix_tasks": [
"funds-asset-management/draft-compliance-manual",
"energy-natural-resources/draft-power-purchase-agreement",
"real-estate/draft-purchase-and-sale-agreement",
"insurance/draft-change-of-control-application",
"litigation-dispute-resolution/draft-motion-for-summary-judgment",
"healthcare-life-sciences/draft-management-services-agreement"
],
"regression_tasks": [
"environmental-esg/draft-markup-of-administrative-settlement-agreement",
"immigration/identify-compliance-issues-in-employee-i",
"tax/analyze-section-382-analysis",
"capital-markets/analyze-counterparty-markup-of-underwriting-agreement",
"banking-finance/identify-term-sheet-issues",
"corporate-governance/research-regulatory-approval-requirements"
],
"observed": "Causal proof (deterministic judge re-score of the shipped gate output, no rollout): on the frontier's two cached clobbers the gate recovers funds 0.465 -> 0.921 (+46 criteria) and PPA 0.385 -> 0.912 (+48 criteria), at zero model tokens. Strict additivity: replayed over all 72 cached frontier runs it fires on exactly those 2 and 0 of the other 70. Live A/B: fix slice 0.801 -> 0.914, regression slice flat (0.810 -> 0.805). [...]"
}
]
}
脚手架与协议内部细节
提案者通过 Claude CLI 订阅在 propose() 中运行;该调用会暂时移除 ANTHROPIC_API_KEY,裁判阶段再恢复。裁判需要数千次确定性、按量计费的 API 调用;提案者则是一次持续数小时、可由订阅不限量运行的会话。长会话容易中断,因此 propose() 通过自动续跑(_resume_wait)处理会话额度重置、超时和临时服务器错误,但登录过期时会停止。
evaluate_harness() 在 24 项开发集上对候选运行三次,update_frontier() 决定是否晋级。凡读取过留出测试集的迭代,都会被 _touched_test() 拒绝。_history_digest() 把前沿演进链和未晋级候选一并提供给提案者,使曾经落选的机制以后仍可叠加。loop_state.json 在重启之间维持连续的迭代编号。
我们选择复制而非继承,因为二十多轮后继承链会难以阅读;平铺副本可让所有机制在一个文件中清晰可见。验证协议要求提供因果重放(在旧轨迹上重新运行确定性修复并评分),或至少覆盖 5 项修复任务和 5 项回归任务的汇总对比。单次、单任务的波动只算噪声。
晋级规则
晋级规则决定循环保留什么,因此无论好坏,搜索最终都会针对这一得分优化。候选的混合得分至少要比当前前沿高 1 分(min_delta),略高于三次平均后的残余噪声,才能晋级。
LAB 的核心全项通过率过于稀疏,不能直接优化。在 24 项开发任务、每项三次运行的情况下,多一次全项通过就相当于约 1.4 分,直接优化它等于追逐运气。因此我们优化信号更密集的汇总通过率,并把全项通过率作为奖励项:
score = pooled_criterion_rate + 0.5 * all_pass_rate - 0.005 * tokens_per_million
各权重都有依据:全项通过率乘 0.5,意味着一次幸运的全项通过无法单独跨过 1% 裕量,但汇总得分与全项通过率同时提升则可以。较小的成本项(每百万 token 约扣半分)可防止昂贵得多的 Harness 凭微弱收益获胜。每次比较时,update_frontier() 都按当前权重重新计算在位方案,因此权重变化不会在边界上让更差方案晋级。三次运行的噪声检验见附录,陈旧权重问题见测量细节。
背景
让语言模型围绕指标进化代码或提示词,已成为常见范式。最接近的工作包括:
- “管理不善的天才”假说 (Zhang et al., 2026) 解释了为何值得搜索 Harness:封装层管理不当,会让有能力的模型显得很弱。自动 Harness 搜索据此不再手工调脚手架,而是直接搜索它。
- Meta-Harness (Lee et al., 2026) 是本文的基础框架:围绕固定模型自动搜索 Harness,由语言模型担任提案者,并使用领域专属验证器。本文将其应用于法律智能体工作。
程序与提示词进化领域的更多相关工作
- AlphaEvolve (Novikov et al., 2025) 和 OpenEvolve (Sharma, 2025) 针对验证器进化整个程序;它们进化解题程序,我们进化固定模型外围的封装层。
- ShinkaEvolve (Lange et al., 2025) 在多个岛屿和档案中保留种群;我们只保留一条可累积的前沿,更简单但多样性较低。
- Darwin Gödel Machine (J. Zhang et al., 2025) 改写自身代码;我们把改动限制在 Harness 层。
- GEPA (Agrawal et al., 2025) 围绕帕累托前沿进化提示词;我们把同样的“反思—变异—保留”循环推进到 Harness 代码中。
- Karpathy 的 autoresearch (Karpathy, 2026) 让智能体编辑一个文件,并按隔夜指标决定保留或丢弃。我们的
SKILL.md相当于它的program.md;但我们的实验是昂贵的 LLM 裁判评估,而不是短时训练。
我们补充的是在困难且昂贵的领域中运行这一方法所需的工程:提供商故障切换、支持提示缓存的裁判、可复现的数据划分、上述混合目标,以及让订阅制提案者可无人值守运行的可靠性。循环定义完毕后,就可以检验它究竟学会了修复什么。
- Agrawal, L. A., Tan, S., Soylu, D., Ziems, N., Khare, R., Opsahl-Ong, K., Singhvi, A., Shandilya, H., Ryan, M. J., Jiang, M., Potts, C., Sen, K., Dimakis, A. G., Stoica, I., Klein, D., Zaharia, M., & Khattab, O. (2025). GEPA: Reflective Prompt Evolution Can Outperform Reinforcement Learning. https://arxiv.org/abs/2507.19457
- Karpathy, A. (2026). autoresearch: AI agents running research on single-GPU nanochat training automatically. GitHub repository. https://github.com/karpathy/autoresearch
- Lange, R. T., Imajuku, Y., & Cetin, E. (2025). ShinkaEvolve: Towards Open-Ended and Sample-Efficient Program Evolution. https://arxiv.org/abs/2509.19349
- Lee, Y., Nair, R., Zhang, Q., Lee, K., Khattab, O., & Finn, C. (2026). Meta-Harness: End-to-End Optimization of Model Harnesses. https://arxiv.org/abs/2603.28052
- Novikov, A., Vũ, N., Eisenberger, M., Dupont, E., Huang, P.-S., Wagner, A. Z., Shirobokov, S., Kozlovskii, B., Ruiz, F. J. R., Mehrabian, A., Kumar, M. P., See, A., Chaudhuri, S., Holland, G., Davies, A., Nowozin, S., Kohli, P., & Balog, M. (2025). AlphaEvolve: A coding agent for scientific and algorithmic discovery. https://arxiv.org/abs/2506.13131
- Sharma, A. (2025). OpenEvolve: an open-source evolutionary coding agent. GitHub. https://github.com/algorithmicsuperintelligence/openevolve
- Zhang, A. L., Li, Z., & Khattab, O. (2026). The Mismanaged Geniuses Hypothesis. Blog post. https://alexzhang13.github.io/blog/2026/mgh/
- Zhang, J., Hu, S., Lu, C., Lange, R. T., & Clune, J. (2025). Darwin Gödel Machine: Open-Ended Evolution of Self-Improving Agents. https://arxiv.org/abs/2505.22954
结果
开发集前沿由几次大幅跃升推动
下图展示 24 项开发集上的优化过程。每个点代表循环评估过的一个候选 Harness;纵轴是我们优化的密集指标——汇总评分项通过率。实心点表示晋级为新最佳方案的候选,空心点表示测试后被拒绝的候选,阶梯线则是截至当时的最佳成绩前沿。
前沿并非稳定爬升,而是由几次跳跃推动;多数候选未能通过晋级规则。最大一次提升来自 deliverable_landing_gate:它把交付物放到裁判能找到的位置,使开发集汇总得分从 72.8% 升至 79.2%。最终前沿达到 83.3% 汇总通过率和 4.2% 全项通过率,比基础版高 20.2 个百分点。
最大收益来自文件处理,而非提示词
下图展示所有候选:横轴为成本(每次运行的平均 token 数),纵轴为开发集得分,颜色代表机制类型。
候选机制分为四类:
- 交付物落盘与交付(代码)。 最大收益来自把文件放到裁判预期的位置。裁判只加载
output/顶层、名称完全匹配的文件;模型却常把交付物放错位置、命名错误、拆成片段或留在临时目录。确定性的求解后步骤无需额外模型 token,便可将正确文件落盘,把接近零分变成可评分结果。 - 事项忠实度(代码)。 长上下文工作区可能含有干扰事项,模型有时会针对错误争议写出高质量草案。运行时检查可识别“答错事项”并强制重写;再配合小规模 best-of-N 投票,
matter_audit_allwork成为最终前沿。 - 循环鲁棒性(代码)。 修复提供商损坏的工具调用(
toolcall_json_repair)并打破重复循环。这类改动不多,却也能帮助其他模型家族,因为它们修复的是执行故障,而非 DeepSeek 特有行为。 - 提示词操作手册(提示词)。 在系统提示中加入面向分析、起草和修订的工作方法。首批提示词手册很早进入前沿,但后续纯提示词候选未能超过以代码为主的前沿。
排名前六的 Harness 中有五个依靠确定性代码,而非提示词编辑。对于较弱的智能体,许多所谓“能力”其实是脚手架可以保证的 I/O 纪律。Harvey 自己的 Harness 工程文章也得出相同结论:通过停止钩子在运行结束前验证交付物 (Artificial Lawyer, 2026)。
热力图按任务拆解了同一故事,收益并不均匀。有些任务起点很高、变化很小;另一些任务,尤其是起草和多交付物任务,在文件落盘修复或事项审计出现前一直接近零分,随后一步跃升。这体现了复制后改造的价值:修复一种已观察到的失败模式,保留下来,再添加下一个机制。
代码修复可以迁移,提示词手册不行
Harness 只在 DeepSeek-V4-Pro 上调优。为检验泛化性,我们把演进链中段的 deliverable_landing_gate 原封不动地用于各模型,并在同一留出测试集上运行。
同一模型家族内迁移良好:DeepSeek V4 Flash 提升 14.4 个百分点,与调优模型从 deliverable_landing_gate 获得的收益相近。不同家族的 Nemotron-3 Ultra 仅提升 0.4 个百分点。这个均值掩盖了两种相互抵消的效果:toolcall_json_repair 消除了 Nemotron 的工具调用崩溃,而针对 DeepSeek 调优的提示词手册反而伤害了 Nemotron 本可完成的任务。鲁棒性和代码机制能跨家族迁移;提示词手册依赖模型,甚至可能适得其反。
脚手架修复从哪里开始失效
得分不会永远上升。顶尖候选集中在约 83% 汇总通过率,事项审计加交付物落盘似乎构成了本次搜索的局部上限。但这并不证明提示词潜力已耗尽。候选分布图显示,循环评估了 4 个纯提示词候选、14 个纯代码候选和 1 个混合候选。两个提示词手册很早便进入前沿,说明提示词确实有用;只是提案者把更多迭代用于探索脚手架代码。
剩余错误更难解决。例如税务 Section 382 任务每次都会漏掉 107 条标准中的约 30 条,主要问题是量化深度和引用精度。更好的提示词也许还能挽回一部分,但封装层的招数终究会用尽,实质性工作最终仍要由基础模型承担。
- Artificial Lawyer. (2026). Harvey Drives Legal Agent Learning via Harness Engineering. Artificial Lawyer. https://www.artificiallawyer.com/2026/04/07/harvey-drives-legal-agent-learning-via-harness-engineering/
结论
循环能够可靠发现什么
结果有边界,但绝不算小。保持开源模型不变,只让循环改写 Harness,DeepSeek-V4-Pro 在开发集上从 63.1% 升至 83.3%;所得 Harness 不经修改用于留出测试集,也从 63.4% 升至 80.1%。模型权重零改动。从“管理不善的天才”视角看,基础分数低估了模型:很大一部分差距来自脚手架,而搜索弥合了其中大部分 (Zhang et al., 2026)。
外部 Harness 对比从另一个角度说明了同一问题:同样的模型和裁判,仅因封装层不同,汇总通过率便从 3.5% 到 80.1% 不等。
循环最擅长修复操作性故障:交付物位置错误、提供商损坏工具调用、重复循环,以及针对错误事项起草文书。后期最大收益来自脚手架代码,因为这些故障易于用代码精确约束。提示词并非无用:两个提示词手册早期进入前沿,只是提案者尝试的纯提示词改动较少。剩余失败很可能需要更好的提示词、工具和更强基础模型共同解决。
下一步
剩余失败模式指向了几项后续工作。
- 先用更便宜的裁判,再扩大开发集。 可用经 Sonnet 校准的低价模型评分,再由 Sonnet 验证最终结果。Sonnet 4.6 标价为输入 3 美元/百万 token、输出 15 美元/百万 token (Anthropic, 2026);DeepSeek V4 Flash 则为 0.14 和 0.28 美元 (DeepSeek, 2026),输入约便宜 21 倍、输出约便宜 54 倍。低价裁判可让开发集扩大一个数量级,暴露当前 24 项任务未覆盖的失败模式。
- 其他困难基准。 先测试按细则评分的法律基准 LEXam (Fan et al., 2025) 和 PLawBench (Shi et al., 2026),再尝试 Humanity’s Last Exam (Phan & others, 2025)、CritPt (Zhu et al., 2025) 等差异很大的领域。CritPt 尤其严格,因为它已有强大的人工 Harness——PhysicsIntern (Louapre et al., 2026),可将 Gemini 3.1 Pro 从 17.7% 提升到 31.4%。
- 用种群取代单一前沿。 本文只保留一条累积最佳 Harness。ShinkaEvolve (Lange et al., 2025)、AlphaEvolve (Novikov et al., 2025) 和 Darwin Gödel Machine (J. Zhang et al., 2025) 会保留多样化种群,从而保存单独看较弱、组合后却有效的机制。
- 用工具和提示词突破上限。 更充分的提示词搜索仍可能改善实质性任务;部分错误还需要新工具,例如法律研究的网页搜索,以及处理金额核对、日期时间线和电子表格解析的代码。
这符合一个更广泛的规律:把语言模型放进配有优秀验证器的循环,它就能成为有能力的研究员。被优化的产物可以是训练脚本 (Karpathy, 2026)、程序 (Lange et al., 2025; Novikov et al., 2025)、提示词 (Agrawal et al., 2025)、智能体自身代码 (J. Zhang et al., 2025),或固定模型外围的 Harness (Lee et al., 2026)。难点在验证器。编程和竞赛数学有确定性检查器,法律领域过去大多没有。LAB 由 LLM 裁判逐条评分的细则虽不完美,但信号已足够密集,可以支撑搜索爬升。
自动 Harness 搜索是检验“管理不善的天才”假说的实用方法 (A. L. Zhang et al., 2026)。与其训练更大的模型,不如先停止给现有模型设置障碍,再衡量有多少弱点原本就不应归咎于模型。在法律智能体任务上,仅靠底层工程便取得如此收益,强烈表明模型是被管理不善,而非能力不足。
我们在 GitHub 发布了 LAB Harness 代码,并在 Hugging Face Bucket 发布运行产物,包括开发集、测试集结果及提案者轨迹。
致谢
感谢 Leandro von Werra 和 Lewis Tunstall 对早期稿件提出的宝贵意见。
- Agrawal, L. A., Tan, S., Soylu, D., Ziems, N., Khare, R., Opsahl-Ong, K., Singhvi, A., Shandilya, H., Ryan, M. J., Jiang, M., Potts, C., Sen, K., Dimakis, A. G., Stoica, I., Klein, D., Zaharia, M., & Khattab, O. (2025). GEPA: Reflective Prompt Evolution Can Outperform Reinforcement Learning. https://arxiv.org/abs/2507.19457
- Anthropic. (2026). Pricing. Claude Platform Docs. https://platform.claude.com/docs/en/about-claude/pricing
- DeepSeek. (2026). Models and Pricing. API documentation. https://api-docs.deepseek.com/quick_start/pricing
- Fan, Y., Ni, J., Merane, J., Hermstrüwer, Y., Huang, Y., Akhtar, M., Salimbeni, E., Leippold, M., Sachan, M., Stremitzer, A., Engel, C., Ash, E., & Niklaus, J. (2025). LEXam: Benchmarking Legal Reasoning on 340 Law Exams. https://arxiv.org/abs/2505.12864
- Karpathy, A. (2026). autoresearch: AI agents running research on single-GPU nanochat training automatically. GitHub repository. https://github.com/karpathy/autoresearch
- Lange, R. T., Imajuku, Y., & Cetin, E. (2025). ShinkaEvolve: Towards Open-Ended and Sample-Efficient Program Evolution. https://arxiv.org/abs/2509.19349 back: 1, 2
- Lee, Y., Nair, R., Zhang, Q., Lee, K., Khattab, O., & Finn, C. (2026). Meta-Harness: End-to-End Optimization of Model Harnesses. https://arxiv.org/abs/2603.28052
- Louapre, D., Niklaus, J., & Tunstall, L. (2026). physics-intern: an autonomous agentic framework for physics research. https://huggingface.co/spaces/huggingface/physics-intern
- Novikov, A., Vũ, N., Eisenberger, M., Dupont, E., Huang, P.-S., Wagner, A. Z., Shirobokov, S., Kozlovskii, B., Ruiz, F. J. R., Mehrabian, A., Kumar, M. P., See, A., Chaudhuri, S., Holland, G., Davies, A., Nowozin, S., Kohli, P., & Balog, M. (2025). AlphaEvolve: A coding agent for scientific and algorithmic discovery. https://arxiv.org/abs/2506.13131 back: 1, 2
- Phan, L., & others. (2025). Humanity’s Last Exam. https://arxiv.org/abs/2501.14249
- Shi, Y., Liu, H., Hu, Y., & others. (2026). PLawBench: A Rubric-Based Benchmark for Evaluating LLMs in Real-World Legal Practice. https://arxiv.org/abs/2601.16669
- Zhang, A. L., Li, Z., & Khattab, O. (2026). The Mismanaged Geniuses Hypothesis. Blog post. https://alexzhang13.github.io/blog/2026/mgh/ back: 1, 2
- Zhang, J., Hu, S., Lu, C., Lange, R. T., & Clune, J. (2025). Darwin Gödel Machine: Open-Ended Evolution of Self-Improving Agents. https://arxiv.org/abs/2505.22954 back: 1, 2
- Zhu, M., Tian, M., & others. (2025). Probing the Critical Point (CritPt) of AI Reasoning: a Frontier Physics Research Benchmark. https://arxiv.org/abs/2509.26574
附录
为什么运行三次
让每个候选在每项任务上运行三次会使成本增至三倍,但能换来可靠信号。总体汇总通过率稳定,单项任务却不稳定;一次运行可能因提供商错误或交付物缺失跌至 0%,足以改变 24 项任务上的晋级结果。三次取平均可把每个 Harness 的噪声降至约 0.8 个百分点,使 1 分晋级裕量可用。
全部任务的三轮单次结果分别为 72.9%、76.2% 和 74.9%(均值 74.7%,标准差 1.4 个百分点),因此大型数据划分的核心结果跑一次即可;但单项任务不行:有些任务一次为 0%,另两次却接近 80%。三次取平均把噪声从约 1.4 降至 0.8 个百分点(标准差除以 3 的平方根),1 分裕量略高于此。更严格的 3 分裕量曾阻止 1.5 至 1.8 分的真实叠加收益,并浪费提案会话。1 分既能让方向正确的收益累积,又能排除单次噪声。
测量与可靠性细节
循环先是“能跑”,后来才变得“可信”。它曾因崩溃丢失迭代、错误晋级 Harness、不公平地衡量某些模型,还留下无人能读的记录。生成候选很容易,难的是让测量经得起检验:从崩溃中恢复、正确评分,并以相同方式衡量每个模型。
晋级规则缺陷(成本 λ 边界)
最典型的是晋级规则中的一个缺陷。deliverable_finish_guard 一度获得晋级,尽管它在所有维度都不如 deliverable_landing_gate:汇总通过率更低、全项通过率更低、token 更多。它本应被拒绝。
原因是一个陈旧数值。规则把挑战者最新的成本调整后得分,与在位方案保存的旧得分比较;但旧得分来自采用不同成本权重的早期运行,两者根本不可比。
修复方式就是 update_frontier() 现在遵循的规则:按当前权重重新计算在位方案,永远不要相信保存下来的派生数值。复制后改造也发挥了保护作用:错误晋级没有造成长期损害,因为完成校验机制被带入下一候选,最终前沿仍保留它。具有容错性的搜索结构可以吸收部分错误决策。
把提供商可靠性视为一等变量
通过托管路由器运行时,基础设施不稳定常被误判为模型失败。长时间运行(每次数分钟、最多数百万 token)会遭遇流中断、协议错误和限流,因此我们加入提供商故障切换及逐提供商重试。最极端的例子是 Nemotron 最初约得 1/100 分,因为适配器在首轮遇到普通服务器错误时没有重试,大多数运行在第零轮就终止。一行修复把“该模型不能做法律工作”变成了公平测量。
因此,在报告测试结果前,我们会重跑由提供商临时故障导致的失败。每个最终保留的零分都应来自模型或 Harness,而非基础设施假象。
强化作为优化器的 LLM
提案者是 Claude 订阅会话,每轮运行一至三小时。让它持续存活比预想更难:遇到可恢复中断(会话额度重置、超时、临时服务器错误)会自动续跑,遇到登录过期等不可恢复问题则干净退出。我们是在三轮迭代因静默认证失败而丢失后才吸取这个教训。进程组终止可防止遗留运行子进程,泄漏审计则拒绝任何触碰留出测试集的迭代。
LLM 优化器需要与任何长期分布式作业相同的工程强化:重试、幂等恢复、干净失败,以及防止污染留出数据的护栏。没有这些底层工程,核心结果就经不起检验。