菜单

本地部署选项

相关源文件

本页面提供了在您自己的硬件上本地部署 DeepSeek-V3 模型的详细信息。它涵盖了各种部署框架、权重格式注意事项和特定于硬件的配置。有关 Web 界面和 API 访问的信息,请参阅 Web Interface and API Access

部署选项概述

DeepSeek-V3 拥有 671B 的总参数(激活 37B),可以使用几种开源框架在本地基础设施上部署。每个框架都提供不同的优化技术和硬件支持选项,以方便高效的推理。

图示:DeepSeek-V3 部署选项

来源:README.md227-342

权重格式注意事项

DeepSeek-V3 原生使用 FP8 精度进行训练,因此 FP8 权重是可用的主要格式。然而,某些部署框架需要 BF16 权重,或者使用 BF16 权重时性能更好。该存储库提供了一个转换工具,可在需要时将 FP8 权重转换为 BF16 格式。

将 FP8 转换为 BF16 权重

要将 FP8 权重转换为 BF16 格式,请使用提供的转换脚本。

图示:权重转换过程

来源:README.md240-247

部署框架比较

每个部署框架都有其优点和用例。下表总结了每个框架的关键特性。

框架权重格式硬件支持主要功能多节点支持
DeepSeek-Infer 演示FP8, BF16NVIDIA简单、轻量级的演示
SGLangFP8, BF16NVIDIA, AMDMLA 优化、DP Attention、FP8 (W8A8)、FP8 KV Cache、Torch Compile
LMDeployFP8, BF16NVIDIA, 华为灵活部署,高效推理
TensorRT-LLMBF16, INT4/8NVIDIANVIDIA 优化、量化支持
vLLMFP8, BF16NVIDIA, AMD张量并行、流水线并行
LightLLMFP8, BF16NVIDIA高效的单/多节点部署

来源:README.md231-238 README.md307-338

详细部署选项

DeepSeek-Infer 演示

DeepSeek-Infer Demo 提供了一个简单轻量级的实现,用于与 DeepSeek-V3 模型进行推理。

系统要求

  • 仅限 Linux 和 Python 3.10
  • 主要依赖项
    • torch==2.4.1
    • triton==3.0.0
    • transformers==4.46.3
    • safetensors==0.4.5

部署过程

  1. 安装:

  2. 权重转换:

  3. 运行推理:

    用于交互模式

    用于批量推理

来源:README.md252-304

SGLang

SGLang 目前为 DeepSeek-V3 在开源框架中提供了最优化的性能。它支持多种优化技术,并兼容 NVIDIA 和 AMD GPU。

主要功能

  • MLA (多头潜在注意力) 优化
  • DP Attention (数据并行注意力)
  • FP8 (W8A8) 支持
  • FP8 KV Cache
  • Torch Compile 以提高性能
  • 多节点张量并行,用于分布式部署
  • 支持 NVIDIA 和 AMD GPU

部署过程

有关详细的启动说明,请参阅 SGLang 团队的 GitHub 存储库文档。

来源:README.md305-316

LMDeploy

LMDeploy 为 DeepSeek-V3 等大型语言模型提供了一个灵活且高性能的推理和部署框架。

主要功能

  • 支持离线流水线处理和在线部署
  • 与基于 PyTorch 的工作流无缝集成
  • 支持 FP8 和 BF16 推理
  • 兼容 NVIDIA GPU 和华为昇腾 NPU

来源:README.md317-322

TensorRT-LLM

TensorRT-LLM 提供专门针对 NVIDIA 硬件的优化推理,并支持各种精度选项。

主要功能

  • 支持 BF16 和 INT4/INT8 权重仅量化
  • FP8 支持正在开发中
  • 专门为 DeepSeek-V3 支持定制分支
  • 针对 NVIDIA GPU 优化

来源:README.md324-326

vLLM

vLLM 为在单机和多机上部署 DeepSeek-V3 提供了高效的并行选项。

主要功能

  • 支持 FP8 和 BF16 模式
  • 兼容 NVIDIA 和 AMD GPU
  • 用于多机部署的流水线并行
  • 用于高效资源利用的张量并行

来源:README.md329-331

LightLLM

LightLLM 为单机和多机场景提供了高效的部署选项。

主要功能

  • 支持张量并行部署(单/多机)
  • 混合精度部署选项
  • 支持 FP8/BF16 权重
  • PD-disaggregation 部署(正在为 DeepSeek-V3 开发中)

来源:README.md333-335

硬件特定部署

图示:硬件支持矩阵

NVIDIA GPU

NVIDIA GPU 为 DeepSeek-V3 部署提供了最全面的支持,所有部署框架都兼容 NVIDIA 硬件。

  • 单节点部署:SGLang、LMDeploy 或 vLLM
  • 多节点部署:SGLang(带张量并行)或 vLLM(带流水线并行)
  • 量化:TensorRT-LLM(支持 INT4/INT8)

来源:README.md231-238 README.md305-335

AMD GPU

AMD GPU 可通过 SGLang 和 vLLM 运行 DeepSeek-V3,并支持 FP8 和 BF16 精度。

主要功能

  • SGLang 提供首日支持
  • 完全兼容 FP8 和 BF16 精度
  • SGLang 提供多节点张量并行

来源:README.md337-339

华为昇腾 NPU

华为昇腾 NPU 可通过 MindIE 框架运行 DeepSeek-V3,该框架已适配该模型的 BF16 版本。

部署过程

请遵循华为昇腾社区提供的说明,以获取使用昇腾 NPU 进行部署的分步指导。

来源:README.md341-342

多节点和分布式部署

为了在多个节点上或以分布式方式部署 DeepSeek-V3,有几个框架提供了特定的并行策略。

图示:分布式部署架构

张量并行

张量并行将模型的张量分布在多个 GPU 或节点上,从而实现高效的并行计算。这种方法对于 DeepSeek-V3 这样的大型模型尤其有用。

支持的框架

  • SGLang:支持多节点张量并行
  • LightLLM:支持单机和多机张量并行部署

来源:README.md307-316 README.md333-335

流水线并行

流水线并行将模型的层分布在多个设备或节点上,每个设备处理模型层的一部分。

支持的框架

  • vLLM:为多机部署提供流水线并行

来源:README.md329-331

数据并行

数据并行涉及在不同设备上运行模型的多个副本,每个设备处理不同的输入数据批次。

支持的框架

  • SGLang:支持 DP Attention(数据并行注意力)

来源:README.md307-316

结论

DeepSeek-V3 提供了多种部署选项,以适应各种硬件配置和性能要求。部署框架的选择取决于可用的具体硬件、性能要求和部署场景。

为获得最佳性能

  • 在 NVIDIA 硬件上:考虑 SGLang、vLLM 或 LMDeploy
  • 在 AMD 硬件上:SGLang 提供最优化的支持
  • 对于华为昇腾 NPU:使用 MindIE 框架
  • 对于多节点部署:选择 SGLang(带张量并行)或 vLLM(带流水线并行)

请记住,权重格式的选择(FP8 vs BF16)可能会影响不同框架的性能和兼容性。

来源:README.md227-342