d
deepseek-ai/DeepSeek-V3
模型介绍模型推理文件和版本分析
下载使用量0

transformers 库

DeepSeek-V3

Homepage Chat Hugging Face
Discord Wechat Twitter Follow
Code License Model License

论文链接👁️

1. 简介

我们介绍 DeepSeek-V3,这是一个强大的混合专家(MoE)语言模型,总参数量为 6710 亿,每个标记激活 370 亿个参数。为了实现高效的推理和具有成本效益的训练,DeepSeek-V3 采用了多头潜在注意力(MLA)和 DeepSeekMoE 架构,这些架构已在 DeepSeek-V2 中得到了充分验证。此外,DeepSeek-V3 开创了一种无辅助损失的负载平衡策略,并设定了一个多标记预测训练目标,以实现更强的性能。 我们在 14.8 万亿个不同且高质量的标记上预训练 DeepSeek-V3,然后进行监督式微调和强化学习阶段,以充分发挥其能力。 综合评估表明,DeepSeek-V3 的性能优于其他开源模型,并且达到了与领先的封闭源代码模型相当的性能。尽管性能优异,但 DeepSeek-V3 的完整训练只需要 278.8 万个 H800 GPU 小时。此外,它的训练过程非常稳定。在整个训练过程中,我们没有遇到任何无法恢复的损失峰值或执行任何回滚。

2. 模型概述


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

  • 在 DeepSeek-V2 效率高的架构之上,我们开创了一种无辅助损失的负载平衡策略,它将因鼓励负载平衡而产生的性能下降降至最低。
  • 我们研究了一种多标记预测(MTP)目标,并证明它对模型性能有益。它还可以用于推理加速的投机解码。

预训练:走向极致的训练效率

  • 我们设计了一个 FP8 混合精度训练框架,并首次验证了 FP8 训练在超大规模模型上的可行性和有效性。
  • 通过算法、框架和硬件的共同设计,我们克服了跨节点 MoE 训练中的通信瓶颈,几乎实现了计算和通信的完全重叠。这大大提高了我们的训练效率并降低了训练成本,使我们能够在没有额外开销的情况下扩大模型规模。
  • 仅需 266.4 万个 H800 GPU 小时,我们就完成了 DeepSeek-V3 在 14.8 万亿个标记上的预训练,生成了目前最强劲的开源基模型。预训练后的后续训练阶段只需要 0.1 万个 GPU 小时。

后训练:从 DeepSeek-R1 中提取知识

  • 我们引入了一种创新方法,可以从长链式思维(CoT)模型,特别是 DeepSeek R1 系列模型之一中提取推理能力,并将它融入标准 LLM,特别是 DeepSeek-V3 中。我们的管道巧妙地将 R1 的验证和反思模式融入 DeepSeek-V3 中,并显着提高了其推理性能。同时,我们还控制了 DeepSeek-V3 的输出风格和长度。

3. 模型下载

模型#总参数#激活参数上下文长度下载
DeepSeek-V3-Base6710 亿370 亿128K🤗 HuggingFace
DeepSeek-V36710 亿370 亿128K🤗 HuggingFace

注意:HuggingFace 上 DeepSeek-V3 模型的总大小为 6850 亿,其中包括 6710 亿的主模型权重和 140 亿的多标记预测(MTP)模块权重。

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

对于希望深入研究的开发人员,我们建议查看 README_WEIGHTS.md,了解主模型权重和多标记预测(MTP)模块的详细信息。请注意,MTP 支持目前正在社区内积极开发中,我们欢迎您的贡献和反馈。

4. Evaluation Results

Base Model

Standard Benchmarks

