文章摘要
SmolLM3是一款小型、多语言、长上下文推理模型,旨在处理多种语言并支持长文本理解。该模型由多位研究人员共同开发,展示了其在多语言环境下的高效推理能力。
文章总结
文章总结:SmolLM3:小型、多语言、长上下文推理模型
概述
SmolLM3 是一个开源的 3B 参数小型语言模型,旨在高效部署的同时保持强大的性能。它在多个领域表现出色,尤其是在多语言支持、长上下文处理和推理能力方面。SmolLM3 的设计和训练方法公开透明,提供了完整的训练蓝图,帮助社区理解和复现其性能。
主要特点
1. 3B 模型:在 11T 数据上训练,达到 3B 规模的 SOTA 性能,并与 4B 模型竞争。
2. 双模式推理:支持 think 和 no_think 模式,用户可以根据需求选择是否启用推理模式。
3. 多语言支持:支持英语、法语、西班牙语、德语、意大利语和葡萄牙语。
4. 长上下文处理:支持高达 128k 的上下文长度,使用 NoPE 和 YaRN 技术。
训练细节
1. 架构改进:基于 Llama 架构,采用分组查询注意力(GQA)和 NoPE 技术,优化了推理效率和长上下文性能。
2. 三阶段预训练:
- 阶段 1:基础阶段,主要使用网页、代码和数学数据。
- 阶段 2:引入更高质量的数学和代码数据。
- 阶段 3:进一步提升数学和代码数据的比例。
3. 长上下文扩展:通过两阶段训练,将上下文长度从 4k 扩展到 64k,并使用 YaRN 技术扩展到 128k。
4. 推理中训练:在预训练后,使用包含推理痕迹的数据进行中训练,提升模型的通用推理能力。
后训练与对齐
1. 监督微调(SFT):在推理和非推理模式下进行微调,平衡各领域的性能。
2. 锚定偏好优化(APO):使用 APO 技术进行模型对齐,提升模型在数学、科学、代码等任务中的表现。
3. 模型合并:通过合并不同阶段的模型,恢复长上下文性能,同时保持其他任务的竞争力。
评估结果
1. 基础模型:在知识、推理、数学和代码任务上表现优异,尤其在多语言任务中保持一致性。
2. 指令模型:在非推理模式下,SmolLM3 优于其他 3B 模型,接近 4B 模型的性能。在推理模式下,模型在复杂任务(如数学推理和编程)中表现显著提升。
使用方式
1. 本地运行:通过 transformers 库加载模型,支持推理和非推理模式。
2. 工具调用:支持 XML 和 Python 工具调用,用户可以通过系统提示控制推理模式。
结论
SmolLM3 是一个高效、多功能的语言模型,适用于多种任务场景。通过公开训练蓝图和数据集,Hugging Face 希望推动社区在小型模型领域的研究和应用。
资源
- 模型集合:链接
- GitHub 仓库:https://github.com/huggingface/smollm
- HuggingFace 组织:https://huggingface.co/HuggingFaceTB
.png)

.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
评论总结
SmolLM3的性能与适用性
- 主要观点:SmolLM3在3B规模下表现出色,适合边缘/移动设备部署,并且提供了完整的训练方法。
- 关键引用:
- "It's small (3B) and does great on benchmarks. This is a model for edge / mobile deployments so the gains over gemma3-4b are meaningful."
- "Mostly SOTA performance at the 3B level. A notable addition to the small but truly open club of models that provide full disclosure, code, recipes to reproduce their work."
训练成本与开放性
- 主要观点:训练SmolLM3的成本约为100万美元的GPU时间,但其开放性和详细的训练方法值得称赞。
- 关键引用:
- "Looks like ballpark a million dollars of GPU time if you want to train up one for yourself (4000 gpus/24 days)."
- "Very nice write up that’s generous in sharing their learnings."
多语言支持与模型大小
- 主要观点:有人质疑3B模型大小是否主要为了支持多语言功能。
- 关键引用:
- "Can anyone estimate how much of the 3B is necessitated by multi-language support?"
微调与适用性
- 主要观点:SmolLM3在微调方面表现良好,适合企业数据集,尤其是需要在浏览器和移动设备上运行的场景。
- 关键引用:
- "Which small model is good for fine tuning to various enterprise data sets? Our business units are wanting to run small models in browser and on mobile devices, without dealing with RAG and cloud resources."
- "From what I've heard, the llama3 models are fairly easy to fine-tune... How easy is it to finetune smollm3?"
推理与训练方法
- 主要观点:SmolLM3采用了混合推理模式,并通过大规模数据集的推理轨迹进行微调,而非直接应用强化学习。
- 关键引用:
- "It has dual mode reasoning / non_reasoning AND they released the full training method."
- "It’s interesting that it looks like they didn’t apply their own RL to the model, and instead fine tuned on reasoning traces from large datasets and generating reasoning traces from larger models."
幽默与模型命名
- 主要观点:有人对“小型大语言模型”这一命名感到幽默,并调侃了模型的命名逻辑。
- 关键引用:
- "So it's a small large language model? Oh yes, very small. How can it be small and large at the same time?"
- "Yes, precisely. An LLLM."
总结:SmolLM3在3B规模下表现出色,适合边缘和移动设备部署,提供了完整的训练方法,训练成本较高但开放性值得称赞。其微调性能良好,适合企业应用,尤其在多语言支持和推理模式上有独特优势。同时,模型的命名引发了幽默讨论。