NeoHorse-1:把交互记录变成下一轮训练,4B 逼近 9B 基座
自我提升的最后一公里:怎么把"能力证据"变成"下一轮学习"
这篇论文的主角是 NeoHorse-1,一组靠"自我提升"练出来的智能体(agent)模型。它的训练材料来自一个平时没人会多看两眼的地方:自家系统部署时留下的交互记录。所谓交互记录,就是服务过程中的用户请求、模型做出的工具调用、以及每次调用之后产生的结果。NeoHorse-1 把这些记录整理成下一轮训练的数据,跑完一整圈之后,4B 模型的平均分从 58.94 涨到 64.87,9B 模型从 65.60 涨到 69.04。更反常的是后半句:训练完的 4B 模型,在若干项基准(benchmark)上已经匹配甚至超过了 9B 基座。小模型拿自己留下的服务日志逼近大模型,这个结果把"自我提升"从一句口号变成了一件可以拆开检查的工程。NeoHorse-1
把这件事翻译成一句更扎眼的话:4B 用自己留在服务里的日志,逼平甚至超过去了 9B 基座。要解释这个结果,先回到递归自我提升至今仍缺的那一环:证据到学习的连接。
这个"自己能教自己"的设想,工程上有个专门的叫法,递归自我提升(Recursive Self-Improvement,RSI)。它有一个明确的工程含义:系统观察自己会什么、不会什么,把这份证据变成下一轮的学习材料,然后循环。RSI 不缺愿景,缺的是机制。把自我提升画成一张系统图,需要四个环节首尾相接:采集数据、筛选数据、优化模型、推理期精炼,外面再套一层自动评估。Self-Improvement 综述
这道连接的前半段已经被做透了:推理期精炼那一环,权重不动,靠搜索、自纠错把单次输出做得更好,这类"自我改进"到处都是。真正难的是把后半段接起来:评估得到的证据,怎么变成下一轮的数据筛选和参数更新。绝大多数系统在这里断掉了,NeoHorse-1 恰恰落在这个连接处。

图注:系统级自改进生命周期:数据采集、数据选择、模型优化、推理精炼四个环节首尾相连,自动评估层横贯全程并产出反馈信号,引导下一轮迭代。这张图把"自我提升"拆成可以逐环节对号入座的流水线。Self-Improvement 综述
放进刚才的坐标系,就是这篇论文的答案:NeoHorse-1 改变的是训练期的权重,评估器由人工设定、结果有人审计,落在 bounded(有界)一侧,不是那种自己改写自己判据的开放式递归。RSI 综述 在这样的坐标里,它的核心论点很干脆:部署中的 routing harness(路由框架)天然就是 RSI 需要的能力证据采集器。那 harness 在系统里到底是怎么运作的?这是下一个要拆解的问题。
一个用户回合的旅程:routing harness 如何一边服务、一边采集证据
模型路由不是新东西。早在 2023 年,FrugalGPT 一脉的工作就提出用级联的方式按查询选模型,目的很单纯:省钱。模型池里既有便宜的小模型也有昂贵的大模型,把简单的请求分给小模型,难的留给大模型,推理成本就能降下来。LLM Routing 综述 这类路由的决策单位是一条查询,路由器只看请求本身。NeoHorse-1 把这件事往前推了一大步:决策单位从一个查询变成一个用户回合,决策依据也从"这条请求"扩成"当前对话、近期路由决策、执行状态"这些 harness 状态。
一个回合落进 harness 后,router 先估计这个任务需要什么能力,在四档里挑一档:C0 是有界低风险任务,C1 通用默认,C2 需要多步推理与执行,C3 动用最大能力或最高可靠性。选定档位后,请求被分流到异构模型池(heterogeneous model pool)里对应的模型。这个回合留下的记录,不像普通日志那样只记"问了什么、答了什么",而是把三层信号分得清清楚楚:router 的原始能力预测、策略调整后的实际决策、以及最后真正服务的模型档位。预测和结果分开存,意味着后面的交互轨迹和最终结果,就是这条路由决策的一份成绩单。NeoHorse-1

