Type something to search...
DeepSeek V3

DeepSeek V3

  • 62.5K Context
  • 0.14/M Input Tokens
  • 0.28/M Output Tokens

1. 介绍

我们推出了 DeepSeek-V3,这是一款强大的混合专家 (MoE) 语言模型,拥有 671B 的总参数,其中每个令牌激活 37B。 为了实现高效推理和具有成本效益的训练,DeepSeek-V3 采用了多头潜在注意力 (MLA) 和 DeepSeekMoE 架构,这些架构在 DeepSeek-V2 中得到了充分验证。 此外,DeepSeek-V3 首创了一种无辅助损失的负载平衡策略,并设定了多令牌预测的训练目标,以实现更强的性能。 我们在 14.8 万亿多样化且高质量的令牌上对 DeepSeek-V3 进行了预训练,随后进行了监督微调和强化学习阶段,以充分发挥其能力。 全面的评估结果表明,DeepSeek-V3 超越了其他开源模型,性能可与领先的闭源模型相媲美。 尽管表现优异,DeepSeek-V3 完整训练仅需 2.788M H800 GPU 小时。 此外,其训练过程极为稳定。 在整个训练过程中,我们没有经历任何不可恢复的损失峰值,也没有进行任何回滚。

2. 模型摘要


架构:创新的负载平衡策略和训练目标

  • 在 DeepSeek-V2 高效架构的基础上,我们首创了一种无辅助损失的负载平衡策略,最大限度地减少了由于鼓励负载平衡而导致的性能下降。
  • 我们研究了多令牌预测 (MTP) 目标,并证明其对模型性能的益处。 它还可以用于推测解码以加速推理。

预训练:追求终极训练效率

  • 我们设计了一个 FP8 混合精度训练框架,并首次验证了在极大规模模型上进行 FP8 训练的可行性和有效性。
  • 通过算法、框架和硬件的共同设计,我们克服了跨节点 MoE 训练中的通信瓶颈,几乎实现了计算与通信的完全重叠。
    这显著提高了我们的训练效率并降低了训练成本,使我们能够在没有额外开销的情况下进一步扩大模型规模。
  • 以仅 2.664M H800 GPU 小时的经济成本,我们在 14.8T 令牌上完成了 DeepSeek-V3 的预训练,生成了当前最强的开源基础模型。 预训练后的后续训练阶段仅需 0.1M GPU 小时。

后训练:来自 DeepSeek-R1 的知识蒸馏

  • 我们引入了一种创新的方法论,将推理能力从长链思维 (CoT) 模型(特别是来自 DeepSeek R1 系列模型的一个)蒸馏到标准 LLM,特别是 DeepSeek-V3。我们的流程优雅地将 R1 的验证和反思模式融入 DeepSeek-V3,并显著提高了其推理性能。同时,我们也对 DeepSeek-V3 的输出风格和长度进行了控制。

3. 模型下载

模型#总参数#激活参数上下文长度下载
DeepSeek-V3-Base671B37B128K🤗 HuggingFace
DeepSeek-V3671B37B128K🤗 HuggingFace

注意:DeepSeek-V3 模型在 HuggingFace 上的总大小为 685B,其中包括 671B 的主模型权重和 14B 的多令牌预测 (MTP) 模块权重。

为了确保最佳性能和灵活性,我们与开源社区和硬件供应商合作,提供多种在本地运行模型的方法。有关逐步指导,请查看第 6 节:如何本地运行

对于希望深入了解的开发者,我们建议探索 README_WEIGHTS.md,以获取有关主模型权重和多令牌预测 (MTP) 模块的详细信息。请注意,MTP 支持目前正在社区内积极开发中,我们欢迎您的贡献和反馈。

4. 评估结果

基础模型

标准基准

