原文链接:DeepSeek-V3
1. 介绍
DeepSeek-V3,一个强大的混合专家 (MoE) 语言模型,拥有 671B 总参数,其中每个 token 激活 37B 参数。
为了实现高效推理和成本效益的训练,DeepSeek-V3 采用了多头潜在注意力 (MLA) 和 DeepSeekMoE 架构,这些架构在 DeepSeek-V2 中得到了充分验证。
此外,DeepSeek-V3 首次提出了无辅助损失的负载平衡策略,并设置了多 token 预测训练目标,以增强性能。
我们在 14.8 万亿多样且高质量的 token 上预训练了 DeepSeek-V3,之后进行了监督微调和强化学习阶段,以充分发挥其能力。
全面评估表明,DeepSeek-V3 超越了其他开源模型,并且在性能上与领先的闭源模型相当。
尽管性能卓越,DeepSeek-V3 的完整训练仅需要 2.788M H800 GPU 小时。
此外,其训练过程非常稳定。在整个训练过程中,我们没有遇到任何无法恢复的损失峰值,也没有执行任何回滚操作。
2. 模型总结
架构:创新的负载平衡策略与训练目标
- 在 DeepSeek-V2 高效架构的基础上,我们首次提出了一种无辅助损失的负载平衡策略,最小化了由于负载平衡而导致的性能下降。
- 我们研究了多 token 预测(MTP)目标,并证明它对模型性能有益。
它还可用于推理加速的推测解码。
预训练:追求极致的训练效率
- 我们设计了一个 FP8 混合精度训练框架,并首次验证了在极大规模模型上使用 FP8 训练的可行性和有效性。
- 通过算法、框架和硬件的共同设计,我们克服了跨节点 MoE 训练中的通信瓶颈,几乎实现了计算与通信的完全重叠。
这大大提高了我们的训练效率,并减少了训练成本,使我们能够在不增加额外开销的情况下进一步扩展模型规模。 - 在仅需 2.664M H800 GPU 小时的经济成本下,我们完成了 DeepSeek-V3 在 14.8T tokens 上的预训练,生产出当前最强大的开源基础模型。预训练后的后续训练阶段仅需 0.1M GPU 小时。
后训练:从 DeepSeek-R1 中蒸馏知识
- 我们引入了一种创新的方法,从长链思维(CoT)模型中提取推理能力,特别是从 DeepSeek R1 系列模型中,将其蒸馏到标准 LLM,特别是 DeepSeek-V3。我们的流程巧妙地将 R1 的验证和反思模式整合到 DeepSeek-V3 中,显著提高了其推理能力。同时,我们也控制了 DeepSeek-V3 输出的风格和长度。
3. 模型下载
模型 | 总参数 | 激活参数 | 上下文长度 | 下载 |
---|---|---|---|---|
DeepSeek-V3-Base | 671B | 37B | 128K | 🤗 Hugging Face |
DeepSeek-V3 | 671B | 37B | 128K | 🤗 Hugging Face |
[!NOTE]
DeepSeek-V3 模型在 Hugging Face 上的总大小为 685B,其中包含 671B 的主模型权重和 14B 的多 token 预测(MTP)模块权重。
为了确保最佳的性能和灵活性,我们与开源社区和硬件供应商合作,提供了多种方式以在本地运行模型。有关详细的步骤,请参阅第 6 节:如何在本地运行。
对于希望深入了解的开发者,我们建议查看 README_WEIGHTS.md,了解有关主模型权重和多 token 预测(MTP)模块的更多细节。请注意,MTP 支持目前仍在社区开发中,我们欢迎您的贡献和反馈。
4. 评估结果
基础模型
标准基准测试
基准(指标) | 样本数量 | DeepSeek-V2 | Qwen2.5 72B | LLaMA3.1 405B | DeepSeek-V3 | |
---|---|---|---|---|---|---|
架构 | - | MoE | Dense | Dense | MoE | |
激活参数 | - | 21B | 72B | 405B | 37B | |
总参数 | - | 236B | 72B | 405B | 671B | |
英文 | Pile-test (BPB) | - | 0.606 | 0.638 | 0.542 | 0.548 |
BBH (EM) | 3-shot | 78.8 | 79.8 | 82.9 | 87.5 | |
MMLU (Acc.) | 5-shot | 78.4 | 85.0 | 84.4 | 87.1 | |
MMLU-Redux (Acc.) | 5-shot | 75.6 | 83.2 | 81.3 | 86.2 | |
MMLU-Pro (Acc.) | 5-shot | 51.4 | 58.3 | 52.8 | 64.4 | |
DROP (F1) | 3-shot | 80.4 | 80.6 | 86.0 | 89.0 | |
ARC-Easy (Acc.) | 25-shot | 97.6 | 98.4 | 98.4 | 98.9 | |
ARC-Challenge (Acc.) | 25-shot | 92.2 | 94.5 | 95.3 | 95.3 | |
HellaSwag (Acc.) | 10-shot | 87.1 | 84.8 | 89.2 | 88.9 | |
PIQA (Acc.) | 0-shot | 83.9 | 82.6 | 85.9 | 84.7 | |
WinoGrande (Acc.) | 5-shot | 86.3 | 82.3 | 85.2 | 84.9 | |
RACE-Middle (Acc.) | 5-shot | 73.1 | 68.1 | 74.2 | 67.1 | |
RACE-High (Acc.) | 5-shot | 52.6 | 50.3 | 56.8 | 51.3 | |
TriviaQA (EM) | 5-shot | 80.0 | 71.9 | 82.7 | 82.9 | |
NaturalQuestions (EM) | 5-shot | 38.6 | 33.2 | 41.5 | 40.0 | |
AGIEval (Acc.) | 0-shot | 57.5 | 75.8 | 60.6 | 79.6 | |
编程 | HumanEval (Pass@1) | 0-shot | 43.3 | 53.0 | 54.9 | 65.2 |
MBPP (Pass@1) | 3-shot | 65.0 | 72.6 | 68.4 | 75.4 | |
LiveCodeBench-Base (Pass@1) | 3-shot | 11.6 | 12.9 | 15.5 | 19.4 | |
CRUXEval-I (Acc.) | 2-shot | 52.5 | 59.1 | 58.5 | 67.3 | |
CRUXEval-O (Acc.) | 2-shot | 49.8 | 59.9 | 59.9 | 69.8 | |
数学 | GSM8K (EM) | 8-shot | 81.6 | 88.3 | 83.5 | 89.3 |
MATH (EM) | 4-shot | 43.4 | 54.4 | 49.0 | 61.6 | |
MGSM (EM) | 8-shot | 63.6 | 76.2 | 69.9 | 79.8 | |
CMath (EM) | 3-shot | 78.7 | 84.5 | 77.3 | 90.7 | |
中文 | CLUEWSC (EM) | 5-shot | 82.0 | 82.5 | 83.0 | 82.7 |
C-Eval (Acc.) | 5-shot | 81.4 | 89.2 | 72.5 | 90.1 | |
CMMLU (Acc.) | 5-shot | 84.0 | 89.5 | 73.7 | 88.8 | |
CMRC (EM) | 1-shot | 77.4 | 75.8 | 76.0 | 76.3 | |
C3 (Acc.) | 0-shot | 77.4 | 76.7 | 79.7 | 78.6 | |
CCPM (Acc.) | 0-shot | 93.0 | 88.5 | 78.6 | 92.0 | |
多语言 | MMMLU-non-English (Acc.) | 5-shot | 64.0 | 74.8 | 73.8 | 79.4 |
[!NOTE]
最佳结果用粗体显示。得分差距不超过 0.3 的被认为在同一水平上。DeepSeek-V3 在大多数基准测试中都取得了最佳表现,特别是在数学和编程任务上。
有关更多评估详情,请查阅我们的论文。
上下文窗口
在“Needle In A Haystack”(NIAH)测试中的评估结果。DeepSeek-V3 在所有上下文窗口长度(最多 128K)上表现良好。
聊天模型
标准基准(大于 67B 的模型)
基准(指标) | DeepSeek V2-0506 | DeepSeek V2.5-0905 | Qwen2.5 72B-Inst. | Llama3.1 405B-Inst. | Claude-3.5-Sonnet-1022 | GPT-4o 0513 | DeepSeek V3 | |
---|---|---|---|---|---|---|---|---|
架构 | MoE | MoE | Dense | Dense | - | - | MoE | |
激活参数 | 21B | 21B | 72B | 405B | - | - | 37B | |
总参数 | 236B | 236B | 72B | 405B | - | - | 671B | |
英文 | MMLU (EM) | 78.2 | 80.6 | 85.3 | 88.6 | 88.3 | 87.2 | 88.5 |
MMLU-Redux (EM) | 77.9 | 80.3 | 85.6 | 86.2 | 88.9 | 88.0 | 89.1 | |
MMLU-Pro (EM) | 58.5 | 66.2 | 71.6 | 73.3 | 78.0 | 72.6 | 75.9 | |
DROP (3-shot F1) | 83.0 | 87.8 | 76.7 | 88.7 | 88.3 | 83.7 | 91.6 | |
IF-Eval (Prompt Strict) | 57.7 | 80.6 | 84.1 | 86.0 | 86.5 | 84.3 | 86.1 | |
GPQA-Diamond (Pass@1) | 35.3 | 41.3 | 49.0 | 51.1 | 65.0 | 49.9 | 59.1 | |
SimpleQA (Correct) | 9.0 | 10.2 | 9.1 | 17.1 | 28.4 | 38.2 | 24.9 | |
FRAMES (Acc.) | 66.9 | 65.4 | 69.8 | 70.0 | 72.5 | 80.5 | 73.3 | |
LongBench v2 (Acc.) | 31.6 | 35.4 | 39.4 | 36.1 | 41.0 | 48.1 | 48.7 | |
编程 | HumanEval-Mul (Pass@1) | 69.3 | 77.4 | 77.3 | 77.2 | 81.7 | 80.5 | 82.6 |
LiveCodeBench (Pass@1-COT) | 18.8 | 29.2 | 31.1 | 28.4 | 36.3 | 33.4 | 40.5 | |
LiveCodeBench (Pass@1) | 20.3 | 28.4 | 28.7 | 30.1 | 32.8 | 34.2 | 37.6 | |
Codeforces (Percentile) | 17.5 | 35.6 | 24.8 | 25.3 | 20.3 | 23.6 | 51.6 | |
SWE Verified (Resolved) | - | 22.6 | 23.8 | 24.5 | 50.8 | 38.8 | 42.0 | |
Aider-Edit (Acc.) | 60.3 | 71.6 | 65.4 | 63.9 | 84.2 | 72.9 | 79.7 | |
Aider-Polyglot (Acc.) | - | 18.2 | 7.6 | 5.8 | 45.3 | 16.0 | 49.6 | |
数学 | AIME 2024 (Pass@1) | 4.6 | 16.7 | 23.3 | 23.3 | 16.0 | 9.3 | 39.2 |
MATH-500 (EM) | 56.3 | 74.7 | 80.0 | 73.8 | 78.3 | 74.6 | 90.2 | |
CNMO 2024 (Pass@1) | 2.8 | 10.8 | 15.9 | 6.8 | 13.1 | 10.8 | 43.2 | |
中文 | CLUEWSC (EM) | 89.9 | 90.4 | 91.4 | 84.7 | 85.4 | 87.9 | 90.9 |
C-Eval (EM) | 78.6 | 79.5 | 86.1 | 61.5 | 76.7 | 76.0 | 86.5 | |
C-SimpleQA (Correct) | 48.5 | 54.1 | 48.4 | 50.4 | 51.3 | 59.3 | 64.8 |
[!NOTE]
所有模型均在限制输出长度为 8K 的配置下进行评估。包含不到 1000 个样本的基准测试进行了多次测试,使用不同的温度设置以得出可靠的最终结果。DeepSeek-V3 是表现最好的开源模型,也在与前沿闭源模型的性能对比中表现出色。
开放式生成评估
模型 | Arena-Hard | AlpacaEval 2.0 |
---|---|---|
DeepSeek-V2.5-0905 | 76.2 | 50.5 |
Qwen2.5-72B-Instruct | 81.2 | 49.1 |
LLaMA-3.1 405B | 69.3 | 40.5 |
GPT-4o-0513 | 80.4 | 51.1 |
Claude-Sonnet-3.5-1022 | 85.2 | 52.0 |
DeepSeek-V3 | 85.5 | 70.0 |
[!NOTE]
英文开放式对话评估。对于 AlpacaEval 2.0,我们使用长度控制的胜率作为评估指标。
5. 聊天网站与 API 平台
你可以在 DeepSeek 官方网站与 DeepSeek-V3 进行聊天:chat.deepseek.com
我们还在 DeepSeek 平台提供了兼容 OpenAI 的 API:platform.deepseek.com
6. 如何在本地运行
DeepSeek-V3 可以通过以下硬件和开源社区软件在本地部署:
- DeepSeek-Infer Demo:我们提供了一个简单且轻量的演示,支持 FP8 和 BF16 推理。
- SGLang:完全支持 DeepSeek-V3 模型,支持 BF16 和 FP8 推理模式,且多 token 预测 即将推出。
- LMDeploy:支持本地和云部署的高效 FP8 和 BF16 推理。
- TensorRT-LLM:目前支持 BF16 推理和 INT4/8 量化,FP8 支持即将推出。
- vLLM:支持 DeepSeek-V3 模型,支持 FP8 和 BF16 模式的张量并行和流水线并行。
- AMD GPU:通过 SGLang 在 AMD GPU 上运行 DeepSeek-V3 模型,支持 BF16 和 FP8 模式。
- 华为 Ascend NPU:支持在华为 Ascend 设备上运行 DeepSeek-V3。
由于 FP8 训练已在我们的框架中原生采用,因此我们仅提供 FP8 权重。如果需要 BF16 权重进行实验,您可以使用提供的转换脚本进行转换。
以下是将 FP8 权重转换为 BF16 的示例:
cd inference
python fp8_cast_bf16.py --input-fp8-hf-path /path/to/fp8_weights --output-bf16-hf-path /path/to/bf16_weights
[!NOTE]
Hugging Face 的 Transformers 目前尚不直接支持。
6.1 使用 DeepSeek-Infer 演示进行推理(仅为示例)
系统要求
[!NOTE]
仅支持 Linux 和 Python 3.10,Mac 和 Windows 不支持。
依赖项:
torch==2.4.1
triton==3.0.0
transformers==4.46.3
safetensors==0.4.5
模型权重和演示代码准备
首先,克隆我们的 DeepSeek-V3 GitHub 仓库:
git clone https://github.com/deepseek-ai/DeepSeek-V3.git
进入 inference
文件夹并安装 requirements.txt
中列出的依赖项。最简单的方式是使用 conda
或 uv
等包管理工具创建新的虚拟环境并安装依赖。
cd DeepSeek-V3/inference
pip install -r requirements.txt
从 Hugging Face 下载模型权重,并将其放入 /path/to/DeepSeek-V3
文件夹中。
模型权重转换
将 Hugging Face 模型权重转换为特定格式:
python convert.py --hf-ckpt-path /path/to/DeepSeek-V3 --save-path /path/to/DeepSeek-V3-Demo --n-experts 256 --model-parallel 16
运行
然后您可以与 DeepSeek-V3 进行对话:
torchrun --nnodes 2 --nproc-per-node 8 --node-rank $RANK --master-addr $ADDR generate.py --ckpt-path /path/to/DeepSeek-V3-Demo --config configs/config_671B.json --interactive --temperature 0.7 --max-new-tokens 200
或批量推理给定的文件:
torchrun --nnodes 2 --nproc-per-node 8 --node-rank $RANK --master-addr $ADDR generate.py --ckpt-path /path/to/DeepSeek-V3-Demo --config configs/config_671B.json --input-file $FILE
6.2 使用 SGLang 进行推理(推荐)
SGLang 目前支持 MLA 优化,DP Attention,FP8(W8A8),FP8 KV 缓存和 Torch Compile,提供了业内领先的延迟和吞吐量性能。
特别是,SGLang v0.4.1 完全支持在 NVIDIA 和 AMD GPU 上运行 DeepSeek-V3,使其成为一个高度通用且强大的解决方案。
SGLang 还支持 多节点张量并行,使您能够在多台网络连接的机器上运行此模型。
多 token 预测(MTP)正在开发中,进展可以通过 优化计划进行跟踪。
以下是 SGLang 团队提供的启动说明:https://github.com/sgl-project/sglang/tree/main/benchmark/deepseek_v3
6.3 使用 LMDeploy 进行推理(推荐)
LMDeploy,一个灵活且高效的推理和服务框架,现已支持 DeepSeek-V3。它提供了离线管道处理和在线部署功能,能够无缝集成 PyTorch 基础的工作流。
有关如何使用 LMDeploy 运行 DeepSeek-V3 的详细步骤,请参阅:https://github.com/InternLM/lmdeploy/issues/2960
6.4 使用 TRT-LLM 进行推理(推荐)
TensorRT-LLM 现在支持 DeepSeek-V3 模型,提供 BF16 和 INT4/INT8 权重选项。目前 FP8 支持正在进行中,将很快发布。您可以通过以下链接访问专为 DeepSeek-V3 支持的 TRTLLM 自定义分支,直接体验新功能:https://github.com/NVIDIA/TensorRT-LLM/tree/deepseek/examples/deepseek_v3
6.5 使用 vLLM 进行推理(推荐)
vLLM v0.6.6 支持在 NVIDIA 和 AMD GPU 上运行 DeepSeek-V3 推理,支持 FP8 和 BF16 模式。除了标准技术,vLLM 还提供了 流水线并行,使您能够在多台通过网络连接的机器上运行此模型。有关详细指导,请参阅 vLLM 指南。您还可以关注 增强计划。
6.6 使用 AMD GPU 进行推理(推荐)
与 AMD 团队的合作使我们实现了对 AMD GPU 的首日支持,完全兼容 FP8 和 BF16 精度。有关详细指导,请参阅 SGLang 指南。
6.7 使用华为 Ascend NPU 进行推理(推荐)
华为 Ascend 社区的 MindIE 框架已成功适配 DeepSeek-V3 的 BF16 版本。有关 Ascend NPU 的逐步指导,请参阅 此处的说明。
7. 许可
此代码库采用 MIT 许可协议。DeepSeek-V3 Base/Chat 模型的使用受 模型许可协议 的约束。DeepSeek-V3 系列(包括 Base 和 Chat)支持商业用途。
8. 引用
@misc{deepseekai2024deepseekv3technicalreport,
title={DeepSeek-V3 Technical Report},
author={DeepSeek-AI and Aixin Liu and Bei Feng and Bing Xue and Bingxuan Wang and Bochao Wu and Chengda Lu and Chenggang Zhao and Chengqi Deng and Chenyu Zhang and Chong Ruan and Damai Dai and Daya Guo and Dejian Yang and Deli Chen and Dongjie Ji and Erhang Li and Fangyun Lin and Fucong Dai and Fuli Luo and Guangbo Hao and Guanting Chen and Guowei Li and H. Zhang and Han Bao and Hanwei Xu and Haocheng Wang and Haowei Zhang and Honghui Ding and Huajian Xin and Huazuo Gao and Hui Li and Hui Qu and J. L. Cai and Jian Liang and Jianzhong Guo and Jiaqi Ni and Jiashi Li and Jiawei Wang and Jin Chen and Jingchang Chen and Jingyang Yuan and Junjie Qiu and Junlong Li and Junxiao Song and Kai Dong and Kai Hu and Kaige Gao and Kang Guan and Kexin Huang and Kuai Yu and Lean Wang and Lecong Zhang and Lei Xu and Leyi Xia and Liang Zhao and Litong Wang and Liyue Zhang and Meng Li and Miaojun Wang and Mingchuan Zhang and Minghua Zhang and Minghui Tang and Mingming Li and Ning Tian and Panpan Huang and Peiyi Wang and Peng Zhang and Qiancheng Wang and Qihao Zhu and Qinyu Chen and Qiushi Du and R. J. Chen and R. L. Jin and Ruiqi Ge and Ruisong Zhang and Ruizhe Pan and Runji Wang and Runxin Xu and Ruoyu Zhang and Ruyi Chen and S. S. Li and Shanghao Lu and Shangyan Zhou and Shanhuang Chen and Shaoqing Wu and Shengfeng Ye and Shengfeng Ye and Shirong Ma and Shiyu Wang and Shuang Zhou and Shuiping Yu and Shunfeng Zhou and Shuting Pan and T. Wang and Tao Yun and Tian Pei and Tianyu Sun and W. L. Xiao and Wangding Zeng and Wanjia Zhao and Wei An and Wen Liu and Wenfeng Liang and Wenjun Gao and Wenqin Yu and Wentao Zhang and X. Q. Li and Xiangyue Jin and Xianzu Wang and Xiao Bi and Xiaodong Liu and Xiaohan Wang and Xiaojin Shen and Xiaokang Chen and Xiaokang Zhang and Xiaosha Chen and Xiaotao Nie and Xiaowen Sun and Xiaoxiang Wang and Xin Cheng and Xin Liu and Xin Xie and Xingchao Liu and Xingkai Yu and Xinnan Song and Xinxia Shan and Xinyi Zhou and Xinyu Yang and Xinyuan Li and Xuecheng Su and Xuheng Lin and Y. K. Li and Y. Q. Wang and Y. X. Wei and Y. X. Zhu and Yang Zhang and Yanhong Xu and Yanhong Xu and Yanping Huang and Yao Li and Yao Zhao and Yaofeng Sun and Yaohui Li and Yaohui Wang and Yi Yu and Yi Zheng and Yichao Zhang and Yifan Shi and Yiliang Xiong and Ying He and Ying Tang and Yishi Piao and Yisong Wang and Yixuan Tan and Yiyang Ma and Yiyuan Liu and Yongqiang Guo and Yu Wu and Yuan Ou and Yuchen Zhu and Yuduan Wang and Yue Gong and Yuheng Zou and Yujia He and Yukun Zha and Yunfan Xiong and Yunxian Ma and Yuting Yan and Yuxiang Luo and Yuxiang You and Yuxuan Liu and Yuyang Zhou and Z. F. Wu and Z. Z. Ren and Zehui Ren and Zhangli Sha and Zhe Fu and Zhean Xu and Zhen Huang and Zhen Zhang and Zhenda Xie and Zhengyan Zhang and Zhewen Hao and Zhibin Gou and Zhicheng Ma and Zhigang Yan and Zhihong Shao and Zhipeng Xu and Zhiyu Wu and Zhongyu Zhang and Zhuoshu Li and Zihui Gu and Zijia Zhu and Zijun Liu and Zilin Li and Ziwei Xie and Ziyang Song and Ziyi Gao and Zizheng Pan},
year={2024},
eprint={2412.19437},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2412.19437},
}
9. 联系方式
如果您有任何问题,请提交问题或通过 service@deepseek.com 联系我们。