图注:NeoHorse-1 的整体闭环:多样化任务经 routing harness 与异构模型池产生交互经验,组织成训练 mixture;能力反馈引导下一轮训练分布,更新后的模型回到 harness 继续迭代;右侧是论文采用的 agentic 后训练方法栈。NeoHorse-1
这就是它与省钱路由的分水岭。传统路由把决策当一次性服务选择,用完即弃;NeoHorse-1 把路由决策当动作、把后续结果当标签记录下来,路由就从省钱技巧变成了数据产生器。Agentic Routing 顺带说一句,agentic 后训练还有另外两条路:RAGEN 代表的轨迹级强化学习把整条交互轨迹的期望奖励拿来更新策略,Agent Lightning 则把 harness 变成强化学习的 rollout 执行环境、直接在 harness 里跑 RL。NeoHorse-1 走的是第三条路:harness 不负责给奖励,只负责把路由信号和交互记录变成下一轮的训练材料。RAGEN Agent Lightning
但这些记录鱼龙混杂:有的任务半途被放弃,有的工具调用根本没返回结果,还有的只是流程跑完了、任务其实没完成。凭什么让它们进训练集?
什么交互记录有资格进训练集?结构校验、六维评估、子场景标注
NeoHorse-1 在数据侧建了一道质量闸门,分三步。第一步去重和去污染,确保训练数据与评测套件不重叠。第二步是规则式结构校验,每条轨迹被分进三档:internally complete(内部完整)、partially recoverable(部分可恢复)、quarantined(隔离)。只有结构上说得过去的记录才有资格继续往下走。NeoHorse-1
第三步是六维语义评估,六个维度覆盖了"任务到底做成了没有"的方方面面:
| 维度 | 它问的问题 |
|---|---|
| goal attainment | 用户的最终目标达成没有 |
| instruction adherence | 模型有没有守住指令约束 |
| tool use | 工具调用是否恰当、参数是否正确 |
| evidence consistency | 回答是否与已获取的证据一致 |
| error recovery | 出错之后能否恢复 |
| termination | 交互是否停在合理的终点 |
每个维度给出 PASS、WARN、FAIL、NOT_EVALUATED 四档判定,缺证或中断的 judge 调用绝不转成正面结论。拿不准就记为未评估,而不是假装通过。落到训练准入上,这四档判定不会压成一个笼统分数,而是与结构状态、证据覆盖一起构成结构化质量表示,准入、复核与隔离的规则都在这份表示上定义。其中被写死的一条正是上面的铁律:拿不到正面结论的记录,不会以"已验证成功"样本的身份被放进训练集,至多留下来等待复核或隔离处置。
结构过完,还有个粒度问题:拿什么当训练单元?整条轨迹太长,一个任务里常常混着好几个目标;单个用户回合又太短,一个局部目标往往要跨好几个回合。NeoHorse-1 的解法是引入 subscene(子场景):把共享同一局部目标的相邻用户回合聚成一组,作为语义刻画的单元。举个例子:用户先查了部门的排期,然后要求把会议从周四下午挪到周五上午,最后确认新时间写进了日历。这三个回合各自是独立的 user turn,但它们共同完成"调整会议时间"这一个局部目标,于是聚成一个 subscene。

