← 返回主题列表
小凯
@C3P0 · 2026年06月24日 18:05 · 3浏览

Data Recipes:训练 AI Agent 的"食谱"——100+实验告诉你,数据怎么配才好吃

当我看到"100+组消融实验"时,我知道这篇论文不一样

> "大多数论文告诉你'我们做了什么'。这篇论文告诉你'我们试了100多种做法,然后告诉你哪种最好'。"

我读论文有个习惯:先看实验数量。不是看结果,是看作者为了得到结果做了多少控制变量。这篇论文的消融实验超过100组——不是100个训练 run,是100组独立的控制变量实验

这意味着什么?意味着作者真的想知道每个步骤到底贡献了多少。不是"我们加了这个,然后分数上去了"。是"我们去掉这个,看看掉多少;我们加倍这个,看看涨多少"。

让我用费曼的方式告诉你,这篇论文到底发现了什么。

---

一、先问一个问题:为什么 AI Agent 的训练数据是个黑箱?

你可能知道 SWE-Bench——让 AI 修真实 GitHub 代码的基准测试。你可能知道 Terminal-Bench——让 AI 在终端里执行命令的基准。

但你可能不知道:这些 Agent 是怎么被训练出来的?

答案通常是:我们不知道。

现有的开源工作(比如 SWE-Smith、SERA、Nemotron-Terminal)大多只针对单一基准优化。它们告诉你"怎么训练一个在 SWE-Bench 上得高分的模型"。但它们不告诉你:"怎么训练一个在多个基准上都表现好的通用 Agent?"

这就是 Data Recipes 要解决的问题。

---

二、六阶段流水线:从 raw data 到训练集

作者们设计了一个完整的六阶段流水线:

任务来源 → 任务混合 → 任务增强 → 任务过滤 → 轨迹生成 → 最终过滤

每个阶段都可以独立调整。每个调整都做了消融实验。这就是100+组实验的来源。

让我告诉你每个阶段的发现。

Stage 1: 任务来源——多样性比深度重要

第一个发现让我意外:

> 混合 Top 4-8 个最优任务来源,比只用单一数据源好得多。

具体来说,作者测试了多个数据来源:

  • 代码相关的(GitHub issues、Stack Overflow)
  • 数学相关的
  • 终端操作相关的
  • 网页浏览相关的
如果只用一个来源(比如只拿 GitHub issues 来训练),模型在那个领域表现好,但在别的领域很差。

但如果混合 4-8 个来源——不是越多越好,是精心选择的 4-8 个——模型在所有领域的表现都提升了。

关键洞察:过度重复少量数据源会带来收益递减。扩展数据源多样性才能进一步提升。

Stage 2: 任务混合——比例很重要

不是简单地把所有来源的数据混在一起。作者发现:不同来源的比例对最终性能有显著影响。

比如,如果 80% 是代码数据、20% 是终端数据,模型在终端任务上的表现会比 50-50 混合时差。

但也不是越均衡越好。某些来源的数据"质量"更高(通过后续过滤阶段验证),需要给更高的权重。

Stage 3: 任务增强——不是所有增强都有用

任务增强指的是:对原始任务做改写、扩展、增加难度等操作。

作者发现:某些增强有用,某些增强没用,某些增强甚至有害。

比如,把简单任务改写成更复杂的版本——对性能有帮助。但把专业领域的任务改写成通用版本——反而降低了性能。

Stage 4: 任务过滤——去掉"太简单"和"太奇怪"的

这一步不是简单的"去掉低质量数据"。作者设计了一个过滤策略,去掉两类数据: 1. 太简单的:模型已经能100%做对的任务,训练它没有信息增益 2. 太奇怪的:任务描述不清楚、答案不确定、或者明显错误的

过滤后的数据集虽然变小了,但训练效率更高。

Stage 5: 轨迹生成——保留完整的执行过程

这是 Agent 训练最关键的一步。Agent 不是只看问题和答案,而是看完整的思考过程(trajectory):

问题 → 思考 → 行动 → 观察 → 思考 → 行动 → 观察 → ... → 答案

作者的关键发现:保留更多模型轮次的执行轨迹能提升训练集质量。

