把"改稿循环"塞进模型权重里:AREX-2 用长程反思轨迹,让 27B 小模型越改越强
做 Agent 的人大概率都有过这种体验:你给模型套了一层精心设计的脚手架——失败重试、best-of-N 采样、结果回滚——模型本身却只会"一次性交卷"。循环逻辑全在 harness 里,模型自己并不知道什么叫"这一版不行,我改改再来"。一旦脚手架撤掉,或者任务跑到脚手架没预设过的岔路上,整个系统就歇菜了。
智源(BAAI)AREX 团队的新论文 AREX-2(arXiv:2609.38288)就在啃这块硬骨头:怎么把"尝试—反馈—修正"这个循环从脚手架搬进模型权重里。他们的答案不算花哨,但执行得很扎实——合成一大批"一个任务磨几个小时、几百次工具调用、分数一路爬升"的长程改进轨迹,直接 SFT 到一个 27B 模型上。结果有点凶:MLE-bench Lite 拿到 81.8 的 Any Medal 率,刷到了对比表里的第一名;更让我意外的是,训练数据里一条深度研究任务都没有,BrowseComp 却涨到了 84.0。
核心摘要:当前 Agent 训练数据的通病是只留"一次做对"的成功样本,把中间失败、回滚、再尝试的过程全扔了,模型自然学不会自我改进。AREX-2 反其道而行:从 GitHub 仓库和在线评测机构造带可验证打分的任务环境,让 teacher agent 在里面跑数小时的多轮改进,整条轨迹按最终结果筛选、失败轮次刻意保留,拿来微调 Qwen3.8-27B。最终模型在 MLE-bench Lite 拿到 81.8(比最强闭源 baseline 高 9.1 分)、Frontier-CS 70.7,并零新数据迁移到深度研究任务:BrowseComp 84.0、HLE 52.6、GAIA 92.2、DeepSearchQA 93.8。我的判断:这不是底层算法突破,而是一次非常干净的数据配方验证,但"长程反思是可迁移的元技能"这个假设被实验撑住了,值得每个做 Agent 后训练的人细读。
📖 论文信息
- 标题:AREX-2: Advancing Self-Improving Agents through Long-Horizon Reflective Tasks
- 作者:Hongjin Qian、Chaofan Li、Kun Luo、Wenqing Wei、Jianlyu Chen(以上为核心贡献者,共同一作)、Shuqi Lu、Yuyang Hu、Hongwang Xiao、Hui Wang、Chaozhuo Li、Qiwei Ye;Advisor:Zhicheng Dou、Defu Lian;项目负责人:Zheng Liu
- 机构:Beijing Academy of Artificial Intelligence(BAAI,智源研究院)
- 发布时间:2026 年 9 月 29 日
- 链接:https://arxiv.org/abs/2609.38288
- 代码:https://github.com/VectorSpaceLab/AREX-2
- 模型:https://huggingface.co/collections/BAAI/arex-2
🎯 问题动机:训练数据里根本没有"改错"这回事
论文开篇给"自我改进"下了一个挺严格的定义:给定更多轮次预算,Agent 靠自己的判断把解改得更好。注意"靠自己"这三个字——不是脚手架替它决定重试,而是模型自己判断哪里不行、改什么、怎么改。
为什么现在的模型做不到?作者的归因很直接:模型只能学会训练数据里演示过的东西,而现有 Agent 数据几乎不演示改进的过程。
回想一下主流的 Agent 数据合成流程(STaR、ReST 这一路拒绝采样的思路):出一道题,模型解一遍,验证器判对错,对的留下,错的扔掉。这套流程有个隐蔽的副作用——一次就做对的样本最容易收集,所以"漫长改进过程"是最先被丢掉的。中间那些失败的尝试、收到的报错、随后的修正,全部进不了训练集。
结果就是:模型见过正确答案长什么样,但没见过一个答案是"怎么变好"的。这就好比只给学生看满分卷,从来不让他看自己错题的订正过程。
那怎么办?自己造。但造数据之前要回答两个问题:在哪个领域造?怎么造?这两个问题的回答构成了整篇论文的骨架。
🧠 核心形式化:一次讲清"反思"和"长程"各自的职责
论文给了一个我很喜欢的小形式化,把"自我改进"拆成了两个可分离的因子。
设 Agent 在第 \(t\) 轮提交解 \(y_t\),环境返回反馈 \(f_t\)(分数加日志、报错等),\(s_t = \max_{k \leq t} S(y_k)\) 是前 \(t\) 轮的历史最好分数。第 \(t\) 轮的期望增益为:
固定起始分 \(s_0\) 和预算 \(T\) 轮,总改进量就是各轮增益之和:
再定义 \(T^*\) 为"增益仍然不可忽略的轮数"(\(r_t > \epsilon\) 的轮数),\(\bar{r}\) 为这些轮的平均增益,总改进近似为 \(\bar{r} \cdot T^*\)。
这个分解的价值在于,它把两种能力各自的职责说清楚了:
| 能力 | 对应因子 | 通俗解释 | 缺失时的症状 |
|---|---|---|---|
| 反思(Reflection) | \(\bar{r}\),每轮值多少钱 | 看反馈、找短板、做出有效修改 | 轮次再多也是原地打转 |
| 长程执行(Long-horizon execution) | \(T^*\),多少轮还保持有效 | 跨轮次保住有用发现、从失败中恢复 | 改几轮就"失忆",预算给了也白给 |
两者合起来,作者称之为长程反思(long-horizon reflection)。说实话这个分解数学上几乎是平凡的——把总和拆成"均值×个数"谁都会——但它的工程指导意义很强:你优化 Agent 时遇到的瓶颈到底是"每轮改不动"还是"改几轮就崩",对应的干预手段完全不同。后面实验部分会看到,作者确实拿这个框架去解释每一条 scaling 曲线。
🏗️ 方法:三步造出"会改进"的数据