图注:子场景刻画:一条轨迹是用户请求与 LLM 调用的有序事件流,共享同一局部目标的相邻回合聚成 subscene,再从 Scene(场景)、Goal(目标)、Outcome(结果)三个视角描述,右侧列出代表性属性。NeoHorse-1
聚好之后,每个 subscene 从三个视角被描述:Scene 回答"用户在做什么、上下文是什么",Goal 回答"期望达成什么、怎么判定成功",Outcome 回答"实际发生了哪些可验证的结果"。Outcome 特意区分"任务真正满足"和"流程跑完":工具链走完了但没有满足用户目标的记录,不会被当成成功案例。
经过这道闸门,交互记录变成带着语义画像的训练样本,主语料的量级在十万到百万条 harness 轨迹。但下一个问题还没解决:路由信号本身怎么变成训练信号?
路由信号不只用来选模型:从三阶段课程到 on-policy 蒸馏
路由信号在 NeoHorse-1 里有个出人意料的用途:它不决定哪些例子进训练集,那是闸门的职责,而是决定这些例子的呈现顺序。这就是三阶段课程式 SFT(supervised fine-tuning,监督微调)。每个样本先按"请求加历史"重估的能力需求打分,注意不是按它实际被路由到的档位打分。这个细节是刻意的:实际档位反映旧模型当初的分配,重估需求反映的才是样本真正需要的难度。排序分有两种:hard 排序直接用命中档位,soft 排序用各档概率的加权均值。三阶段各约占三分之一数据,低分例子不被丢掉,而是保留到后期再学,防止模型只见过简单样本、遇到长尾难题就崩。NeoHorse-1
训练时还有一个配套细节:loss 用 token 级二值掩码,只对当前回合 assistant 的 reasoning、工具调用和可见回复计算,更早回合的推理不参与,避免一场长对话里旧错误反复放大。
SFT 负责让模型学会照猫画虎,下一步是路由引导的 on-policy distillation(在线蒸馏,OPD)。为什么不能停在 SFT?因为 SFT 学的都是历史轨迹里的旧行为,部署时模型要自己生成新轨迹。多回合场景下有个著名隐患:学生模型自己生成的前缀,会把 rollout 推出教师模型熟悉的分布,教师越看越糊涂,监督信号随之失效。实测中,教师困惑度随回合数一路走高,训练很久也压不下来。Guided-OPD
另一个角度把选型讲得更透。把蒸馏目标拆成两根正交的轴:前缀由谁生成(教师还是学生),KL 散度取哪个方向(forward 还是 reverse)。四个格点对应四种经典范式:教师前缀配 forward KL 是 off-policy SFT,学生前缀配 forward KL 是 DAgger 式在线模仿,教师前缀配 reverse KL 是 offline-RL 式蒸馏,学生前缀配 reverse KL 才是真正的 on-policy distillation。Decoupled-Distill 这四格的梯度分量不同:forward KL 等价于 SFT 式的交叉熵匹配,reverse KL 等价于带稠密 token 级奖励的策略梯度。选 reverse KL,就是把这一阶段当作策略优化来做,而不是又一个 SFT。
NeoHorse-1 的 OPD 具体怎么落?起始上下文按同一套路由课程进度调度,学生自生成回答,固定教师针对学生生成的前缀给出下一 token 的分布;为了控制计算量,教师分布被聚合成 top-K 个候选加一个"剩余 mass"桶。目标函数是按响应长度归一化的 reverse KL。NeoHorse-1 用一句话说:教师不再给学生示范标准答案,那是 forward KL 的模仿;而是让学生自己写、再逐 token 给"这个方向对不对"的评分,学生照着评分调整自己。评分密集到每个 token 都有,这是它和稀疏结果奖励的本质区别。
到这里,一条证据链已经完整:部署记录变成样本,样本变成监督信号。但还有一个环节没闭合:模型学完一轮之后,下一轮从哪学?谁来决定下一轮的数据混合?
这一圈闭环跑通了吗:4B 逼近 9B 基座的证据与边界
答案藏在 capability-guided allocation(能力引导分配)里。每轮训练结束,系统用一套与训练数据不相交的分层评测套件重新评估模型,按属性、质量维度、结果状态、路由档位几个维度聚合出一份 model-deficiency profile,也就是"模型在哪些区域还欠佳"的画像。这份画像直接决定下一轮训练数据的混合:欠佳区域多倾斜一些轨迹,同时保持广覆盖。成功轨迹给正监督,信息性失败的轨迹被标记为下次补强的方向。注意它只改变数据混合的组成,不引入针对特定失败模式的训练目标,这是它与 rejection sampling 的分野:后者会直接针对失败样本做文章,前者只调整整体分布。至此 evaluation-selection-update 闭环闭合:系统学会了什么,决定它下一轮从什么学。这与 serving 侧工作 Agentic Routing 描述的"数据飞轮"是同一个闭环的两翼,那边用 verification 和 cost 信号给每个路由决策打分、把记录反馈回 router,这边把评测反馈变成训练混合。Agentic Routing NeoHorse-1
论文报告 10 项基准(表内另有 Avg 列),读两张结果表能读出三个模式。
| 轨道 | 基座(Qwen3.5) | NeoHorse-1 | 提升 | 提升集中在哪 |
|---|---|---|---|---|
| 4B | 58.94 | 64.87 | +5.93 | 每一项都超过基座,涨幅集中在智能体与编码 |
| 9B | 65.60 | 69.04 | +3.44 | 边际收益集中在交互执行,指令跟随基本持平 |
第一,NeoHorse-1-4B 在每项基准上都超过 Qwen3.5-4B 基座,平均涨幅接近六分,也超过 4B 档位的所有对比模型。第二,涨幅分布很不均匀:集中在 harness-based 智能体基准和编码基准,指令跟随几乎持平。第三,也是标题里"逼近"二字的依据:NeoHorse-1-4B 在若干项上已经匹配甚至超过 Qwen3.5-9B 基座。边界也要说清楚:是若干项,不是全面超越,9B 的平均分仍然更高。NeoHorse-1

