
文章摘要
【关 键 词】 AIGC、开源模型、大语言模型、深度学习、技术发展
全球著名大模型开放平台Hugging Face近日开源了顶级小参数模型SmolLM3,该模型仅有30亿参数,但其性能显著超越了Llama-3.2-3B和Qwen2.5-3B等同类开源模型。SmolLM3支持128k上下文窗口,并能够处理英语、法语、西班牙语、德语等六种语言,同时具备深度思考和非思考双推理模式,用户可根据需求灵活切换。Hugging Face的联合创始人Clement Delangue和Thomas Wolf对该模型给予了高度评价,认为它是3B参数领域的SOTA模型,非常适合用于开源模型的研究。
在架构方面,SmolLM3采用了transformer解码器架构,基于Llama进行了一些关键修改以提高效率和长上下文性能。模型使用了分组查询注意力技术,16个注意力头共享4个查询,在保持全多头注意力性能的同时,显著节省了推理时的内存消耗。此外,训练中采用了文档内掩码技术,确保同一训练序列中不同文档的标记不会相互关注,从而提升了长上下文训练的效果。模型还运用了NoPE技术,有选择地从每第4层移除旋转位置嵌入,进一步改善了长上下文性能。
SmolLM3的训练配置包括3.08B参数,初始化采用N(0, std=0.02),36层结构,Rope theta为50k,序列长度4096,批处理大小236万tokens,优化器为AdamW(eps=1e-8,beta1=0.8,beta2=0.95),峰值学习率2e-4,梯度裁剪1.0,权重衰减0.1。训练过程中,模型在384块H100 GPU上进行了24天的分布式训练,采用张量并行技术,分布在2个GPU上,每个节点容纳4个模型实例,最终扩展到384个节点。
数据混合和训练阶段遵循了SmolLM2的多阶段方法,采用三阶段训练策略,在11.2万亿tokens上进行了训练,混合了网络、数学和代码数据,且比例不断变化。第一阶段(0T→8T tokens)主要建立通用能力,网络数据占85%,代码数据占12%,数学数据占3%;第二阶段(8T→10T tokens)引入了更高质量的数学和代码数据集,网络数据占75%,代码数据占15%,数学数据占10%;第三阶段(10T→11.1T tokens)进一步增加了数学和代码数据的采样,网络数据占63%,代码数据占24%,数学数据占13%。
在中期训练中,模型进行了长上下文扩展和推理适应。长上下文扩展分为两个阶段,每个阶段500亿tokens,先从4k过渡到32k上下文,然后将RoPE theta增加到150万,接着从32k过渡到64k上下文,将RoPE theta进一步增加到500万。推理中期训练数据集包含350亿tokens,来自Open Thought的OpenThoughts3-1.2M和NVIDIA的Llama-Nemotron-Post-Training-Dataset-v1.1的子集,训练模型4个epochs(约1400亿tokens),并将检查点用于后续的SFT(监督微调)阶段。
后期训练中,模型构建了聊天模板,用户可通过在系统提示中包含/think
和/no_think
标志分别激活推理或非推理模式。聊天模板还包含XML工具和Python工具两个不同的工具描述部分,提供了两种推理模式的默认系统消息以及包含日期、知识截止日期和当前推理模式的元数据部分。
SFT(监督微调)阶段在推理中期训练之后进行,该阶段在1400亿tokens的通用推理数据上训练模型,进一步融合了数学、代码、通用推理、指令遵循、多语言和工具调用方面的能力。为解决某些领域缺乏包含推理轨迹的数据集的问题,模型通过在现有非推理数据集的提示下提示Qwen3-32B在推理模式下来生成合成数据。最终的SFT数据集包含18亿tokens,其中10亿为非推理模式,8亿为推理模式,包括12个非推理数据集和10个带有推理轨迹的数据集。
采用APO(锚定偏好优化)进行离策略模型对齐,这是直接偏好优化的一种变体,提供更稳定的优化目标。APO步骤使用Tulu3偏好数据集(非推理模式)和新的合成偏好对(推理模式),合成偏好对由Qwen3-32B和Qwen3-0.6B生成。由于在长上下文基准上观察到性能下降,模型采用模型合并来缓解使用MergeKit库,先将每个APO检查点创建一个模型混合体,然后将模型混合体与具有强大长内容性能的中期训练检查点组合,APO模型混合体和中期训练检查点的线性合并权重分别为0.9和0.1,最终模型恢复了基础模型在高达128k tokens上下文上的RULER分数,并在广泛的任务中保持高性能。
原文和模型
【原文链接】 阅读原文 [ 1678字 | 7分钟 ]
【原文作者】 AIGC开放社区
【摘要模型】 deepseek-v3
【摘要评分】 ★★★★☆