论文解读·

[2026-05-09] Training with Harnesses: On-Policy Harness Self-Distillation for Complex Reasoning

OPHSD 把临时 inference harness 变成训练期 teacher context:student 仍直接作答,teacher 则读取 Plan–Solve 或 Draft–Verify 的 terminal context。本文区分哪些 procedure 能内化,哪些实时结果永…

页数
9
形式
交互图解
更新
2026.10.08
文章目录

Zhengyang Zhao, Lu Ma, Wentao Zhang · arXiv:2605.08741v1 · 最早公开于 2026-05-09

9 页交互图解 · 先看训练链、真实 case 与复现边界大屏阅读 ↗

使用按钮或 ← → 翻页,F 进入或退出全屏按 Esc 退出全屏;独立打开后可返回文章

OPHSD 的 teacher context 不是静态答案,而是一个实际运行过的 harness terminal。它想把 Plan–Solve、Draft–Verify 这类 procedure 的收益压回模型参数,让部署时可以拆掉 scaffold。

69.50数学平均 pass@8
53.33HMMT25
3×10K公开训练子集
9/10个人兴趣程度

Q1. 为什么要把 harness 蒸馏回模型?

inference harness 能提高正确率,却增加 latency、token cost、工程复杂度和新的 control-flow failure。如果 harness 只是临时训练 scaffold,模型可能在部署时直接输出更好的答案。

OPHSD 的科学问题不是“harness 是否有用”,而是 harness 带来的 procedure 是否能通过同一模型的 privileged teacher 内化。

Q2. 它与普通 OPSD 的差别在哪里?

方法Teacher contextContext 怎样产生
OPSDreference solution数据集静态提供
OPHSD Plan–Solve抽象 plan + solver terminalreference 先交给 planner
OPHSD Draft–Verifyretrieval、confirm/challenge evidenceharness 实际执行检索和复核

student 与 teacher 仍评分同一批 on-policy token。不同的是 privileged context 由当前模型在可执行 procedure 中构造,不是一段预存 hint。

Q3. 两个 harness 具体怎样运转?

Plan–Solve

  1. 训练期 planner 看 problem 与 reference solution,写一份不泄漏答案的策略 sketch。
  2. solver 只看 problem 与 plan,产生 harness terminal。
  3. frozen teacher 用 terminal context 评分 direct student rollout。

Draft–Verify

  1. 检索五个近邻 draft。
  2. 五个 confirmer 与五个 challenger 分别找支持和反例。
  3. reviser 综合证据;teacher 再把这份 richer terminal 压到 student token distribution。

teacher 的优势来自执行过的 procedure,而不是单纯多一段 reference text。

Q4. setting、结果与真实失败 case 是什么?

Qwen3-8B;CAIL、USPTO、DeepMath 各 10K items;batch 64,8,192 tokens,学习率 1e-6,8×H100。text task 300 steps,math 150 steps。

任务GRPOOPSDOPHSD
LawBench62.4464.2569.51
USPTO90.0188.0190.81
Math avg pass@866.5766.6869.50
HMMT25—42.5053.33

为什么 harness 不是永远可靠

LawBench 的一个 case 中,检索到的样例全部指向 intentional injury,掩盖了 negligent homicide。论文观察到训练后的 direct student 反而能保留两种解释。reattach harness 在 inference 时没有继续增益,有时还会降分。

Q5. 游戏 coding harness 哪些东西能内化?

可以尝试内化“先列 obligations、实现、compile、运行 fixture、检查 state、再修订”的 procedure;不能省掉当前程序真正的 execution。未来 query 的 asset、engine version 和生成代码都不同,compile error、render diff 与 gameplay trace 必须在当次 build 上计算。

最合理的 game OPHSD teacher context 是当前 student build 经过 harness 后产生的 terminal,而不是 reference game 的预录日志。这样 procedure 可复用,evidence 仍与当前状态绑定。

Q6. 代码 release 足够复现吗?

官方仓库公开 trainer、两套 harness、reward、data conversion、3×10K 训练子集与 fixed-checkpoint 四次运行 CSV。DeepMath 依赖 Git LFS,evaluation sets 不打包,仓库也没有检测到明确 license。

论文 v1 的 text 表取 run 内 best checkpoint;仓库后续 CSV 固定 text step 300、math step 150 并做四次运行。二者都可读,但不能把每列最方便的数拼在同一张表。兴趣程度 9/10。

证据范围:本文阅读全文与附录,并分别检查 PDF 文本和逐页渲染;代码结论固定到文中注明的 commit。兴趣程度 9/10 只表示博客作者对该方向的个人兴趣,不是通用论文评分。

留言

留言正在载入…

搜文章