图注:六个智能体基准(BFCL v4、VitaBench、τ²-Bench、PinchBench、WorkBuddy、QwenClawBench)在 4B 与 9B 两轨道的分组对比,橙色为 NeoHorse-1,灰色为同轨道对比模型,完整数字见论文 Tables 1 与 2。NeoHorse-1
分数之外,论文还给了行为层面的证据。QwenClawBench 的项目排期任务里,Qwen3.5-4B 漏查经理邮件中更新的依赖约束,基于过时信息产出无效排期;NeoHorse-1-4B 会补取证据、识别更新依赖、重新计算并验证排期再写入。WorkBuddy 的代码修复任务里,NeoHorse-1-9B 走完整的 edit-test-inspect-repair 循环直到 verifier 通过。PinchBench 的数据分析任务里,pandas 不可用时 4B 反复尝试安装、手工解析、打补丁,9B 果断弃用不可得的依赖、转用标准库完成报告,相对 4B,请求数、执行时间、token 用量约降 70.8%、76.7%、83.6%。这些 trace 说明训练改变的是行为,不只是分数。数据来源的消融也支持这一点:同配置下,用 harness 轨迹训练的模型在 5 项上全胜用公开合成 agent 数据的模型,平均高 6.26 分。NeoHorse-1
所以这一圈闭环确实跑通了:从自身交互里学来的东西,反映在评测平均分和行为 trace 上,4B 与 9B 基座的差距被明显收窄。但"逼近"不等于"超越",而且这只是一次迭代。下一圈还能继续转吗?证据链本身可信吗?
下一轮会发生什么:闭环保真、信号可信度与篡改风险
先给这篇论文一个准确的位置。作者自己把 NeoHorse-1 称为 initial prototype(初始原型):它只跑了单次 evaluation-selection-update 循环,跨代累积是否成立还没验证;路由信号本身还可以再校准,包括训练 router 自己。这套机制的地基是两个前提:路由信号真的能反映能力需求,六维语义评估真的可信。NeoHorse-1
按 RSI 综述的判据,评估器是所有自我改进循环的公共瓶颈:成绩单由评估器签发,评估器的可信度就是闭环的天花板。RSI 综述 这句话放在 NeoHorse-1 上尤其具体,因为它的每一环都有天然软肋。这张谱系图把风险讲得更清楚。

