# 1. DeepSeek-R1推理大模型
# 1.1 模型介绍与评估
# 1.1.1 系列模型介绍
DeepSeek-R1在多个高难度基准测试中表现与OpenAI O1-1217相当,但训练成本更低。与传统的SFT+RL方法不同的是,他们发现即使不使用SFT,也可以通过大规模RL显著提高推理能力。此外,通过包含少量冷启动数据进行SFT就可以进一步提高性能。
- DeepSeek-R1-Zero :不用SFT直接进行RL,也能取得不错的效果。
- DeepSeek-R1 :加入少量CoT数据进行SFT作为冷启动,然后再进行RL,可以取得更优的性能,同时回答更符合人类偏好。
- 用DeepSeek-R1的样例去蒸馏小模型,能取得惊人的效果。
项目地址:https://github.com/deepseek-ai/DeepSeek-R1 (opens new window)
# 1.1.2 模型下载地址
DeepSeek-R1 Models:
Model | Total Params | Activated Params | Context Length | 下载 |
---|---|---|---|---|
DeepSeek-R1-Zero | 671B | 37B | 128K | HuggingFace (opens new window) |
DeepSeek-R1 | 671B | 37B | 128K | HuggingFace (opens new window) |
DeepSeek-R1-Distill Models:
Model | Base Model | 下载 |
---|---|---|
DeepSeek-R1-Distill-Qwen-1.5B | Qwen2.5-Math-1.5B (opens new window) | HuggingFace (opens new window) |
DeepSeek-R1-Distill-Qwen-7B | Qwen2.5-Math-7B (opens new window) | HuggingFace (opens new window) |
DeepSeek-R1-Distill-Llama-8B | Llama-3.1-8B (opens new window) | HuggingFace (opens new window) |
DeepSeek-R1-Distill-Qwen-14B | Qwen2.5-14B (opens new window) | HuggingFace (opens new window) |
DeepSeek-R1-Distill-Qwen-32B | Qwen2.5-32B (opens new window) | HuggingFace (opens new window) |
DeepSeek-R1-Distill-Llama-70B | Llama-3.3-70B-Instruct (opens new window) | HuggingFace (opens new window) |
# 1.1.3 模型效果评估
对于下列所有模型,最大生成长度设置为32768个token。对于需要采样的基准测试,使用temperature为0.6,top-p为0.95,并且每个查询生成64个响应,以估算pass@1。
DeepSeek-R1-Evaluation:
Category | Benchmark (Metric) | Claude-3.5-Sonnet-1022 | GPT-4o 0513 | DeepSeek V3 | OpenAI o1-mini | OpenAI o1-1217 | DeepSeek R1 |
---|---|---|---|---|---|---|---|
Architecture | - | - | MoE | - | - | MoE | |
# Activated Params | - | - | 37B | - | - | 37B | |
# Total Params | - | - | 671B | - | - | 671B | |
英文 | MMLU (Pass@1) | 88.3 | 87.2 | 88.5 | 85.2 | 91.8 | 90.8 |
MMLU-Redux (EM) | 88.9 | 88.0 | 89.1 | 86.7 | - | 92.9 | |
MMLU-Pro (EM) | 78.0 | 72.6 | 75.9 | 80.3 | - | 84.0 | |
DROP (3-shot F1) | 88.3 | 83.7 | 91.6 | 83.9 | 90.2 | 92.2 | |
IF-Eval (Prompt Strict) | 86.5 | 84.3 | 86.1 | 84.8 | - | 83.3 | |
GPQA-Diamond (Pass@1) | 65.0 | 49.9 | 59.1 | 60.0 | 75.7 | 71.5 | |
SimpleQA (Correct) | 28.4 | 38.2 | 24.9 | 7.0 | 47.0 | 30.1 | |
FRAMES (Acc.) | 72.5 | 80.5 | 73.3 | 76.9 | - | 82.5 | |
AlpacaEval2.0 (LC-winrate) | 52.0 | 51.1 | 70.0 | 57.8 | - | 87.6 | |
ArenaHard (GPT-4-1106) | 85.2 | 80.4 | 85.5 | 92.0 | - | 92.3 | |
代码 | LiveCodeBench (Pass@1-COT) | 33.8 | 34.2 | - | 53.8 | 63.4 | 65.9 |
Codeforces (Percentile) | 20.3 | 23.6 | 58.7 | 93.4 | 96.6 | 96.3 | |
Codeforces (Rating) | 717 | 759 | 1134 | 1820 | 2061 | 2029 | |
SWE Verified (Resolved) | 50.8 | 38.8 | 42.0 | 41.6 | 48.9 | 49.2 | |
Aider-Polyglot (Acc.) | 45.3 | 16.0 | 49.6 | 32.9 | 61.7 | 53.3 | |
Math | AIME 2024 (Pass@1) | 16.0 | 9.3 | 39.2 | 63.6 | 79.2 | 79.8 |
MATH-500 (Pass@1) | 78.3 | 74.6 | 90.2 | 90.0 | 96.4 | 97.3 | |
CNMO 2024 (Pass@1) | 13.1 | 10.8 | 43.2 | 67.6 | - | 78.8 | |
中文 | CLUEWSC (EM) | 85.4 | 87.9 | 90.9 | 89.9 | - | 92.8 |
C-Eval (EM) | 76.7 | 76.0 | 86.5 | 68.9 | - | 91.8 | |
C-SimpleQA (Correct) | 55.4 | 58.7 | 68.0 | 40.3 | - | 63.7 |
Distilled Model Evaluation:
Model | AIME 2024 pass@1 | AIME 2024 cons@64 | MATH-500 pass@1 | GPQA Diamond pass@1 | LiveCodeBench pass@1 | CodeForces rating |
---|---|---|---|---|---|---|
GPT-4o-0513 | 9.3 | 13.4 | 74.6 | 49.9 | 32.9 | 759 |
Claude-3.5-Sonnet-1022 | 16.0 | 26.7 | 78.3 | 65.0 | 38.9 | 717 |
o1-mini | 63.6 | 80.0 | 90.0 | 60.0 | 53.8 | 1820 |
QwQ-32B-Preview | 44.0 | 60.0 | 90.6 | 54.5 | 41.9 | 1316 |
DeepSeek-R1-Distill-Qwen-1.5B | 28.9 | 52.7 | 83.9 | 33.8 | 16.9 | 954 |
DeepSeek-R1-Distill-Qwen-7B | 55.5 | 83.3 | 92.8 | 49.1 | 37.6 | 1189 |
DeepSeek-R1-Distill-Qwen-14B | 69.7 | 80.0 | 93.9 | 59.1 | 53.1 | 1481 |
DeepSeek-R1-Distill-Qwen-32B | 72.6 | 83.3 | 94.3 | 62.1 | 57.2 | 1691 |
DeepSeek-R1-Distill-Llama-8B | 50.4 | 80.0 | 89.1 | 49.0 | 39.6 | 1205 |
DeepSeek-R1-Distill-Llama-70B | 70.0 | 86.7 | 94.5 | 65.2 | 57.5 | 1633 |
官方建议:在使用 DeepSeek-R1 系列模型(包括基准测试)时遵循以下配置,以实现预期性能。
- 将temperature设置在 0.5-0.7 范围内(建议为 0.6),以防止无休止的重复或不连贯的输出。
- 避免添加system prompt;所有instructions都应包含在user prompt中。
- 对于数学问题,建议在提示中包含一个指令,例如:“请逐步推理,并将您的最终答案放在 \boxed{} 内。”
- 在评估模型性能时,建议进行多次测试并取平均结果。
此外,DeepSeek-R1系列模型在响应某些查询时倾向于绕过思维模式(即输出<think>\n\n</think>
),这可能会对模型的性能产生不利影响。为了确保模型进行彻底的推理,建议强制模型在每次输出开始时以<think>\n
作为响应。
# 1.2 部署配置要求
# 1.2.1 DeepSeek-R1与蒸馏模型
DeepSeek R1的原版(671B)及各版本蒸馏模型(1.5B-70B)的推理性能及显存要求如下表所示:
# 1.2.2 Unsloth AI的动态量化版
如果服务器集群配置不足以运行原版的671B DeepSeek R1 模型,可以使用Unsloth AI的动态量化版,它的效果比蒸馏模型要好。
动态量化” 的核心思路:对模型的少数关键层进行高质量的 4-6bit 量化,而对大部分相对没那么关键的混合专家层(MoE)进行大刀阔斧的 1-2bit 量化。通过这种方法,DeepSeek R1 全量模型可压缩至最小 131GB(1.58-bit 量化),极大降低了本地部署门槛,甚至能在单台 Mac Studio 上运行。
动态量化模型的下载地址及具体原理介绍这里就不赘述了,详见:https://unsloth.ai/blog/deepseekr1-dynamic (opens new window)
# 1.3 技术报告解读
DeepSeek-R1-Zero证明了,完全不进行SFT,仅依靠RL即可显著提升LLM的推理能力。尽管如此,输出的可读性和混合语言问题依然存在。SFT的目的是让LLM遵循指令,模仿人类语言表达。因此,DeepSeek-R1在训练过程中适度加入了SFT,通过四个阶段的训练进一步提升了推理能力,同时改进了输出的可读性和质量。
技术报告原文:https://arxiv.org/abs/2501.12948 (opens new window)
# 1.3.1 少量数据冷启动
采用一定的手段收集少量高质量数据:比如对于长CoT数据,使用few-shot,直接提示DeepSeek-R1-Zero通过反思和验证生成详细答案,然后通过人工注释者的后处理来细化结果。
总共收集了数千个样本,相比完全不用SFT,收集的样本进行SFT,可以显著增强可读性;同时后续的实验也证明了通过少量数据冷启动也能进一步提升推理能力。
# 1.3.2 对推理场景进行RL
在数学、代码等推理场景中,DeepSeek-R1延续了DeepSeek-R1-Zero的做法,依旧通过RL进行推理能力的提升,这里没有变化。
针对DeepSeek-R1-Zero输出中的语言混合问题,DeepSeek-R1引入了额外的奖励机制——语言一致性奖励。该奖励通过统计输出中目标语言的占比,作为奖励信号与原始准确性奖励结合,最终通过过程反馈进一步优化模型的语言输出,提升其语言一致性。
# 1.3.3 拒绝采样和SFT
这一阶段通过构建推理数据和非推理数据两部分,利用SFT进一步提升模型的通用能力。
- 推理数据:采用拒绝采样从前一阶段的模型中生成推理过程,并引入无法用规则奖励的数据,通过DeepSeek-V3的LLM-as-judge方式进行奖励,过滤掉混合语言、长段落和代码块的CoT数据,共计60万样本。
- 非推理数据:使用DeepSeek-V3生成的推理无关的SFT数据,共计20万样本。
总计生成了80万样本,使用DeepSeek-V3-Base进行了2个epoch的SFT训练。
# 1.3.4 适配所有场景的RL阶段
为了平衡推理能力和通用能力,DeepSeek-R1进行了最后一次RL训练,针对不同数据类型采用了不同的Prompt和奖励机制。
- 对于推理数据,使用DeepSeek-R1-Zero的方法,基于规则的奖励指导数学、编程和逻辑推理领域的学习过程。
- 对于通用数据,使用DeepSeek-V3的RM进行奖励。
- 对于有用性,聚焦评估最终的总结内容,确保其对用户的实用性和相关性,同时减少对推理过程的干扰。
- 对于无害性,评估整个响应过程,包括推理和总结,识别并减少潜在风险、偏见或有害内容。
通过整合奖励信号和多样化数据分布,最终模型既保持了强大的推理能力,又在有用性和无害性上取得了良好平衡,有较好的用户体验。
# 1.4 蒸馏出小参数模型
# 1.4.1 蒸馏模型可取得较好效果
DeepSeek-R1在阶段三“拒绝采样和SFT”时的数据对小模型进行SFT,未经过RL阶段,已经能够取得较好的效果。
# 1.4.2 蒸馏模型比直接训练更好
从实验结果来看,与通过小模型进行SFT+RL训练相比,蒸馏较好性能模型的输出去做SFT会有更好效果,且成本也会低很多。
经验:要实现效果好的小模型,要具备把模型做大的能力。训练出一个效果好的大参数模型,然后再对其蒸馏,效果要远优于直接训小模型。OpenAI的mini系列模型就是在训练了大基座之后再进行蒸馏,在保持模型能力的条件下,大幅降低参数量,减少推理成本。
# 2. o3-mini推理大模型
# 2.1 o3-mini模型发布
2025.1.31,OpenAI发布了o3-mini模型。和前一代o1-mini类似,它也针对STEM(Science、Technology、Engineering、Mathematics)进行了优化,延续了mini系列小而美的风格。ChatGPT Pro、ChatGPT Plus用户从发布日起可以访问OpenAI o3-mini(middle推理)和 OpenAI o3-mini-high模型,免费用户也可以通过选择“Search+Reason”来使用o3-mini来体验搜索。
# 2.2 o3-mini推理性能
技术报告原文:https://cdn.openai.com/o3-mini-system-card.pdf (opens new window)、官方博客原文:https://openai.com/index/openai-o3-mini (opens new window)
人类专家测评显示,大多数情况下o3-mini比o1-mini产生更准确、更清晰的答案,获得了56%的偏好度,同时在处理复杂现实问题时的重大错误率更是降低了39%。
[1] 数学能力上,低推理强度下的o3-mini(low)达到了与o1-mini相当的水平;中等推理强度下能力媲美满血版o1;而一旦推理强度拉满(high),其表现直接超越o1系列一众模型。
在由60多位顶尖数学家准备的FrontierMath难题测试中,高推理强度下的o3-mini相较o1系列也有了大幅提升。官方甚至特意注明,如果搭配Python工具使用,o3-mini(high)在第一次尝试时就解决了超过32%的问题,其中包括28%以上的T3级问题。
[2] 科学能力方面,在PhD水平的物化生问题上,低推理强度下的o3-mini就已经和o1-mini拉开了层级。
[3] 在编码这项重要能力上,o3-mini更是在各层级上领先o1系列。
o3-mini在取得上述领先的同时,响应更快了,其平均响应时间为7.7秒,较o1-mini的10.16秒提升了24%。
# 3. Deep Research深度研究
# 3.1 Deep Research基本介绍
Deep Research是一个利用推理能力综合大量联网信息并为你完成多步骤研究任务的Agent,它能在几十分钟内完成人类需要数小时才能完成的工作。它的背后是一个定制化的o3模型,该模型针对网页浏览和Python数据分析进行了优化,能够利用推理能力搜索、解读和分析互联网上的大量文本、图像和 PDF 文件来生成研究报告。
- 在一系列针对现实问题的公开评估测试中,Deep Research达到了SOTA,其中在Humanity's Last Exam上准确率为26.6%,超过了DeepSeek-R1(9.4%)和o3-mini high(13.0%),在GAIA上达到了72.57,超过之前最好的方法(63.64)。
- 目前的Deep Research也有局限性,比如会在回答中生成虚假信息或做出错误推断,而且可能难以区分权威信息与谣言,而且任务启动时间较长。它的推理成本很高,目前只对ChatGPT Pro用户开放,且每月最多支持100次查询,后续会逐步开放。
官方介绍:https://openai.com/index/introducing-deep-research (opens new window)
# 3.2 Deep Research使用示例
Deep Research vs GPT-4o:
功能 | GPT-4o | Deep Research |
---|---|---|
任务类型 | 通用对话 | 深度研究 |
信息获取 | 主要为训练数据 | 实时联网搜索 |
报告级别 | 快速总结 | 专业级研究报告 |
引用来源 | 仅搜索任务有 | 清晰引用、可验证 |
Deep Research使用示例如下:
# 4. 简洁答案的准确率更高
# 4.1 欠思考问题及统计学现象
DeepSeek-R1和o1/o3这类推理大模型带来震撼之际,有人发现了它存在的弱点。来自腾讯AI实验室、苏州大学和上海交通大学的一项最新研究揭示:在遇到高难度问题时,推理大模型可能像“三心二意的学生”一样频繁切换解题思路,却因缺乏深入探索而失败——这种现象被研究者称为Underthinking(欠思考)。
通过分析AI的错误答案,他们发现当前的推理大模型经常在思考早期就走上了正确的路线,但倾向于“浅尝辄止”,很快开始探索别的思路,导致后续生成的数千个tokens对解题毫无贡献。这种“无效努力”不仅浪费计算资源,还显著降低了答案的正确率。
论文地址:https://arxiv.org/abs/2501.18585 (opens new window)
为了系统分析,团队在3个具有挑战性的测试集MATH500、GPQA Diamond和AIME2024上,对类o1模型QwQ-32B-Preview、DeepSeek-R1-671B等进行了实验。下图比较了正确和错误回答中的token使用量和思维切换次数。平均来看,类o1模型在错误回答中比正确回答多消耗了225%的token,原因是思维切换频率增加了418%。
# 4.2 许多被放弃的推理路径存在正确思路
为了深入分析这一现象,研究团队开发了一套评估框架,用于判断被放弃的推理路径是否实际上足以推导出正确答案。结果观察到,许多模型在回答开头阶段的思路是正确的,但并未继续深入完成推理。
超过70%的错误回答中至少包含一个正确的思路。此外,在超过50%的错误回答中,有10%以上的思路是正确的。
# 4.3 思维不足问题在不同数据集表现各异
实验结果表明,所有测试的类o1模型都存在显著的思维不足问题。模型的准确率与思维不足之间的关系在不同数据集上表现各异。在MATH500-Hard和GPQA Diamond数据集上,性能更优的DeepSeek-R1-671B模型在取得更高准确率的同时,其UT得分也更高,表明错误回答中存在更多思维不足。
这意味着,尽管模型整体能力更强,但在不确定时可能生成更长但效率较低的推理过程,可能是因为模型探索了多个错误的推理路径,却未能有效收敛到正确解答。相反,在AIME2024测试集中,DeepSeek-R1-671B模型不仅取得了更高的准确率,还表现出较低的UT得分,反映出较少的思维不足和更高的token效率。
这表明模型在该任务中,即使未得出正确答案,其推理过程依然保持专注和高效,团队表示这可能是因为模型与AIME2024所要求的问题类型和推理过程更好地对齐。理解思维不足现象对于开发能够提供正确答案并具备有效推理过程的模型至关重要。
# 4.4 用思路切换惩罚机制提高思考专注度
研究者借鉴了人类考试策略,提出了一种“思路切换惩罚机制” (Thought Switching Penalty,TIP)。其原理类似于考试时给自己定规矩:“先专注当前方法,至少尝试10分钟再换思路”。技术细节上,TIP会对触发思路切换的关键词施加惩罚,降低这些词在解码过程中的生成概率,迫使模型在当前路径上探索更久。例如,当模型开始写“Alternatively, we can consider…”时,TIP会通过调整参数(惩罚强度α和持续时间β),抑制这种过早的切换倾向。
实验结果显示,加入TIP能让模型在数学测试上的准确率上升,同时UT Score下降,说明既减少了无效切换,又提高了答案质量。例如在AIME2024数学竞赛测试上,加入TIP的QwQ-32B-Preview模型准确率从41.7%提升至45.8%,同时UT Score从72.4降至68.2。这种方式无需重新训练模型,仅需调整解码策略即可。
# 4.5 用简洁解码策略提高回复质量
UC Berkeley的教授Alex Dimakis几乎同时分享了类似的观察:“对于DeepSeek-R1和所有推理模型,错误的答案更长,而正确的答案要短得多”。基于此,他提出一个简单的解决办法,称为简洁解码:“并行运行5次模型,从答案中选择tokens最少的”。初步实验结果表示,简洁解码在AIME2024测试上能提高6%-7%的准确率,比Consensus Decoding更好也更快。
# 5. 参考资料
[1] DeepSeek-R1论文速读 from 吃果冻不吐果冻皮 (opens new window)
[3] 新研究揭示DeepSeek/o3弱点:频繁切换思路放弃正确方向,最短答案往往就是对的 from 微信公众号 (opens new window)
[4] DeepSeek独立发现o1核心思路,OpenAI首席研究官亲自证实 from 微信公众号 (opens new window)
[5] OpenAl o3-mini System Card from OpenAI官网 (opens new window)
[6] OpenAI推o3-mini新模型,被DeepSeek逼急?定价仍打不过 from 微信公众号 (opens new window)
[7] o3-mini上线,性能未能全面超越DeepSeek R1 from PConline要闻 (opens new window)
[8] OpenAI o3-mini 系统说明书(中文)from 首席AI分享圈 (opens new window)
[9] OpenAI o3-mini from OpenAI官网 (opens new window)
[10] 首个OpenAI免费推理模型o3-mini发布 from 量子位 (opens new window)
[11] 仅需一万块钱!清华团队靠强化学习让 7B模型数学打败GPT-4o from 微信公众号 (opens new window)
[12] DeepSeek R1 671B 完整版本地部署教程来了 from 微信公众号 (opens new window)
[13] OpenAI紧急直播,ChatGPT疯狂开挂「深度研究」!10分钟爆肝万字现AGI雏形,刷榜人类最后考试 from 微信公众号 (opens new window)
[14] Introducing deep research from OpenAI官网 (opens new window)
[15] Thoughts Are All Over the Place: On the Underthinking of o1-Like LLMs from Arxiv (opens new window)
[16] 聊聊DeepSeek-R1的技术路径 from 吃果冻不吐果冻皮 (opens new window)
[17] Run DeepSeek R1Dynamic 1.58-bit from Unsloth AI (opens new window)
[18] 如何评价DeepSeek等大模型在中科院物理所理论竞赛中的表现 from 知乎 (opens new window)
[19] 部署满血DeepSeek R1的避坑指南-vLLM 0.7.1 from 微信公众号 (opens new window)
[20] DeepSeek R1 671B 完整版本地部署教程来了 from 微信公众号 (opens new window)