AI-Workshop 文献分享 2026-08-29 21:30

AI-Workshop 文献分享 #21 — Frontis-MA1:面向机器学习工程递归自我改进的 AI4AI 模型

ltw 解读 Frontis-MA1:Frontis.AI 与清华等团队以开源全栈系统 OpenMLE(Gym 可执行任务集 + ERL 四原子操作训练 + Evo 长时程搜索)训练出 350 亿参数的 AI4AI 模型,在 MLE-Bench Lite 上把奖牌率从 39.39% 提升到 71.21%,逼近万亿参数闭源模型;文中同时拆解了进化 / 自进化 / 元进化三个核心概念与论文自陈的局限。

AI-Workshop 文献分享 AI4AI RSI MLE 自我改进 OpenMLE

AI-Workshop 文献分享 #21 — Frontis-MA1:面向机器学习工程递归自我改进的 AI4AI 模型

分享人:ltw | 日期:2026-08-29 21:30

论文:Frontis-MA1: Training an AI4AI Model towards Recursive Self-Improvement in Machine Learning Engineering 团队:Frontis.AI(Horizon Research)+ 清华大学等 arXiv:2607.28568v1(2026 年 7 月)

主题:Frontis-MA1 论文零基础详解 —— 开源全栈系统 OpenMLE 与「元进化」闭环


原论文:《Frontis-MA1: Training an AI4AI Model towards Recursive Self-Improvement in Machine Learning Engineering》 作者团队:Frontis.AI(Horizon Research)+ 清华大学等 arXiv 编号:2607.28568v1(2026 年 7 月)

本文是给完全没接触过相关领域的人写的"论文解说",尽量用大白话,把所有专业词都拆开讲。读完大约需要 15 分钟。


一、先说结论:这篇论文干了件什么事?

一句话版:

他们造了一套"AI 帮 AI 写代码、做实验、调模型"的全套工具(叫 OpenMLE),用这套工具训练出一个 350 亿参数的模型(Frontis-MA1-35B)。这个模型能像人类数据科学家一样,从零开始解机器学习竞赛题,并且在 12 小时内自己不断试错、不断改进自己的代码,最终成绩超过了不少比它大几十倍的闭源大模型。

精确一点的版本(看数字):

在一套叫 MLE-Bench Lite 的机器学习竞赛基准上(22 道题,每道题给 12 小时,只能用 1 张 RTX 4090 显卡、显存限制 12GB):

系统 奖牌率(Medal Average) 超过的人类参赛者比例(Human Rank)
基础模型 Qwen3.6-35B(未训练) 39.39% 0.5828
Frontis-MA1-35B(训练后)+ 搜索框架 60.61% 0.7647
Frontis-MA1-35B + 加强版搜索框架 Evo-Max 71.21% 0.8126
GPT-5.5 + Codex(对照) 68.18% 0.7833
GPT-5.6 Sol + Codex(当前顶尖) 72.73% 0.8891
Kimi K3 + Claude Code(当前顶尖) 72.73% 0.8574

翻译成人话:

  • "奖牌率":22 道题里,有多少比例的题拿到了"奖牌"(成绩进入该竞赛的人类排行榜前列)。
  • 训练让基础模型从 39.39% 涨到 60.61%(纯模型提升),再加上更好的"搜索策略"(就是怎么用这 12 小时)涨到 71.21%(模型 + 方法叠加提升)。
  • 71.21% 这个成绩 超过了 GPT-5.5(68.18%),逼近 GPT-5.6 Sol 和 Kimi K3(都是 72.73%)——而后两者是万亿参数级别的超级模型,Frontis-MA1 只有 350 亿参数,用的还是一张消费级显卡。

这篇论文最想让你记住的一句话:

小模型 + 聪明的"训练 + 搜索"方法,可以打败大模型 + 普通的"一次性生成"用法。


二、零基础扫盲:这些词都是什么意思?

这一节把全文出现的高频概念全部拆开讲。每个词都用"定义 + 大白话 + 例子"的方式。

1. AI4AI(AI for AI,AI 为 AI)

定义:用 AI 系统去构建、改进其他 AI 系统。

大白话:以前是"人训练 AI",现在要变成"AI 训练 AI"。AI 自己写训练代码、自己设计模型结构、自己跑实验、自己调参数。

例子:人类工程师要花几个月做的一个机器学习项目,让 AI 在 12 小时内自己完成"看数据 → 写代码 → 训练 → 调参 → 提交结果"的全流程。

2. RSI(Recursive Self-Improvement,递归自我改进)