Benchmark (Metric)# ShotsDeepSeek-V2Qwen2.5 72BLLaMA3.1 405BDeepSeek-V3
Architecture-MoEDenseDenseMoE
# Activated Params-21B72B405B37B
# Total Params-236B72B405B671B
EnglishPile-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
CodeHumanEval (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
MathGSM8K (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
ChineseCLUEWSC (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
MultilingualMMMLU-non-English (Acc.)5-shot64.074.873.879.4

Note: Best results are shown in bold. Scores with a gap not exceeding 0.3 are considered to be at the same level. DeepSeek-V3 achieves the best performance on most benchmarks, especially on math and code tasks.

For more evaluation details, please check our paper.

Context Window

Evaluation results on the "Needle In A Haystack" (NIAH) tests. DeepSeek-V3 performs well across all context window lengths up to 128K.

Chat Model

Standard Benchmarks (Models larger than 67B)

Benchmark (Metric)DeepSeek V2-0506DeepSeek V2.5-0905Qwen2.5 72B-Inst.LLaMA3.1 405B-Inst.Claude-3.5-Sonnet-1022GPT-4o 0513DeepSeek V3
ArchitectureMoEMoEDenseDense--MoE
# Activated Params21B21B72B405B--37B
# Total Params236B236B72B405B--671B
EnglishMMLU (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
CodeHumanEval-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
MathAIME 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
ChineseCLUEWSC (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

Note: All models are evaluated in a configuration that limits the output length to 8K. Benchmarks containing fewer than 1000 samples are tested multiple times using varying temperature settings to derive robust final results. DeepSeek-V3 stands as the best-performing open-source model, and also exhibits competitive performance against frontier closed-source models.

Open Ended Generation Evaluation

ModelArena-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

Note: English open-ended conversation evaluations. For AlpacaEval 2.0, we use the length-controlled win rate as the metric.

5. Chat Website & API Platform

You can chat with DeepSeek-V3 on DeepSeek's official website: chat.deepseek.com

We also provide OpenAI-Compatible API at DeepSeek Platform: platform.deepseek.com

6. How to Run Locally

DeepSeek-V3 can be deployed locally using the following hardware and open-source community software:

  1. DeepSeek-Infer Demo: We provide a simple and lightweight demo for FP8 and BF16 inference.
  2. SGLang: Fully support the DeepSeek-V3 model in both BF16 and FP8 inference modes.
  3. LMDeploy: Enables efficient FP8 and BF16 inference for local and cloud deployment.
  4. TensorRT-LLM: Currently supports BF16 inference and INT4/8 quantization, with FP8 support coming soon.
  5. vLLM: Support DeekSeek-V3 model with FP8 and BF16 modes for tensor parallelism and pipeline parallelism.
  6. AMD GPU: Enables running the DeepSeek-V3 model on AMD GPUs via SGLang in both BF16 and FP8 modes.
  7. Huawei Ascend NPU: Supports running DeepSeek-V3 on Huawei Ascend devices.

Since FP8 training is natively adopted in our framework, we only provide FP8 weights. If you require BF16 weights for experimentation, you can use the provided conversion script to perform the transformation.

Here is an example of converting FP8 weights to 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 演示进行推理(仅供示例)

模型权重和演示代码准备

首先,克隆我们的 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 Compile,在开源框架中提供最先进的延迟和吞吐量性能。

值得注意的是,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 权重only 等精度选项。FP8 的支持目前正在进行中,并将很快发布。您可以通过以下链接访问 TRTLLM 的自定义分支,专门针对 DeepSeek-V3 支持,以便直接体验新功能:https://github.com/NVIDIA/TensorRT-LLM/tree/deepseek/examples/deepseek_v3。

6.5 使用 vLLM 进行推理(推荐)

vLLM v0.6.6 支持在 NVIDIA 和 AMD GPU 上针对 FP8 和 BF16 模式进行 DeepSeek-V3 推理。除了标准技术之外,vLLM 还提供 管道并行 功能,使您能够在多台通过网络连接的机器上运行此模型。有关详细指南,请参阅 vLLM 指示。请随时关注 增强计划。

6.6 推荐在 AMD GPU 上进行推理的功能

与 AMD 团队的合作,我们实现了对 AMD GPU 的第一天支持,使用 SGLang,完全兼容 FP8 和 BF16 精度。有关详细指南,请参考 SGLang 指示。

6.7 推荐在华为昇腾 NPU 上进行推理的功能

华为昇腾社区的 MindIE 框架已成功适配 DeepSeek-V3 的 BF16 版本。有关昇腾 NPU 的逐步指南,请遵循 此处的说明。

7. 许可证

此代码存储库受 MIT 许可证 许可。使用 DeepSeek-V3 Base/Chat 模型受 模型许可证 约束。DeepSeek-V3 系列(包括 Base 和 Chat)支持商业用途。

8. 引用

@misc{deepseekai2024deepseekv3technicalreport,
      title={DeepSeek-V3 Technical Report}, 
      author={DeepSeek-AI},
      year={2024},
      eprint={2412.19437},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={https://arxiv.org/abs/2412.19437}, 
}

9. 联系方式

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