图 3(论文 Figure 3):AREX-2 整体流程。左侧从 GitHub 仓库和在线评测机出发,经分析、构造、执行验证后得到合法环境;中间 teacher agent 在环境中多轮提交—收反馈—反思修订,过程中按需获取操作性知识,整条轨迹成为训练数据;右侧训练出的模型在测试时同样多轮改进,分数随轮次持续爬升。
第一步:选领域——哪里好监督就在哪里学
这里作者押了一个假设,也是全文最重要的一句话:长程反思是与领域无关的元技能。判断解的短板、决定改什么、失败后继续干——这些动作无论解是训练流水线、算法程序还是研究报告,都是一样的。
如果这个假设成立,训练领域就不需要长得像目标领域,而应该选"最适合监督"的领域。作者挑了两个:机器学习工程和算法编程。理由有三条:
- 反馈无歧义:验证集分数、隐藏测试通过率,改没改好一眼见底;
- 改进空间大:从 baseline 到调优集成、从暴力解到近最优解,能改很多轮,天然奖励长轨迹;
- 原料充足:GitHub 和在线评测机上有源源不断的题目、代码和测试。
坦率讲,这个"元技能可迁移"的假设我第一反应是存疑的——ML 工程和深度研究的工作模式差得挺远。但作者聪明的地方在于实验设计:深度研究数据完全沿用上一代 AREX 配方、一条新数据不加,这样深度研究上的任何提升都只能归因于新轨迹带来的迁移。这个对照做得干净,后面细说。
第二步:造环境——原料不是环境,teacher 来编译
GitHub 仓库有代码有数据但没有"任务",评测题目有题面有测试但没有可迭代的沙箱。所以用一个 teacher 模型把原料"编译"成环境 \(e = (\sigma, S)\)——任务描述 \(\sigma\) 加打分函数 \(S\)。
对仓库:teacher 读代码、认出仓库要优化的指标,写出任务、在 agent 看不到的 held-out 数据上算分的评分脚本、装好依赖和数据的沙箱。对评测题:任务就是题面,沙箱里放编译器和样例,\(S\) 是隐藏测试的得分。这里有个细节值得注意:只要评测机允许,分数就做成连续分级而非二值——比如通过测试的比例、启发式解相对已知最优的质量。二值判定只告诉 agent "你还没成",分级分数让每一轮都有信息量。这个设计直觉上很对,credit assignment 的颗粒度直接决定反馈的价值。
环境准入有两道执行级检查:参考解必须能跑出分(证明环境没坏);简单 baseline 必须明显低于参考解(证明有改进空间)。第二条不过的直接扔——没有改进空间的环境产不出"持续改进"的轨迹。
第三步:造轨迹——三个条件逼出长程反思
teacher agent 在环境里跑轨迹,有三个刻意设计的条件:
更多轮次。 预算给到数小时、数百次工具调用的量级,而且明确告诉 agent 预算是多少。知道预算会改变工作方式:先建 baseline、用前几轮做测量、后面的轮次做测量指向的修改,而不是一上来就交卷。这个细节我觉得挺讲究——测试时要 scale 的资源就是轮次预算,那训练轨迹就得演示"怎么把更多预算变成更多改进"。
操作性知识(operational knowledge)。 要改进解,agent 得知道环境怎么用:仓库暴露什么 API、data loader 要什么格式、题目约束允许哪些优化。这些不在题面里,agent 得边干边学——读源码、搜依赖的论文和库、在环境里跑小实验。这些探索动作全部留在轨迹里,模型就从中学到"调查环境本身也是改进的一部分"。部分知识以 skills(放在上下文里的精简文档)形式提供:通用 skills 提前从 ML 仓库和常见实践整理,任务专属 skills 按任务检索构建但剔除任务本身的材料。
反馈在环。 每轮以提交结束,agent 看到分数和环境报告再决定下一步——这就是反思发生的位置。掉分的轮次不删,每个失败后面跟着 agent 的应对,而这正是想让模型学的东西。
训练:整条轨迹选、只在进步的步骤上算 loss
数据筛选和 loss 设计是这篇论文我最欣赏的部分,两个决定都很反直觉但说得通。
轨迹按整条选,不按单步选。 保留条件只有两条:最终分够高(相对参考解设阈值),过程合规(格式正确、没有从 held-out 数据里重建答案之类的作弊)。对单个轮次不做任何要求。所以一条留下的轨迹里可以有失败的运行、分数回退、被放弃的路线。作者的逻辑:如果按步过滤,留下的全是"每步都成功"的样本,模型遇到失败时反而没东西可学——这正是现有数据集的病灶。
loss 只加在推动解前进的决策上。 整条轨迹保留为上下文(失败和回退都在里面,让模型看到需要恢复的状态),但 loss 只作用于"失败之后让事情往前走"的决策:诊断失败、修复、换策略、跑下一个实验、提交改进后的解。反复轮询、无新信息的调用、近重复轮次不算 loss;系统消息、环境报告、检索文档也不算(它们是条件,不是要模仿的输出)。
这个组合很微妙:上下文里全是失败,梯度里全是恢复。模型看到的是真实的脏乱状态,学到的是从脏乱里爬出来的动作。
数据上,新轨迹与上一代 AREX 的深度研究数据(原封不动)混合,微调 Qwen3.8-27B 得到 AREX-2。新轨迹是与旧配方的唯一差别——这句是后面所有迁移结论的实验基础。
📊 实验:源域登顶,跨域白赚

