Open-R1:DeepSeek-R1 的完全开放复现
什么是 DeepSeek-R1?
如果你曾为一道棘手的数学题而苦恼,你就会明白多花点时间仔细思考和解决问题是多么有用。OpenAI 的 o1 模型表明,当 LLM 被训练做同样的事情——通过在推理过程中使用更多计算资源——它们在解决数学、编码和逻辑等推理任务方面会显著提高。
然而,OpenAI 推理模型背后的秘诀一直是一个严守的秘密。直到上周,DeepSeek 发布了他们的 DeepSeek-R1 模型,迅速引爆了互联网(以及股市!)。
除了表现与 o1 相当甚至更好之外,DeepSeek-R1 的发布还附带了一份详细的技术报告,概述了其训练方法中的关键步骤。这种方法包含了多项创新,其中最值得注意的是纯粹的强化学习应用于教基础语言模型如何在没有**任何**人工监督的情况下进行推理。如下图所示,如果您拥有一个功能强大的基础模型和高质量的数据混合,构建一个强大的推理模型现在变得非常简单

然而,DeepSeek-R1 的发布留下了几个悬而未决的问题:
- 数据收集:特定于推理的数据集是如何整理的?
- 模型训练:DeepSeek 未发布任何训练代码,因此尚不清楚哪些超参数效果最佳,以及它们在不同模型家族和规模之间有何不同。
- 缩放定律:训练推理模型时,计算和数据之间存在哪些权衡?
这些问题促使我们启动了 Open-R1 项目,这是一项系统性地重建 DeepSeek-R1 的数据和训练流程,验证其主张,并推动开放推理模型边界的倡议。通过构建 Open-R1,我们旨在提供强化学习如何增强推理的透明度,与开源社区分享可复现的见解,并为未来的模型利用这些技术奠定基础。
在这篇博客文章中,我们将深入探讨 DeepSeek-R1 背后的关键要素、我们计划复制的部分,以及如何为 Open-R1 项目做出贡献。
让我们开始吧 🚀!
他们是如何做到的?
DeepSeek-R1 是一个基于 DeepSeek-V3 基础模型构建的推理模型。像任何优秀的推理模型一样,它始于一个强大的基础模型,而 DeepSeek-V3 正是如此。这个 671B 专家混合(MoE)模型的表现与 Sonnet 3.5 和 GPT-4o 等重量级模型不相上下。尤其令人印象深刻的是它的训练成本效率——仅需 550 万美元——这得益于多令牌预测(MTP)、多头潜在注意力(MLA)等架构改进以及大量的(确实,非常多)硬件优化。
DeepSeek 还推出了两个模型:DeepSeek-R1-Zero 和 DeepSeek-R1,每个模型都有独特的训练方法。DeepSeek-R1-Zero 完全跳过了监督微调,完全依赖于强化学习(RL),使用群组相对策略优化(GRPO)来提高过程效率。模型使用一个简单的奖励系统进行引导,根据答案的准确性和结构提供反馈。这种方法帮助模型开发了有用的推理技能,例如将问题分解为多个步骤并验证自己的输出。然而,它的回复通常缺乏清晰度,并且难以阅读。
这就是 DeepSeek-R1 的用武之地。它从一个“冷启动”阶段开始,对一小组精心制作的示例进行微调,以提高清晰度和可读性。在此之后,它经历了更多的强化学习和精炼步骤,包括使用基于人类偏好和可验证奖励的机制拒绝低质量输出,从而创建了一个不仅推理良好,而且能产生精美且一致答案的模型。

这一切听起来很棒,但实际缺少了什么呢?让我们来看看拼图中缺失的部分。
Open-R1:缺失的部分
DeepSeek-R1 的发布对社区来说是一个巨大的福音,但他们并没有发布**所有东西**——尽管模型权重是开放的,但用于训练模型的数据集和代码却没有 😢。
Open-R1 的目标是构建这些缺失的部分,以便整个研究和工业社区可以使用这些方法和数据集构建类似或更好的模型。通过公开进行这项工作,社区中的每个人都可以做出贡献!
如下图所示,这是我们的攻击计划:
- **第一步:** 通过从 DeepSeek-R1 中提取高质量推理数据集来复制 R1-Distill 模型。
- **第二步:** 复制 DeepSeek 用于创建 R1-Zero 的纯 RL 管道。这将涉及为数学、推理和代码策划新的大规模数据集。
- **第三步:** 展示我们可以通过多阶段训练从基础模型 → SFT → RL。

请注意,我们不想止步于数学数据集。在其他领域,如代码,以及医学等科学领域,推理模型可能产生重大影响,潜力巨大。
这项倡议不仅是为了复现成果,更是为了与社区分享见解。通过记录有效、无效以及原因,我们希望能够避免他人将时间和计算资源浪费在无用的路径上。
如果这听起来很有趣,我们很乐意得到你的帮助!无论是贡献代码,还是加入Hugging Face上的讨论,都有很多方式可以参与。让我们一起构建吧!🚀