定义:一个系统能改进"自己产生下一代系统"的那个过程本身,形成一个不断加速的循环。

大白话:如果 AI 能改进自己的"改进能力",那改进后的 AI 又能改进自己的改进能力……像滚雪球一样越滚越大。1965 年数学家 I.J. Good 就提出过"智能爆炸"(intelligence explosion)的设想——第一个能自我改进的超级智能,可能是人类最后一件事。

注意:这篇论文 没有声称实现了完整的 RSI,只是说"我们造好了通往 RSI 的一级台阶,并踩上去了"。这是个非常严谨、诚实的态度。

3. MLE(Machine Learning Engineering,机器学习工程)

定义:用机器学习解决真实任务的完整工程过程。

大白话:就是我们平时说的"数据科学/算法工程师的工作"——拿到一堆数据,分析它、做特征工程、训练模型、评估效果、不断调优、最后提交一个能用的预测结果。

为什么选它当试验场(论文第 4 页): - 结果可以验证:你写的代码能不能跑、跑出多少分,电脑一测就知道,不需要人主观判断。这让"训练 AI 变得更会干活"成为可能(因为可以自动打分)。 - 过程是迭代的:好的解决方案不是一次生成的,而是反复试错、不断改进出来的。 - 反馈是延迟且嘈杂的:一次实验可能跑几十分钟甚至几小时才出结果,而且有的任务容易、有的任务极难。这正好考验 AI 的"工程耐心"。

4. 进化、自进化、元进化(本文最核心的三个概念)

这四个词的递进关系非常重要,是理解全文的钥匙:

概念 定义 大白话
进化(Evolution) 不断修改候选方案,根据执行反馈淘汰差的、保留好的 像生物进化:变异 + 选择
搜索(Search) 在有限预算内,系统地探索候选方案空间 找宝藏时的不同找法
自进化(Self-Evolution) 把进化过程中产生的经验反馈回模型自身 干完活总结经验,下次更会干
元进化(Meta-Evolution) 连"提出改进的人"本身也被训练了 不只改进方案,还训练"改进方案的人"

论文的核心设计就是"元进化":先用进化过程产生大量数据(谁改进成功了、怎么改进的),再用这些数据去训练模型本身,让模型变得更会改进。模型既是"进化的产物",又是"进化的引擎"——形成一个闭环。这就是模型名字里"Meta"(元)的由来。

5. 训练相关的术语(后面会反复出现)

  • SFT(Supervised Fine-Tuning,监督微调):拿"标准答案"教模型。这里教的不是"这道题怎么写代码",而是"如何改进代码"这类过程性的技能。
  • RL(Reinforcement Learning,强化学习):不给标准答案,让模型自己尝试,根据实际执行得分给奖励,分数高的行为被强化。类似用"考分"而不是"标准答案"来学习。
  • 推理 / 测试时(Inference / Test-time):模型已经训练完了,真正"上考场干活"的阶段。本文说的"搜索"就是发生在推理阶段。
  • Reward Hacking(奖励黑客/奖励作弊):模型发现了一个"分数很高但实际没用"的投机取巧办法。论文专门做了防范(附录 B.6)。

6. 基准测试(Benchmark)是什么?

定义:一套固定的考题 + 评分标准,用来公平地比较不同 AI 系统的能力。

本文用到的两个基准: - MLE-Bench Lite:22 道机器学习竞赛题(真实 Kaggle 比赛的简化版),考察"能不能做好 ML 工程"。 - NatureBench Lite:10 道题,考察"能不能复现 Nature 论文里的科学结果"(蛋白质预测、材料模拟等),用来测试能力的迁移性(学的东西能不能用到别处)。


三、OpenMLE:一套"从环境到训练到搜索"的全栈系统

论文的核心贡献是一个开源系统 OpenMLE,由三层组成。可以用一个形象的比喻来理解:

OpenMLE-Gym = 健身房(提供能练的器械:可执行的题目和沙箱) OpenMLE-ERL = 训练营(教模型四个基本功:起草、改进、调试、交叉) OpenMLE-Evo = 教练团队(上场 12 小时,指挥模型怎么试错、怎么用经验)

三个名字里的字母: - Gym = 健身房(借用了强化学习领域的叫法,OpenAI Gym) - ERL = Evolutionary Reinforcement Learning(进化式强化学习) - Evo = Evolution(进化)

下面分别拆开讲。


第一层:OpenMLE-Gym —— 提供"能真的跑起来"的题目

问题:以前的基准不够用