基准 (指标)# 样本DeepSeek-V2Qwen2.5 72BLLaMA3.1 405BDeepSeek-V3
架构-MoEDenseDenseMoE
# 激活参数-21B72B405B37B
# 总参数-236B72B405B671B
英语Pile-test (BPB)-0.6060.6380.5420.548
BBH (EM)3-shot78.879.882.987.5
MMLU (Acc.)5-shot78.485.084.487.1
MMLU-Redux (Acc.)5-shot75.683.281.386.2
MMLU-Pro (Acc.)5-shot51.458.352.864.4
DROP (F1)3-shot80.480.686.089.0
ARC-Easy (Acc.)25-shot97.698.498.498.9
ARC-Challenge (Acc.)25-shot92.294.595.395.3
HellaSwag (Acc.)10-shot87.184.889.288.9
PIQA (Acc.)0-shot83.982.685.984.7
WinoGrande (Acc.)5-shot86.382.385.284.9
RACE-Middle (Acc.)5-shot73.168.174.267.1
RACE-High (Acc.)5-shot52.650.356.851.3
TriviaQA (EM)5-shot80.071.982.782.9
NaturalQuestions (EM)5-shot38.633.241.540.0
AGIEval (Acc.)0-shot57.575.860.679.6
代码HumanEval (Pass@1)0-shot43.353.054.965.2
MBPP (Pass@1)3-shot65.072.668.475.4
LiveCodeBench-Base (Pass@1)3-shot11.612.915.519.4
CRUXEval-I (Acc.)2-shot52.559.158.567.3
CRUXEval-O (Acc.)2-shot49.859.959.969.8
数学GSM8K (EM)8-shot81.688.383.589.3
MATH (EM)4-shot43.454.449.061.6
MGSM (EM)8-shot63.676.269.979.8
CMath (EM)3-shot78.784.577.390.7
中文CLUEWSC (EM)5-shot82.082.583.082.7
C-Eval (Acc.)5-shot81.489.272.590.1
CMMLU (Acc.)5-shot84.089.573.788.8
CMRC (EM)1-shot77.475.876.076.3
C3 (Acc.)0-shot77.476.779.778.6
CCPM (Acc.)0-shot93.088.578.692.0
多语言MMMLU-non-English (Acc.)5-shot64.074.873.879.4

注意:最佳结果以粗体显示。得分差距不超过 0.3 的视为同一水平。DeepSeek-V3 在大多数基准测试中表现最佳,特别是在数学和代码任务上。 有关更多评估细节,请查阅我们的论文。

上下文窗口

Needle In A Haystack (NIAH) 测试中的评估结果。DeepSeek-V3 在所有上下文窗口长度(最多 128K)上表现良好。

聊天模型

标准基准 (大于 67B 的模型)

基准 (指标)DeepSeek V2-0506DeepSeek V2.5-0905Qwen2.5 72B-Inst.Llama3.1 405B-Inst.Claude-3.5-Sonnet-1022GPT-4o 0513DeepSeek V3
架构MoEMoEDenseDense--MoE
# 激活参数21B21B72B405B--37B
# 总参数236B236B72B405B--671B
英语MMLU (EM)78.280.685.388.688.387.288.5
MMLU-Redux (EM)77.980.385.686.288.988.089.1
MMLU-Pro (EM)58.566.271.673.378.072.675.9
DROP (3-shot F1)83.087.876.788.788.383.791.6
IF-Eval (Prompt Strict)57.780.684.186.086.584.386.1
GPQA-Diamond (Pass@1)35.341.349.051.165.049.959.1
SimpleQA (Correct)9.010.29.117.128.438.224.9
FRAMES (Acc.)66.965.469.870.072.580.573.3
LongBench v2 (Acc.)31.635.439.436.141.048.148.7
代码HumanEval-Mul (Pass@1)69.377.477.377.281.780.582.6
LiveCodeBench (Pass@1-COT)18.829.231.128.436.333.440.5
LiveCodeBench (Pass@1)20.328.428.730.132.834.237.6
Codeforces (Percentile)17.535.624.825.320.323.651.6
SWE Verified (Resolved)-22.623.824.550.838.842.0
Aider-Edit (Acc.)60.371.665.463.984.272.979.7
Aider-Polyglot (Acc.)-18.27.65.845.316.049.6
数学AIME 2024 (Pass@1)4.616.723.323.316.09.339.2
MATH-500 (EM)56.374.780.073.878.374.690.2
CNMO 2024 (Pass@1)2.810.815.96.813.110.843.2
中文CLUEWSC (EM)89.990.491.484.785.487.990.9
C-Eval (EM)78.679.586.161.576.776.086.5
C-SimpleQA (Correct)48.554.148.450.451.359.364.8

注意:所有模型均在限制输出长度为 8K 的配置下进行评估。包含少于 1000 个样本的基准测试使用不同的温度设置进行了多次测试,以得出可靠的最终结果。DeepSeek-V3 是表现最佳的开源模型,并且在与前沿闭源模型的竞争中表现出色。

开放式生成评估

