2025 年 1 月,DeepSeek R1 开源的那个周末,AI 圈过年了。
原因不复杂:一个 MIT 协议、能搬回家自己跑的开源模型,在数学和编程推理上追平了当时最贵的闭源旗舰。它证明了一件事——顶级推理能力,不用非得靠 OpenAI 那套神秘管线。
论文《DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning》把家底摊得很开。这篇把它讲透:MoE 架构、原生 CoT、GRPO 强化学习、蒸馏,以及这四件事怎么拼成一台推理机器。
这篇论文在干什么
R1 系列的布局,是三条线并进:
- DeepSeek-R1-Zero:直接对 Base 模型上大规模强化学习,一步 SFT 冷启动都不做,专门测试"纯 RL 能把推理能力逼到什么程度"。
- DeepSeek-R1:在 R1-Zero 的基础上加了少量高质量冷启动数据(人工标注或上一代模型生成的优质 CoT),再走多阶段 RL,把可读性和通用性补回来。
- 蒸馏:把 R1 学到的推理范式传给 Qwen、Llama 这些更小的 Dense 模型,7B 到 70B 都有,让小模型也能沾上推理能力。
R1-Zero 的实验结果很有意思:纯 RL 真能把推理练出来,但输出会变得很难看——语言混杂、思路不可读。R1 的冷启动 SFT,就是用来治这个病的。
MoE:大身子,小饭量
R1 的底座是 MoE(Mixture of Experts,混合专家)架构。跟 Dense 模型每次推理把所有参数都过一遍不同,MoE 把网络切成很多个"专家",模型里藏着一个门控网络(Router),每次来一个问题,它像前台一样扫一眼,把活派给几个对口的专家。
好处有两层。一是省算力:几万亿参数的身子里,每次只点亮一小撮,推理成本压得住。二是专才化:面对数学题,路由到在 RL 阶段被数值任务反复喂过的专家;面对编程题,路由到更懂 API 和语法的专家。路由器在训练中会自己学会这套派活逻辑。
代价在工程。负载均衡是最头疼的:路由器派活派偏了,某个专家被挤爆,梯度就不稳,训练直接不收敛。跨节点通信、热点专家拥塞,全是深坑。论文里没有展开 DeepSeek 怎么做的,只暗示工程层面砸了大量优化,才让 RL 在海量样本下跑完。
原生 CoT:把思考写进训练模板
Chain-of-Thought(CoT)本身不新鲜——让模型在给答案之前先输出推理过程。GPT-3.5 时代还得靠提示词"Let’s break down the problem step by step"去哄,模型才肯写过程。
R1 的"原生"就体现在这:它不靠提示词,CoT 是训练模板里写死的。RL 的奖励函数直接对两部分分别打分——模型必须把思考写进 <think> 标签、把答案写进 <answer> 标签,格式错了就扣分。好处是双重的:推理过程稳定存在,而且评估时可以只比对 <answer> 的正确率,不给思考部分打分。
这也是 R1 和 o1 的一个真实差异点。o1 的思维链也是模型内生的,但通常默认不展示,要用户明确要求才输出详细过程;R1 的结构化格式对推理质量的控制更硬,也更容易做格式奖励。
GRPO:没有裁判的强化学习
R1 用的 RL 算法叫 GRPO(Group Relative Policy Optimization),思路一句话:让模型自己的回答互相 PK,不需要单独的裁判。
传统 PPO 那套,要训练一个价值网络(Critic)去预测状态价值,又大又不稳定。GRPO 把它整个扔掉:对同一个问题采样 G 条回答,各自打分,然后只看组内相对排名——谁比谁好,就用这个相对优势去更新策略,再配一个 KL 惩罚防止策略一步迈太大直接崩掉。
奖励设计是这套系统的灵魂,论文里列了四类:
- 正确性奖励:数学题比对答案,编程题上编译器和单测。
- 格式奖励:必须按
<think>/<answer>结构输出,缺失或混乱就扣分。 - 语言一致性奖励:规定中文就全程中文,语言杂糅严重扣分——这是 R1-Zero 的常见病,中英日韩字符混在一起。
- 安全对齐奖励:对有害或侮辱性回答给低分。
还有一层更细的:RL 快收敛时,再采一批推理数据补一轮 SFT,混入写作、角色扮演等通用数据,防止模型变成"只会做题不会聊天"的偏科生,然后再开第二轮 RL 做全场景对齐。R1 最后既会推理又能聊天,靠的就是这个多阶段循环。
和 o1 比一比
论文给了跟 OpenAI-o1-mini、o1-1217 的正面基准对比:AIME 2024、MATH-500 上,R1 的 Pass@1 和 o1-1217 相当甚至略高;Codeforces 编程评级 2029,贴着 o1-1217 的 2061。数学编程是 R1 的主场,通用对话和创意写作则还是 o1 的强项,两边各守一摊。
蒸馏:把功夫传给小徒弟
大模型推理强,但部署贵。论文展示了一条实用路径:让 R1 在约 80 万条推理题上批量出答案,自动判分筛掉错的,留下高质量 (prompt, think, answer) 三元组,去微调 Qwen-7B/14B/32B、Llama-8B/70B 这些 Dense 小模型。
效果惊人:Qwen-32B 蒸馏版在 AIME、MATH 上比原生 Qwen-32B 高十几个点,甚至压过一些商业大模型。花 20% 的算力拿 80% 的性能,蒸馏成了推理能力平民化的主通道。
工程上的坑
论文里还交代了不少翻车现场。Reward Hacking 是典型:如果只按编程题通过率打分,模型会学会写超长代码、堆多种写法去撞测试点,能过但完全不可读——所以格式和语言惩罚必须配套。还有 Policy Reset(策略回溯)、分阶段学习率衰减,都是用来防模型在训练中后期因为学习率波动突然退化。
安全层面,R1 对有害回答给负面奖励做压制,跟 o1 的对齐策略是同一条路线。值得一提的副作用是:<think> 标签让推理过程可见,方便追踪模型什么时候走偏,但代价是多烧上下文 token,长链思考还有暴露内部思路的风险。
R1 真正的意义,是给"顶级推理"定了价:开源、可自部署、数学编程能打。它证明了强推理不归闭源旗舰垄断,训练方法论也能练出来。
论文原文:DeepSeek_R1.pdf(下载)