以前用来训练 AI 做 ML 工程的基准,要么题太少(几十道),要么只有题目没有"能执行的代码环境",要么数据格式乱七八糟。而"训练 AI 干活"和"考试"不一样——必须让 AI 真的跑代码、真的看到执行结果,否则学不到东西。

解法:造了 5,758 个"可执行任务"

每个任务是一个标准化的"任务包",结构长这样:

task_package/
├── raw/                  # 原始资源(如比赛原始文件)
├── data/
│   ├── public/           # AI 能看到的:题目描述、训练数据、测试数据
│   └── private/          # AI 看不到的:隐藏答案(评分时才用)
├── utils/
│   ├── prepare.py        # 数据准备脚本
│   └── metric.py         # 评测脚本(给 AI 的答案打分)

任务从哪来?(三条来源,对应"质量 vs 数量"的权衡)

  1. 人工精选锚点任务(156 个):从已有论文和基准里人工挑选的,质量最高,但数量有限。
  2. Kaggle 数据集(3,362 个):从 Kaggle 平台自动生成,数量大,但质量参差。
  3. Kaggle 比赛(2,240 个):从约 11,000 场 Kaggle 真实比赛里筛出来的——有真人写的题目描述、评测标准、排行榜作证,质量和数量兼顾。筛选时排除了与 MLE-Bench 重叠的比赛(避免"刷题泄漏")。

质量怎么保证?

一道题不是筛出来就能用,要过两道关卡: 1. 可执行性验证:代码能不能跑通?评测脚本能不能给出分数?(自动检查) 2. 语义质量门:用一个 LLM 当"质检员",从五个维度打分——任务有效性、数据充分性、原始数据使用是否充分、任务难度是否合理、数据质量。只有"严格合格"的才保留。

沙箱执行

AI 写的代码在隔离的沙箱环境(Docker 容器)里跑,跑完返回六种反馈之一: 成功完成 / 运行时错误 / 缺代码 / 缺提交 / 评分失败 / 超时。

关键设计:AI 能拿到的不只是"分数",还有日志、错误类型、运行时间、产物等"结构化反馈"。这让它分得清"代码写错了"和"代码没错但分数低"——后者需要改进,前者需要调试。


第二层:OpenMLE-ERL —— 训练"四个原子操作"

这是论文最有意思的设计,一定要看懂:

核心思想:不教"整道题",只教"四个动作"

以前训练 ML 智能体,是让它端到端地解决整个任务("给我解出这道题")。OpenMLE 换了个思路:只训练四个"原子操作"(atomic operators),搜索时再把它们自由组合。

操作 英文 大白话 类比
起草 Draft 从零写一版代码 写初稿
改进 Improve 把现有代码改得更好 修改文章
调试 Debug 修好报错的代码 修 bug
交叉 Crossover 把两个方案各自的优点合并 两位作者合作,各取所长

为什么要这样设计? - 搜一次索要调用这几个操作成百上千次,所以模型必须"每个动作都练熟",而不是只会一次性生成完整方案。 - 训练好的操作是"可复用"的,任何搜索框架都能组合使用——把"模型的技能"和"搜索的算法"解耦了。

训练分两步走:SFT 热身 + RL 强化

第一步:SFT 热身(监督微调,用老师教的)

流程:用一个更强的"老师模型"去跑任务 → 把跑得好的"起草、改进、调试、交叉"过程记录下来 → 作为"标准答案"教给目标模型。

  • 一共收集了 26,259 条训练样本:
  • "平行路径":17,245 条完整的起草方案(分数达标的)
  • "进化路径":9,014 条改进/调试/交叉的局部操作记录
  • 有个聪明的细节叫"预算自适应收集":容易的任务凑够样本就提前停,把算力省下来留给难得多的任务(因为难任务"成功样本"稀少,需要更多尝试)。

第二步:RL 强化(强化学习,用实战的分数教)

流程:让模型自己在沙箱里跑 → 按执行得分给奖励 → 高分行为被强化。

但这里有几个真实世界的难题,论文分别给了解法:

难题 大白话描述 解法
分数不可比 有的任务分数是 AUC(0~1),有的是 log loss(0~∞),范围完全不同 自适应归一化:用每个任务历史分数分布定上下界,把分数映射到 0~1
分数没区分度 很多方案分数都差不多,奖励分不出高下 熵加权:用公式放大"组内最优"的奖励信号(实验显示信号强度提升 4 倍)
成功太稀疏 有些任务很难跑出好分数 上面说的"预算自适应" + 只对有效方案给奖励
跑得太慢 一次执行可能几小时,同步训练要等最慢的 异步采样:哪个跑完用哪个,不等队尾
该改进谁 改哪个"父方案"?全部随机试会浪费算力 三因子选择:按"分数高 + 子代分数方差大(还没试透)+ 访问次数少(还没被冷落)"来选

