小语言模型 · 语言模型 · 开放模型

SmolLM2:数据配方全开源的 1.7B 小模型

SmolLM2 是 1.7B 小模型,约 11T token 分四阶段过量训练。HellaSwag 68.7、MMLU-Pro 19.4 胜过 Llama3.2-1B,且四套数据集一起开源。

SmolLM2:数据配方全开源的 1.7B 小模型

快速答案

SmolLM2 是 Hugging Face 推出的 17 亿参数语言模型,用约 11 万亿 token 过量训练,HellaSwag 拿到 68.7、ARC 60.5、MMLU-Pro 19.4,在通用推理上全面压过 Meta 的 Llama3.2-1B,而体量仍在同一小模型档位。它真正的贡献不是模型本身,而是配方:团队把四套训练数据——FineWeb-Edu、FineMath、Stack-Edu、SmolTalk——全部开源,任何人都能复现整套数据混合,而不只是下载权重。这才是稀缺的部分。多数所谓”开源”小模型只放权重,数据管线一律保密。

四个训练阶段到底在做什么

SmolLM2 是”过量训练”的——它吃了约 11T token,远超 1.7B 参数的算力最优点。赌注在于:一个要被海量部署的小模型,应该尽可能多吸收信号。训练分四个阶段,数据混合刻意逐步变化:

  • 阶段一(0–6T token): 以英文网页文本为主——打通用知识底子。
  • 阶段二(6–8T): 引入数学,提高代码占比。
  • 阶段三(8–10T): 加入更高质量的专项数据集。
  • 阶段四(10–11T): 学习率衰减阶段,上采样最优质的数学与代码数据。

这里藏着一个判断:模型何时见到数据,和见到什么数据同样重要。把最干净的数学和代码留到衰减阶段——此时模型对高信号 token 最敏感——这类经验细节通常锁在实验室里,SmolLM2 把它写了出来。

数据集才是这篇论文的主角

每套数据都针对小模型训练的一个具体短板:

  • FineWeb-Edu——约 1.3T token,用”教育价值”分类器从 Common Crawl 筛出,分类器基于 Llama3-70B-Instruct 标注训练。它和微软 Phi 系列共享一个论点:对容量受限的小模型,筛过的教育文本胜过原始网页规模。
  • FineMath——多达 54B token 的数学数据,分为 FineMath4+(10B,最高质量)和 FineMath3+(34B),筛的是真正的数学推理,而非只是含数字的网页。
  • Stack-Edu——约 125B token 代码,覆盖 15 种语言,从 StarCoder2Data 用各语言专用质量分类器筛出。
  • SmolTalk——指令微调混合集,把 MagPie-Ultra 对话与约束遵循、摘要、改写等定向子集组合在一起。

开源这些数据的意义在于可审计:你能看清到底是什么造出了这些跑分,也能重新混合用于自己的模型。

关键结果

  • 通用推理(基座模型): HellaSwag 68.7、ARC 60.5、PIQA 77.6、MMLU-Pro 19.4——对比 Llama3.2-1B 的 61.2 / 49.2 / 74.8 / 11.7,项项领先。
  • 对比 Qwen2.5-1.5B: 通用推理领先(HellaSwag 68.7 vs 66.4,MMLU-Pro 19.4 vs 13.7),但数学和代码大幅落后:GSM8K 31.1 vs 61.7,MATH 11.6 vs 34.3,HumanEval 22.6 vs 37.2。
  • 指令版: SmolLM2-Instruct 的 IFEval 拿到 56.7(Qwen2.5-1.5B 为 47.4),即便数学逊色,指令遵循更可靠。
  • 更小变体: SmolLM2-360M(4T token)与 SmolLM2-135M(2T token)把配方向下延伸到边缘部署,均用分组查询注意力。

老实说:数学上 Qwen2.5 仍然赢

这篇论文最关键的一个数字是 GSM8K 差距:SmolLM2 基座 31.1,Qwen2.5-1.5B 61.7——约差一半。SmolLM2 是更好的通用小模型,也明确打赢了 Llama3.2-1B,但若你的负载是数学或代码生成,即便 Qwen2.5-1.5B 只开权重,它仍是更强的选择。SmolLM2 赢在推理广度和可复现,而非每一项跑分。

局限与存疑

它的核心权衡是用透明度换峰值能力。开源完整数据配方对研究者价值巨大,但这并不让 SmolLM2 成为最强的 1.7B 模型——Qwen2.5-1.5B 在数学和代码上的领先既大又真实。“过量训练”还有一项没明说的代价:为 1.7B 模型投入约 11T token,是远超算力最优点的算力开销;对要被部署千百万次的模型划算,对一次性训练则浪费。和所有数据筛选类模型一样,跑分依赖于基于 Llama3-70B-Instruct 标注训练的分类器,因此”教育质量”的定义本身就是个模型产物,可能带有自身偏差。此外和任何小模型一样,事实记忆很薄——这些分数衡量的是推理与指令遵循,不是广博知识。

常见问题

SmolLM2 和 Llama3.2-1B 比怎么样?

SmolLM2-1.7B 在所有通用推理跑分上都胜过 Llama3.2-1B:HellaSwag 68.7 vs 61.2,ARC 60.5 vs 49.2,MMLU-Pro 19.4 vs 11.7。在通用推理上它是更强的小模型。

SmolLM2 比 Qwen2.5-1.5B 好吗?

看任务。SmolLM2 在通用推理和指令遵循上领先(IFEval 56.7 vs 47.4),但 Qwen2.5-1.5B 在数学和代码上强得多:基座模型 GSM8K 61.7 vs 31.1,HumanEval 37.2 vs 22.6。

SmolLM2 开源了哪些数据集?

四套:FineWeb-Edu(约 1.3T token 筛选教育网页文本)、FineMath(多达 54B token 数学)、Stack-Edu(约 125B token、15 种语言的代码)、SmolTalk(指令微调混合集)。全部开源,正是这让 SmolLM2 可完整复现。

为什么 SmolLM2 要用 11 万亿 token 训练?

这远超 1.7B 模型的算力最优点——是刻意”过量训练”。赌注是:要被大规模部署的小模型,应尽可能吸收更多高质量信号,哪怕多花训练成本,因为推理的发生次数远多于训练。

SmolLM2 的多阶段训练是什么?

训练在约 11T token 上分四阶段:先英文网页文本(0–6T),再加入数学和更多代码(6–8T),接着是更高质量的专项数据(8–10T),最后是衰减阶段(10–11T),在学习率下降时上采样最优质的数学与代码。

一句话:SmolLM2 用一点峰值数学能力,换来更稀缺的东西——一个数据配方全开源的 1.7B 模型,你能重建它,而不只是运行它。阅读 arXiv 原文