模型Arena-HardAlpacaEval 2.0
DeepSeek-V2.5-090576.250.5
Qwen2.5-72B-Instruct81.249.1
LLaMA-3.1 405B69.340.5
GPT-4o-051380.451.1
Claude-Sonnet-3.5-102285.252.0
DeepSeek-V385.570.0

注意:英语开放式对话评估。对于 AlpacaEval 2.0,我们使用长度控制的胜率作为指标。

5. 聊天网站与 API 平台

您可以在 DeepSeek 的官方网站与 DeepSeek-V3 聊天:chat.deepseek.com

我们还在 DeepSeek 平台提供 OpenAI 兼容的 API:platform.deepseek.com

6. 如何本地运行

DeepSeek-V3 可以使用以下硬件和开源社区软件在本地部署:

  1. DeepSeek-Infer Demo:我们提供了一个简单轻量的 FP8 和 BF16 推理演示。
  2. SGLang:完全支持 DeepSeek-V3 模型的 BF16 和 FP8 推理模式。
  3. LMDeploy:支持本地和云部署的高效 FP8 和 BF16 推理。
  4. TensorRT-LLM:目前支持 BF16 推理和 INT4/8 量化,FP8 支持即将推出。
  5. vLLM:支持 DeepSeek-V3 模型的 FP8 和 BF16 模式,适用于张量并行和管道并行。
  6. AMD GPU:通过 SGLang 在 BF16 和 FP8 模式下在 AMD GPU 上运行 DeepSeek-V3 模型。
  7. 华为昇腾 NPU:支持在华为昇腾设备上运行 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

注意:Huggingface 的 Transformers 还未直接支持。

6.1 使用 DeepSeek-Infer Demo 进行推理(仅示例)

模型权重与演示代码准备

首先,克隆我们的 DeepSeek-V3 GitHub 仓库:

git clone https://github.com/deepseek-ai/DeepSeek-V3.git

导航到 inference 文件夹,并安装 requirements.txt 中列出的依赖项。

cd DeepSeek-V3/inference
pip install -r requirements.txt

从 HuggingFace 下载模型权重,并将其放入 /path/to/DeepSeek-V3 文件夹中。

模型权重转换

将 HuggingFace 模型权重转换为特定格式:

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 generate.py --node-rank $RANK --master-addr $ADDR --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 generate.py --node-rank $RANK --master-addr $ADDR --ckpt-path /path/to/DeepSeek-V3-Demo --config configs/config_671B.json --input-file $FILE

6.2 使用 SGLang 进行推理(推荐)

SGLang 目前支持 MLA 优化、FP8 (W8A8)、FP8 KV 缓存和 Torch 编译,提供在开源框架中最先进的延迟和吞吐量性能。

值得注意的是,SGLang v0.4.1 完全支持在 NVIDIA 和 AMD GPU 上运行 DeepSeek-V3,使其成为高度灵活和强大的解决方案。

以下是 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 的 Day-One 支持,使用 SGLang,完全兼容 FP8 和 BF16 精度。有关详细指导,请参考 SGLang 指南

6.7 使用华为昇腾 NPU 的推荐推理功能

华为昇腾社区的 MindIE 框架已经成功适配 DeepSeek-V3 的 BF16 版本。有关昇腾 NPU 的逐步指导,请按照 此处的说明 操作。

7. 许可证

此代码库遵循 MIT 许可证。使用 DeepSeek-V3 基础/聊天模型需遵循 模型许可证。DeepSeek-V3 系列(包括基础和聊天)支持商业使用。

8. 引用

9. 联系

如果您有任何问题,请提出问题或通过 service@deepseek.com 联系我们。

Related Posts

DeepSeek-V3 是 DeepSeek 团队最新的模型,基于之前版本的指令跟随和编码能力。该模型在近 15 万亿个标记上进行预训练,报告的评估显示该模型在性能上优于其他开源模型,并与领先的闭源模型相媲美。有关模型的详细信息,请访问 DeepSeek-V3 仓库以获取更多信息。 DeepSeek-V2 Chat 是 DeepSeek-V2 的对话微调版本,属于混合专家(MoE)语言模型。 ...

DeepSeek V3
DeepSeek
62.5K context $0.14/M input tokens $0.28/M output tokens

DeepSeek-R1 来了! ⚡ 性能与 OpenAI-o1 相当 📖 完全开源的模型和技术报告 🏆 MIT 许可证:自由提炼和商业化! ...

DeepSeek R1
DeepSeek
62.5K context $0.55/M input tokens $2.19/M output tokens