第三层:OpenMLE-Evo —— 长时程搜索(怎么用好这 12 小时)

模型练好了,上场后怎么在 12 小时内最大化成绩?答案是"进化式搜索":

  1. 维护一个"候选方案库"(像家族族谱,每个方案记录它的"父母"是谁)
  2. 每次选一个父方案,用四个操作生成子方案
  3. 子方案进沙箱执行、打分
  4. 把执行结果沉淀为"经验"(记在方案旁边)
  5. 根据经验决定下一步改谁……循环 12 小时

OpenMLE-Evo 相对旧方法(AIRA-Evo)的三个关键改进:

改进 1:三因子选父母(不只看分数)

旧方法基本只按"当前分数"选父方案,导致搜索总在最强方案周围打转。OpenMLE-Evo 同时考虑三个因素: - 质量:当前分数高不高(利用已有成果) - 进步:相对于它爸爸进步了多少(发现"潜力股") - 新颖:它的方法方向是不是没探索过的(保持多样性)

改进 2:结构化经验卡

每个方案执行完,自动生成一张标准化的"经验卡":从哪来的(哪个操作的产物)、成绩多少、比父母进步多少、用了什么方法、跑了多久、是第几名……全局再汇总成"经验板",展示整个搜索家族的状态(哪些方向没试过、哪些错误反复出现等)。这些信息全是确定性提取的,不用花 token 让 LLM 去总结。

改进 3:按需生成记忆(省 token 的关键)

旧方法会给每个方案都生成一段自然语言总结,塞进每次请求的上下文——又贵又乱。OpenMLE-Evo 只在"真要用到某个方案"时才生成总结,而且只提炼与当前操作最相关的部分: - 改进操作 → 给"这个方案的祖先 + 它的兄弟姐妹"的相关信息 - 交叉操作 → 同时给两个父母各自的信息 - 调试操作 → 检索"犯过同样错误"的历史

效果数据(同一模型、同一预算下对比旧框架): - 总 token 消耗:1.293 亿 → 0.753 亿(降 41.7%) - 每百万 token 发现的"新纪录"次数:1.77 → 3.27(涨 84.3%) - 改进操作的平均提示长度:102.8K 字符 → 35.7K(降 65.3%)

一句话:花更少的钱,干出更多的活。


四、实验结果:用数字说话

4.1 实验怎么设计的?(控制变量,很严谨)

论文做了三组对照,逻辑非常清晰:

对比 操作 证明什么
换模型 同一个搜索框架,把 Qwen3.6 换成 Frontis-MA1 训练有效(+21.22 个百分点)
换框架 同一个模型,把通用框架换成 OpenMLE-Evo 搜索有效(比 Claude Code/Codex 强)
跨模型复现 再用 30B 的模型跑一遍同样的训练 提升不是偶然(34.85% → 53.03%)

4.2 换模型:训练带来的提升

同样用 OpenMLE-Evo 框架: - Frontis-MA1-35B(60.61%)> Qwen3.6-35B(39.39%)→ 训练净赚 21.22 个百分点 - Frontis-MA1-30B(53.03%)> Qwen3-30B(34.85%)→ 复现成功,净赚 18.18 个百分点

4.3 换框架:搜索带来的提升

同样一批前沿模型,换框架后成绩对比: - GLM-5.2:Claude Code 59.09% → OpenMLE-Evo 62.12% → Evo-Max 66.67% - MiniMax M3:Codex 54.55% → OpenMLE-Evo 59.09% → Evo-Max 65.15% - Kimi K2.6:Claude Code 59.09% → OpenMLE-Evo 66.67%

同一个模型,换个更懂 ML 工程的搜索策略,成绩就涨——说明提升来自方法本身,不是单一模型运气好。

4.4 长期自我改进:12 小时里发生了什么?

论文用两个真实案例(都有详细的"过程回放")展示了搜索过程:

案例一:叶子分类任务(图像 + 表格的多模态分类) - 前几个操作:调试让代码能跑、建立两个分支(图像分支 + 表格分支) - 中期:交叉操作合并两个分支,做出混合模型 - 后期:改进操作把模型升级成更强的骨干网络 → 最后 85% 的成绩提升来自后期的改进和交叉,而不是反复修 bug - 结果:拿到铜牌;对比模型最高只到 0.6303,没拿到牌

