预训练的数据红利见底,这事在 2024 年已经成了行业半公开的秘密。真正拉开模型档次的,往往不是 token 总量的堆叠,而是那几百亿「被精心调配过」的语料。NVIDIA 最近在 Nemotron 系列上跑通了一套叫「任务种子合成」(Task-Seeded SDG)的流程,效果有点不讲理:100B token 的续训练投下去,GPQA 涨了 11.1 分,MMLU-Pro 涨 1.8 分,平均代码涨 1.9 分,常识理解涨 1.6 分,而数学成绩原地踏步——不是坏事,是说增量几乎全跑去其他维度了,没有出现跷跷板效应。这种定向施肥式的造数据思路,值得每个做预训练的人拆开看。
不是更多数据,而是「更对」的数据
70 个任务,700 个子任务,一个起点
Nemotron 团队没有自己造一套新 benchmark,而是回过头去扒 lm-eval-harness 里已经公开的 70 个任务——这套评测套件在开源圈几乎是「默认基础设施」。每个任务自带的训练集被当成种子池,拆开看是 700 多个子任务。种子从哪来,决定了合成数据的天花板。用真实的、带标注的训练样本做底子,模型要学的就不是「看起来像题目」的文本,而是真正对应任务分布的认知模式。
这里有个反直觉的判断:合成数据最大的坑不是「假」,而是「假得不带任务结构」。直接从网页抓语料再让 LLM 改写,产出的内容语法完美、信息稀薄,喂给模型等于吃糖水。任务种子的好处在于,每一条新生成的样本都绑着一个具体的能力目标——推理、代码、常识,哪条腿要补,种子就指向那条。
推理与上下文的二次注入
光有题目不够。Nemotron 的流程里,生成新样本之后还要补两层东西:一是推理过程,二是上下文。推理链让样本从「问-答对」升级为「问-思-答链」,这正是当前推理模型训练最稀缺的中间态。上下文则让样本从孤立的 QA 变成有场景的小段文本,喂进预训练阶段后,模型对世界知识的吸收效率明显不同。
这个设计背后是一个朴素的假设:模型在预训练阶段对「过程」的记忆远弱于对「结论」。把推理链塞进语料,等于在续训练里强行灌输思考路径。这条假设是否在更大规模上仍然成立,还需要更多实验——但 100B token 级别的验证至少给了一个不反例。
怎么保证合成数据不是「垃圾进、垃圾出」
格式校验:先过结构关
LLM 生成的内容最容易出问题的不是事实,而是格式——JSON 漏字段、Markdown 多余换行、代码块不闭合。这些毛病一旦进训练集,模型学到的就是「不严谨的输出模式」。Nemotron 的流程在合成阶段后立刻跑一轮格式校验,把结构不达标的样本直接踢出去。这步看起来 low,但工程上能省掉后期大量 debug 时间。
更狠的是去重。合成数据的高发雷区是「同义改写堆量」——同一个题目换种说法产出十条,本质上是一条样本。Nemotron 团队在这一步用相似度匹配做清洗,保留最具多样性的版本。去重不是简单的「差不多的删掉」,而是要保留覆盖任务空间不同角落的样本,这对最终效果的影响往往被低估。
答案验证:最后一道质量闸门
格式对了、内容不重复,还得看答案对不对。Nemotron 的做法是拿真实标签或可验证的程序结果回灌检验,过不了这关的样本直接丢弃。这一步把合成数据的「幻觉率」压到可接受范围——毕竟,喂给模型的错误答案比空答案更有害,因为它会污染模型的置信度校准。
值得注意的一个细节:他们没有公布验证用的模型或工具链具体是什么。但从结果反推,验证环节的投入显然不小——否则 GPQA 涨 11 分这件事很难解释,因为 GPQA 本质上就是考验模型在「推理后给出正确答案」这件事上的稳定性。验证不严,模型在 GPQA 上不会涨,只会越来越会编。
效果分布透露的信号
GPQA 暴涨 11 分意味着什么
GPQA(Graduate-Level Google-Proof Q&A)是一套以「高门槛、难搜索」著称的研究生级问答集,里面的题目设计出来就是为了让普通 LLM 抓瞎。100B token 的任务种子合成数据能把这项指标拉高 11.1 分,而且数学没有掉点,这说明数据分布的指向性极强——不是「什么都有所以什么都涨一点」,而是「对准某些能力精确投喂」。
另一个数字容易被忽视:常识理解涨 1.6 分。这部分通常被认为「吃语料规模」最严重,但 1.6 分的涨幅说明结构化合成数据对常识构建也有正贡献。常识不是靠「看见更多事实」堆出来的,而是靠「在更多场景下正确调用事实」练出来的。任务种子的多样性恰好提供了这种场景覆盖。
为什么数学没涨也没掉
数学指标原地踏步这个结果反而是最有意思的。100B token 的合成数据投下去,数学能力没有被冲掉,说明 Nemotron 团队在种子选择和样本配比上做了相当精细的平衡。预训练里最怕的就是「补了东墙拆西墙」——一项涨一项掉,最后总能力没动。数学不掉,意味着这套流程在「定向增强」和「保持基线」之间找到了一个可用的工程解。
这给行业带来一个提醒:合成数据不必追求全能型提升,精准强化特定维度、同时守住不相关能力,本身就是胜利。后续如果有人想复现 Nemotron 的思路,数学这个「对照组」会是最值得盯的指标——它能告诉你流程有没有副作用。
能复现吗?还差什么
数据配方公开不等于成本透明
NVIDIA 这篇博文把种子来源、生成流程、清洗环节讲得相当清楚,但真正做预训练的人会立刻发现几个没说的东西:用了多大的模型来生成合成数据、推理链的 prompt 模板长什么样、700 个子任务之间的采样权重怎么定。这些细节没公布,复现就只能照猫画虎。
更关键的是 GPU 小时数。生成 100B token 级别的高质量合成数据,背后的算力开销可能比训练本身还夸张。开源社区能不能在消费级或单卡集群上跑出类似效果,目前没有答案。但至少,方法论层面的可借鉴性已经摆在那里了。
对小团队的启示:种子选择比生成器更重要
没有 NVIDIA 的算力,照样能从中提取一条朴素经验:种子比生成器重要。70 个任务、700 个子任务,听起来很多,但相对互联网级语料其实是极小的一个集合。小团队做不起全量合成数据,但完全可以挑几个核心能力对应的种子任务,按这套「生成-校验-验证」的流程做小规模实验,看看自己模型在哪些维度上能立竿见影地涨分。
这条路径的天花板也许不高,但起手成本极低。当大厂在拼谁能造出 100B token 的精调语料时,小团队完全可以在 1B token 级别做出可感知的差距——前提是种子选对、流程走完、不偷工减料。预训练这个赛道,从来不是只有一种赢法。