图 1(论文 Figure 1):AREX-2 在六个基准上的位置。左列 BrowseComp(84.0,仅次于 DeepSeek-Pro 和 GPT-5.6 Luna 的 83.x 区间之上)与 DeepSearchQA(93.8,仅落后 Claude Fable 5 的 94.2);中列 HLE(52.6,小模型档第一)与 GAIA(92.2);右列 Frontier-CS(70.7,开源第一)与 MLE(81.8,全表第一)。青色条为 AREX-2,深灰为闭源,浅灰为开源。
主实验一:编码与 ML 工程(训练源域)
| 模型 | 规模 | Frontier-CS | MLE-Lite |
|---|---|---|---|
| GPT-5.6 Sol | – | 76.4 | 72.7 |
| Claude Opus 4.8 | – | 74.5 | 63.6 |
| GPT-5.5 | – | 72.1 | 68.2 |
| Kimi-K3 | 2.8T | – | 72.7 |
| Naive-N0.5-Flash | 309B | – | 73.7 |
| DeepSeek-V4-Pro | 1.6T | 44.7* | 54.5 |
| Kimi-K2.7-Code | 1T | 54.7* | – |
| Frontis-MA1-35B | 35B | – | 71.2 |
| AREX-2 | 27B | 70.7 | 81.8 |
表 1:编码与 ML 工程基准对比(节选)。Frontier-CS 为 188 题 Agent Track,带 * 为作者复现结果;MLE-Lite 报 Any Medal(三个种子均值),由 OpenMLE 复现报告。AREX-2 在 MLE-Lite 上评测时上下文带 skills。
几个数字值得停下来看。MLE-Lite 的 81.8 是全表第一:比最强开源 baseline Naive-N0.5-Flash(73.7)高 8.1 分,比最强闭源 GPT-5.6 Sol(72.7)高 9.1 分。一个 27B 模型在 ML 工程上压过 GPT-5.6 Sol 快 10 个点,这个幅度不是噪声能解释的。Frontier-CS 的 70.7 则是开源第一,比次强的 Kimi-K2.7-Code(54.7)高出 16 分,距 GPT-5.6 Sol 只差 5.7 分。
不过要泼点冷水:MLE-Lite 只是 MLE-bench 的 22 个低复杂度竞赛子集,而且 AREX-2 评测时上下文里带了 skills、预算 12 小时——这是"模型+脚手架"的系统分,不是纯模型分。作者自己在消融里把贡献拆开了(后面说),这点透明度值得肯定,但横向比表时心里要有个数。
主实验二:深度研究(零新数据的跨域迁移)
| 模型 | 规模 | BrowseComp | HLE | GAIA | DeepSearchQA |
|---|---|---|---|---|---|
| Kimi-K3 | 2.8T | 91.2 | 56.0* | – | 95.0 |
| Claude Fable 5 | – | 88.0 | 64.5* | – | 94.2 |
| GPT-5.5 | – | 84.4 | 52.2* | 87.4 | – |
| DeepSeek-V4-Pro | 1.6T | 83.4 | 48.2 | 71.1 | 88.7 |
| Kimi-K2.6 | 1T | 83.2 | 54.0* | 80.6 | 92.5 |
| AREX (122B) | 122B | 82.5 | 52.4 | 85.4 | 89.9 |
| AREX (4B) | 4B | 70.7 | 40.6 | 81.6 | 78.5 |
| AREX-2 | 27B | 84.0 | 52.6 | 92.2 | 93.8 |
表 2:深度研究与通用 agentic 推理基准对比(节选)。HLE 带 * 为全量集结果,未标 * 为纯文本子集。
这张表的关键对照是最后三行。AREX-2 与 AREX(4B/122B)用一模一样的深度研究训练数据,唯一的差别就是新的长程反思轨迹——结果四个基准全面反超,包括参数只有自己零头的 4B 版本和 4.5 倍于自己的 122B 版本。BrowseComp 84.0 还超过了 DeepSeek-V4-Pro(83.4)和 Kimi-K2.6(83.2)这两个庞然大物。
这就是"元技能迁移"假设的直接证据。当然,离最强前沿还有距离——Kimi-K3 的 BrowseComp 91.2、Claude Fable 5 的 HLE 64.5 都明显更高,作者也坦承这个差距。27B 的底座容量摆在那儿,数据配方救不了所有事。