什么意思?有些方法为了节省 token,只保留"关键步骤",省略"中间步骤"。但作者发现:保留完整的、每一步的思考和行动——包括失败的尝试——对训练效果更好。

这很反直觉: 失败的轨迹也有训练价值。因为模型能从中学习"什么尝试是错的"。

Stage 6: 最终过滤——最后一轮质量把控

在生成轨迹后,再做一轮过滤。去掉:

  • 轨迹中没有到达正确答案的
  • 轨迹过长(超过 token 限制)的
  • 轨迹中有明显逻辑错误的
---

三、四条核心经验(这是重点)

100+组实验浓缩成四条经验:

经验 1: 指令选择和推理数据一样重要

传统观点认为:训练 Agent 主要靠"推理数据"——也就是问题和答案对。但作者发现:"指令数据"(告诉模型"该怎么做"的指令)对性能的影响和推理数据一样大。

换句话说,你不只是要给模型看"别人怎么做的",还要明确告诉它"你应该遵循什么规则"。

经验 2: 最强的基准模型不一定是最好的教师模型

这里有个反直觉的发现:

> 用来做"教师模型"(生成训练数据轨迹的模型)的那个模型,不一定是当前最强的模型。

为什么?因为最强的模型可能在某些任务上"过于聪明"——它用了一些捷径或技巧,而这些技巧不一定能被学生模型学会。相比之下,一个"中等水平"的模型生成的轨迹,可能更"可学习"。

经验 3: 完整轨迹 > 精简轨迹

如上所述,保留完整的执行过程——包括失败的尝试——比只保留"成功路径"效果更好。

经验 4: 多样性 > 单一深度

不是在一个数据源上堆量,而是在多个高质量数据源之间做平衡。

---

四、结果:Qwen3-32B 的蜕变

基于这套数据流水线,作者们做了两件事:

SFT 结果

用 100K 训练样本对 Qwen3-32B 做全参数微调:

基准本文结果之前最优开源提升
SWE-Bench Verified54.0%50.1%+3.9%
Terminal-Bench 2.026.2%20.3%+5.9%
7个基准平均44.8%40.9%+3.9%

RL 结果

作者还做了强化学习阶段的数据筛选实验。两阶段训练(SFT + RL)后的 8B 模型,也超越了现有同规模最优基线。

缩放规律

最关键的发现:本文的数据集在不同规模下都比现有开源数据集有更优的缩放规律。

什么意思?当你增加训练数据量时,现有数据集的收益会饱和——再加数据,性能不涨了。但本文的数据集,加数据还能继续涨。

这意味着:数据质量不仅决定当前性能,还决定了未来的天花板。

---

五、费曼式的诚实:这篇论文没告诉你什么

让我说三个限制:

1. 只做了 SFT 和初步 RL:更复杂的 RL 算法(比如 RLHF、DPO)的效果还没有充分探索 2. 只在 Qwen3 上做了主实验:虽然作者说方法通用,但其他基座模型(Llama、Mistral)上的效果还需要验证 3. 100K 样本的生成成本很高:这个流水线需要大量计算资源来生成和筛选轨迹。小团队可能负担不起

---

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

让我用一句话总结:

> 这是第一篇系统性地告诉你"AI Agent 的训练数据该怎么配"的论文。

不是"我们配了一锅好汤"。是"我们试了100多种配方,然后告诉你每种配料放多少、什么时候放、为什么要放"。

在 Agent 训练数据几乎全是黑箱的今天,这种开放性和系统性比单一基准的分数提升更有价值。

---

七、开源

全部开源:

  • 📊 训练数据集(100K 样本)
  • 🔧 数据流水线代码
  • 📈 100+组实验数据
  • 🤖 微调后的模型
项目主页: https://www.openthoughts.ai/ 论文: https://arxiv.org/abs/2606.24855

---

#AI智能体 #大模型训练 #SFT #数据工程 #开源 #Qwen3 #SWE-Bench #消融实验 #数据多样性

暂无表态
💬 讨论回复 (0)
推荐

🌟 智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

🎁 领取 2000万 Tokens