DeepSeek-V3 Logo

目录

简介

我们隆重推出 DeepSeek-V3,这是一个强大的混合专家(Mixture-of-Experts,MoE)大语言模型,总计包含6710亿参数,每个词元激活370亿参数。

为实现高效推理和训练成本效益,DeepSeek-V3采用了多头潜在注意力(Multi-head Latent Attention,MLA)和DeepSeekMoE架构,这些技术在DeepSeek-V2中已得到充分验证。

此外,DeepSeek-V3首创了一种无辅助损失的负载均衡策略,并设定了多词元预测训练目标以提升性能。

我们在14.8万亿多样化、高质量的词元上进行了DeepSeek-V3的预训练,随后进行了监督微调和强化学习阶段,以充分发挥其能力。

全面评估显示,DeepSeek-V3优于其他开源模型,并达到了与领先闭源模型相当的性能水平。

尽管性能出色,DeepSeek-V3的完整训练仅需要2.788百万H800 GPU小时。此外,其训练过程非常稳定,在整个训练过程中,我们没有遇到任何不可恢复的损失波动或进行任何回滚操作。

DeepSeek-V3基准测试结果

模型概述

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

基于DeepSeek-V2的高效架构,我们首创了无辅助损失的负载均衡策略,最小化了鼓励负载均衡所带来的性能下降。

我们研究了多词元预测(Multi-Token Prediction,MTP)目标,并证明它对模型性能有益。它还可用于推理加速的推测解码。

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

我们设计了FP8混合精度训练框架,首次验证了FP8训练在超大规模模型上的可行性和有效性。

通过算法、框架和硬件的协同设计,我们克服了跨节点MoE训练中的通信瓶颈,几乎实现了完全的计算-通信重叠。这显著提高了我们的训练效率并降低了训练成本,使我们能够进一步扩大模型规模而不增加额外开销。

仅以2.664百万H800 GPU小时的经济成本,我们在14.8万亿词元上完成了DeepSeek-V3的预训练,产生了目前最强大的开源基础模型。预训练后的后续训练阶段仅需0.1百万GPU小时。

后训练:从DeepSeek-R1知识蒸馏

我们引入了一种创新方法,将长思维链(Chain-of-Thought,CoT)模型的推理能力,特别是来自DeepSeek R1系列模型之一的能力,蒸馏到标准的大语言模型中,特别是DeepSeek-V3。我们的流程优雅地将R1的验证和反思模式整合到DeepSeek-V3中,显著提升了其推理性能。同时,我们还对DeepSeek-V3的输出风格和长度保持了控制。

模型下载

模型 总参数量 激活参数量 上下文长度 下载
Hugging Face

DeepSeek-V3 模型在 Hugging Face 上的总大小为 685B,其中包括 671B 的主模型权重和 14B 的多词元预测(MTP)模块权重。

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

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

评估结果

标准基准测试

基准测试 (指标) # Shots 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
代码 HumanEval (Pass@1) 0-shot 43.3 53.0 54.9 65.2
数学 GSM8K (EM) 8-shot 81.6 88.3 83.5 89.3

最佳结果以粗体显示。差距不超过0.3的分数被视为处于同一水平。DeepSeek-V3在大多数基准测试中取得了最佳性能,尤其是在数学和代码任务上。有关更多评估详情,请查看我们的论文。

上下文窗口

上下文窗口评估

在"大海捞针"(Needle In A Haystack)测试中的评估结果。DeepSeek-V3在所有上下文窗口长度(最高达到128K)上表现良好。

本地运行

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

DeepSeek-Infer 演示

我们提供一个简单轻量级的演示,支持 FP8 和 BF16 推理。

SGLang

在 BF16 和 FP8 推理模式下完全支持 DeepSeek-V3 模型,多词元预测功能即将推出

LMDeploy

支持高效的 FP8 和 BF16 推理,适用于本地和云部署。

TensorRT-LLM

目前支持 BF16 推理和 INT4/8 量化,FP8 支持即将推出。

vLLM

在 FP8 和 BF16 模式下支持 DeepSeek-V3 模型的张量并行和流水线并行。

AMD GPU

通过 SGLang 在 BF16 和 FP8 模式下,支持在 AMD GPU 上运行 DeepSeek-V3 模型。

华为 Ascend NPU

支持在华为 Ascend 设备上运行 DeepSeek-V3。

由于我们的框架原生采用了 FP8 训练,因此我们只提供 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

Hugging Face 的 Transformers 尚未直接支持。

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

系统要求

仅支持带有 Python 3.10 的 Linux。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 注意力、FP8 (W8A8)、FP8 KV 缓存和 Torch Compile,在开源框架中提供最先进的延迟和吞吐量性能。

值得注意的是,SGLang v0.4.1 完全支持在 NVIDIA 和 AMD GPU 上运行 DeepSeek-V3,使其成为一个高度通用和稳健的解决方案。

SGLang 还支持多节点张量并行,使您能够在多台网络连接的机器上运行该模型。

多词元预测(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

许可证

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

引用

@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}, 
}

联系我们

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