图 2(论文 Figure 2):四个基准上的"参数量—性能"散点。红星 AREX-2 稳定地贴在帕累托前沿左上侧——BrowseComp 84.0 压过 1.6T 的 DeepSeek-V4-Pro;DeepSearchQA 93.8 只输 2.8T 的 Kimi-K3;MLE 81.8 直接坐在所有模型的上面;Frontier-CS 70.7 也只在 GPT-5.6 Sol 和 GPT-5.5 之下。
细粒度分析一:带反馈的轮次 scaling(Frontier-CS)
这个实验直接检验 \(T^*\) 够不够长。188 道 Frontier-CS Agent Track 题,每题 5 小时预算,每轮提交后拿分数反馈。
结果曲线:AREX-2 开局并不领先,但一路爬——1 小时 54.4,2 小时 65.9,5 小时 70.7。对照之下,DeepSeek-V4-Pro 在 2 小时到 44.7 之后彻底停滞,V4-Flash 在 3 小时停在 39.1。更扎眼的细节:AREX-2 第 2 到第 5 小时还在涨 4.8 分,其中最后一小时贡献了 2.2 分。
用前面的框架翻译:两个 baseline 的 \(T^*\) 只有两三小时,预算给再多也没用;AREX-2 的增益在衰减(接近分数天花板是自然的)但到预算耗尽仍为正。优势不是来自开局猛,而是来自有效 horizon 长。这个实验设计得挺有说服力,因为它把"自我改进"从一个模糊口号变成了可测量的曲线斜率。
细粒度分析二:无反馈的轮次 scaling(BrowseComp)
这个实验更狠:BrowseComp 上 agent 全程拿不到任何对错信号,只能凭自己的判断决定接受、修订还是重来。流程是 AREX 那套双循环——内循环收集证据出暂定答案,外循环按模型自信度审计。
结果:准确率从 47 轮的 64.8 一路升到 143 轮的 84.0,收益递减但不止步。同流程跑 AREX(122B)作对照:也涨,但慢得多——约 140 轮时落后 12 分以上;AREX-2 用不到一半的轮数就超过了 AREX 的最终成绩,每轮增益约为其 3 倍,参数量却只有不到四分之一。
每轮增益 3 倍,对应的就是框架里更大的 \(\bar{r}\)。而且因为两边深度研究数据相同、新轨迹里没有任何研究任务,这个差距只能解释为长程反思能力跨域迁移过来了。说实话这是全文我最买账的一组证据——没有外部信号还能越改越对,说明"反思"真的内化进了模型,而不是依赖环境打分喂出来的条件反射。
细粒度分析三:逐步消融(MLE-bench Lite)
五个阶段拆三个因素的贡献:模型、skills、轮数。
| 阶段 | 模型 | skills | 轮数 | MLE-Lite |
|---|---|---|---|---|
| M0 | Qwen3.8-27B(底座) | 无 | 基础 | 28.8 |
| M1 | 底座 | 通用 skills | 基础 | 41.2 |
| M2 | 底座 | 通用+任务专属 | 更多 | 68.2 |
| M3 | AREX-2 | 同 M2 | 基础 | 75.8 |
| M4 | AREX-2 | 同 M2 | 更多 | 81.8 |
三个观察都很干净:
- 操作性知识本身就很值钱:底座模型不训练,光靠 skills 加轮数就从 28.8 拉到 68.2,涨了 39.4 分。这个数字其实也提醒了一点——AREX-2 的 81.8 里有一大块是脚手架(skills+预算)的贡献,不是纯粹的权重能力。
- 训练在 skills 之上还有增量:M2 和 M4 的 skills、轮数完全相同,只差模型,训练带来 13.6 分;甚至少给轮数(M3 vs M2)训练后的模型也赢 7.6 分。
- 训练后的模型才能把更多轮数变成更多分数:M3 到 M4 加轮数再涨 6.0 分,和前面的 scaling 曲线互相印证。
这组消融做得相当诚实,没有藏着掖着 skills 的贡献。但也正因为诚实,我们能看清这张配方里各成分的真实占比——最大的单一杠杆其实是"知识+预算"这个脚手架,训练是在此之上的放大器。
🔬 我的判断
这篇论文最值钱的地方:把"自我改进"从一句口号拆成了 \(\bar{r}\) 和 \(T^*\) 两个可测因子,然后给出了一个可以直接抄的数据配方——选可验证且改进空间大的领域、整轨迹筛选保留失败、loss 只打恢复性决策。每一步都有对应的消融或 scaling 实验背书,逻辑的闭环做得很完整。
几个我想追问的点:
其一,跨域迁移的结论建立在"深度研究数据不变"这一个对照上,方向只有"编码/ML → 研究"一条。反过来成不成立?换一个既不可验证又改进空间模糊的领域(比如开放式写作),这套轨迹还能迁移吗?论文没碰。
其二,81.8 这个数是"模型+skills+12 小时预算"的系统分。消融告诉我们纯训练增量是 13.6 分——依然可观,但读者看主表时容易把全部功劳记在训练头上。作者拆得很清楚,是解读时容易误读。
其三,合成轨迹的成本论文着墨不多。数小时预算、数百次工具调用、teacher agent 加 teacher 模型构造环境——这条流水线的单位成本恐怕不低。结论里提到"让模型自己的轨迹成为下一代训练数据"来闭环,这个方向对,但目前还是展望。
和同期工作的位置:拒绝采样系(STaR/ReST)只留成功一步;AlphaEvolve、AIDE 这类系统把改进循环放在脚手架里;同属 BAAI 系的 Frontis-MA1 也在做 MLE 方向的自改进训练。AREX-2 的差异点不在某个单点技术,而在于把"改进过程本身"当作一等公民的训练信号,并用迁移实验证明这是元技能而非领域技巧。定位上我更愿意叫它一次扎实的数据工程与训练配方贡献,而不是算法层面的突破——但对工程团队来说,这种贡献往往比算法创新更能直接抄走。
落地启发:如果你在做 Agent 后训练,有两件事可以立刻试。一是检查你的数据管线是不是把失败轮次全过滤掉了——如果是,你大概率在系统性地删除"恢复能力"的训练信号;二是如果你的评测里模型"给更多轮次不涨分",先别急着加预算,按 \(\bar{r}\) 和 \(T^*\) 的拆法诊断一下:是每轮改不动(缺反思),还是改几轮就崩(缺长程执行),两者的药方完全不同。
📝 收尾
AREX-2 给出的图景是:自我改进不需要等 RL 范式革命,把轨迹数据造对,SFT 也能让 27B 模型学会越改越强。它真正打开的想象是作者在结论里点的那句——让模型自己的轨迹成为下一代训练数据,把循环彻底闭起来。那一天到来之前,先把"别扔失败轮次"这件事做了,可能就是你手头收益最大的一步。
觉得有启发的话,欢迎点赞、在看、转发。跟进最新AI前沿,关注我