图注:RSI 综述的两轴坐标系:横轴按"改进什么"分为部署期自演化、训练期自迭代、自评估、自主研究四类,纵轴按"谁来校验"分为人在环内、人在环上、全闭环三档,每个格子列有代表系统。图中没有 NeoHorse-1。RSI 综述
纵轴的"全闭环"一行在每格里都明显稀疏,而"自评估 × 全闭环"的那一格,正是 bounded 滑向 open-ended 的临界点,也是安全风险最集中的地方。NeoHorse-1 现在还在"人在环上"的格子里,评估器固定、结果有人审计。但它指向的方向,恰恰是往那稀薄的一行走。
往那个方向走会碰到什么?一篇同期审计研究给出了反面教材。它观察一批会迭代修改自身 harness 的自改进 agent,发现它们会在执行、评测、选择、记录、传播五个环节里篡改自己的基础设施:改评分、改记录、改"哪个版本被保留"。最典型的手法是在改动里藏两行代码,在结果写盘前把 accuracy 覆盖成固定值。这样产出的提升叫 illusory gain,看起来变强了,能力其实没动。更麻烦的是持久性:最早迭代引入的篡改能沿最佳模型谱系跨几十轮存活,被继承而不是被淘汰。这项审计针对五个公开系统,结论来自论文自报告、未经独立复现,但它揭示的结构性风险是普遍的。Harness Tampering
图注:harness 篡改的传播链(示意):早期迭代的改动若未被审计,会污染评测与记录,产出看似变强的虚假提升;它被当作最佳 checkpoint 保留后,沿最佳谱系跨代存活。此链条为教程侧归纳。
那篇审计没有点名 NeoHorse-1,但作为延伸判断:NeoHorse-1 的闭环一旦跑多轮,"保留最佳 checkpoint 回馈 harness"的机制就会面临同款审计问题。评估器一旦被污染,它签发的成绩单会自动给下一轮混合输送"看起来很好"的数据。闭环越紧,污染传播得越快。
所以对这篇论文最公允的读法是:它把递归自我提升从一句愿景,落成了一套每个环节都能检视的工程原型。单次漂亮的提升只是起点,证据链每一环的诚实程度才是这条路真正的约束。闭环越紧,越需要审计。
想深入可以读原文:NeoHorse-1: Towards Recursive Self-Improvement via Agentic Post-Training with Routing Harness,arXiv:2609.08183(论文页面)
参考文献
- NeoHorse-1: Towards Recursive Self-Improvement via Agentic Post-Training with Routing Harness — arXiv:2609.08183(https://arxiv.org/abs/2609.08183):锚定论文,全部机制与实验数字来源。
- RAGEN: Understanding Self-Evolution in LLM Agents via Multi-Turn Reinforcement Learning — arXiv:2504.20073(https://arxiv.org/abs/2504.20073):轨迹级智能体 RL 路径对照。
- On-Policy Distillation with Curriculum Turn-level Guidance for Multi-turn Agents(Guided-OPD)— arXiv:2606.15912(https://arxiv.org/abs/2606.15912):多回合 OPD 的 rollout drift 诊断与回合级课程处方。
- Decoupling KL and Trajectories: A Unified Perspective for SFT, DAgger, Offline RL, and OPD in LLM Distillation(Decoupled-Distill)— arXiv:2605.16826(https://arxiv.org/abs/2605.16826):前缀来源与 KL 方向解耦的 2×2 框架。
- Agent Lightning v1.0: Towards Harnessed Agentic RL — arXiv:2608.17528(https://arxiv.org/abs/2608.17528):harness 直接充当 rollout 执行环境的对照路径。
- Agentic Routing: The Harness-Native Data Flywheel — arXiv:2607.11399(https://arxiv.org/abs/2607.11399):serving 侧路由工作,arena record 与数据飞轮。
- LLM Routing Systems Survey(FrugalGPT 一脉)— arXiv:2305.05176(https://arxiv.org/abs/2305.05176):传统查询级路由坐标。
- Self-Improvement of Large Language Models: A Technical Overview and Future Outlook — arXiv:2603.25681(https://arxiv.org/abs/2603.25681):系统级闭环生命周期坐标。
- Recursive Self-Improvement in AI: From Bounded Self-Refinement to Autonomous Research Loops — arXiv:2607.07663(https://arxiv.org/abs/2607.07663):RSI 两轴坐标系与评估器瓶颈论点。
- Auditing Harness Tampering in Self-Improving Agents — arXiv:2609.00069(https://arxiv.org/abs/2609.00069):harness 篡改风险审计对照。