案例二:鸟类叫声识别(音频分类) - 早期:调试修复提交格式 - 中后期:交叉操作反复合并"稳健解析 + 数据增强 + 特征融合"的优势 - 关键细节:记忆系统标记了一个"表现差的方向"作为负面证据,避免后续方案继承它的缺点 - 结果:拿到银牌;对比模型最高 0.2963,没拿到牌

这两个案例传达的核心信息:12 小时不是浪费在反复修 bug 上,而是花在"积累经验 → 组合优势 → 升级方案"上。

4.5 能力迁移:换个领域还灵不灵?

拿 NatureBench Lite(10 道复现 Nature 论文的任务,完全不同风格)做测试: - 固定框架,把模型从 Qwen3.6 换成 Frontis-MA1:Match-SOTA(达到论文水平)从 50% → 70% - 固定模型,把框架从旧版换成 OpenMLE-Evo:Match-SOTA 从 20% → 50%

结论:训练出来的"改进能力"和搜索框架都不只是会做竞赛题,能迁移到科学任务。

4.6 还有个细节:奖牌的"质量"也提高了

不只是"多拿了几块牌",拿的牌还更值钱了:Gold 金牌的比例显著上升。说明训练 + 搜索不只是让方案"勉强够到奖牌线",而是整体提升了方案质量。


五、为什么这篇论文重要?

  1. 开源全栈,可以复现:任务数据集、训练代码、沙箱环境、搜索框架、模型权重全部开源。这在 AI 领域很难得——很多技术报告只给结论不给材料。
  2. "元进化"闭环的工程实现:用进化产生的经验回头训练"进化者"本身,让模型既是进化的产物、又是进化的引擎。这是从"AI 帮 AI 干活"走向"AI 改进自己的改进能力"(RSI)的关键一步。
  3. 小模型打败大模型:350 亿参数的模型 + 一套好方法,追平万亿参数闭源模型——证明"训练 + 搜索"的工程方法可以大幅弥补模型规模差距。
  4. 可验证的能力:所有成绩都是在第三方基准上实测出来的,而且做了严格的控制变量,可信度高。

六、论文自己承认的不足(诚实清单)

论文在"限制与未来工作"一节明确说了五个还没做到的事:

  1. 只会看"最终分数":系统不知道"这个研究方向本身有没有前途",只优化方案、不优化想法。
  2. 搜索框架是外挂的:进化搜索是外部程序控制的,模型不能自己决定搜索策略。
  3. 没有参与"造 AI 本身":目前只改进"代码方案",没有参与改进语言模型本身的训练。
  4. 进化系统没有被进化:四个操作和搜索规则是固定的,没有"进化出更好的进化算法"。
  5. 经验利用太初级:只用了质量/进步/新颖三个因子,大量记录下的经验还没用上。

换句话说:这是"通往 RSI 的第一级台阶",不是 RSI 本身。


七、读完你应该记住的三句话

  1. AI 的下一步不是"生成",而是"改进":能不能在有限预算内把方案越改越好,正在成为衡量 AI 能力的新标尺(论文里叫"以最终找到的最佳方案"为评价标准)。
  2. "训练"和"搜索"是互补的:好模型 + 好搜索框架 = 成绩超线性提升。训练给搜索提供"更会改进的引擎",搜索给训练提供"更有价值的经验",两者互相成就。
  3. 通往 RSI 的现实路径是"元进化":让"改进者"本身也被进化过程训练——这个闭环一旦建立,就有了自我加速的可能。Frontis-MA1 是这条路上的一个具体里程碑。

附录:文中出现的专业名词速查表

名词 英文 一句话解释
AI4AI AI for AI 用 AI 构建、改进 AI
RSI Recursive Self-Improvement 递归自我改进:系统改进"产生下一代系统"的过程本身
MLE Machine Learning Engineering 机器学习工程:解决真实 ML 任务的完整过程
元进化 Meta-Evolution 用进化经验训练"进化者"本身
原子操作 Atomic Operators 本文指 Draft/Improve/Debug/Crossover 四个基本操作
SFT Supervised Fine-Tuning 用标注数据教模型
RL Reinforcement Learning 用奖励信号让模型试错学习
奖牌率 Medal Average 拿奖牌的任务比例
人类排名 Human Rank 分数超过的人类参赛者比例
沙箱 Sandbox 隔离的运行环境,防止代码搞破坏
交叉验证 CV (Cross-Validation) 把数据分几份轮流训练/验证,避免过拟合
奖励黑客 Reward Hacking 模型钻奖励漏洞,分数虚高但实际没用
TTA Test-Time Augmentation 测试时数据增强:预测时把输入做多种变换取平均,提升稳定性