DeepSpeed翻译站点

3周前发布 13 0 0

微软开源的ZeRO优化器标杆,支撑千亿模型训练的深度学习加速库。

所在地:
美国
语言:
英文
收录时间:
2026-08-21
DeepSpeedDeepSpeed

DeepSpeed是微软开源的深度学习优化库,最新版0.19.1(2026-05-30),Apache-2.0许可。以ZeRO零冗余优化器为核心,支持ZeRO-1/2/3、ZeRO-Offload、ZeRO-Infinity CPU/NVMe卸载、MoE训练、DeepSpeed-Chat RLHF,是千亿模型训练的内存与计算优化基石。

 

项目概述

DeepSpeed由微软研究院于2020年2月开源,2025年2月贡献至Linux Foundation AI & Data作为孵化项目,GitHub组织从microsoft/DeepSpeed迁移至社区治理的deepspeedai/DeepSpeed 。最新稳定版本0.19.1,发布于2026年5月30日,Apache-2.0许可 。

核心定位:DeepSpeed是微软研究院为训练Turing-NLG、Megatron-Turing NLG、Phi等大模型构建的记忆与计算优化技术栈 ,其签名特性ZeRO(Zero Redundancy Optimizer)通过将优化器状态、梯度、参数分片跨GPU划分,使单设备可拟合比以往大10-100倍的模型 。

 

ZeRO技术演进

  • ZeRO Stage 1:分片优化器状态(如Adam的32位权重、一阶/二阶动量估计)
  • ZeRO Stage 2:在Stage 1基础上增加16位梯度分片
  • ZeRO Stage 3:在Stage 2基础上增加16位模型参数分片,并通过ZeRO-Infinity卸载引擎将所有模型状态卸载至CPU和NVMe内存
  • ZeRO-Offload:将优化器内存与计算从GPU卸载至主机CPU,单卡V100即可训练130亿参数GPT-2
  • ZeRO-Infinity:下一代卸载能力,可卸载更多模型权重,具有更有效的带宽利用与计算通信重叠
  • ZeRO++:通信高效量化权重与梯度

MoE训练支持:DeepSpeed v0.5起支持MoE模型训练,支持专家并行(EP)+数据并行(D)+ZeRO驱动数据并行(Z)+模型并行(M)的五种灵活并行组合,可利用GPU与CPU混合内存训练大规模MoE模型 。

RLHF能力:DeepSpeed-Chat提供完整的RLHF训练流水线,覆盖SFT→RM→PPO/DPO全生命周期 。

 

2025-2026年最新进展​ :

  • SuperOffload:利用超算芯片统一内存架构,将集合通信卸载至计算单元外(SDMA),获ASPLOS 2026最佳论文提名
  • ZenFlow:2025年发布的新型优化技术
  • Muon优化器支持:2026年5月起支持Muon优化器与DeepSpeed配合使用
  • Arctic Long Sequence Training(ALST):2025年6月引入的长序列训练技术
  • DeepSpeed Core API更新:PyTorch风格的backward与低精度主权重状态
  • ZeRO++驱动LinkedIn推荐系统大模型蒸馏训练

与PyTorch FSDP的关系:DeepSpeed与FSDP是互补而非零和竞争——FSDP是PyTorch生态系统内直截了当分布式训练的默认选择,而DeepSpeed在需要高级卸载、极致内存优化或DeepSpeed-Chat等特性的场景中更受青睐 。

许可策略:Apache-2.0许可(PyPI官方标注),允许商用、修改、再分发。2025年2月起成为Linux Foundation AI & Data孵化项目,治理结构更加开放 。

💡 DeepSpeed的独特定位:它是”训练&微调”子分类中内存与计算优化的工业级标杆。与Megatron-Core(并行策略参考实现)形成互补——实际工业级训练往往是”Megatron-Core提供并行骨架 + DeepSpeed提供ZeRO内存优化”的组合。虽然DeepSpeed文档包含推理API(DeepSpeed-Inference),但其核心职责是训练优化,推理能力仅作为附加组件,不应将其归入”推理引擎”子分类。绝大多数用户通过Hugging Face Transformers Trainer或Accelerate间接调用DeepSpeed,而非直接使用其 launcher。

 

核心能力

  • ZeRO零冗余优化器:ZeRO-1/2/3三阶段,分片优化器状态、梯度、参数,单设备可训练10-100倍更大模型
  • ZeRO-Offload:优化器状态与计算卸载至CPU,单卡V100训练130亿参数GPT-2
  • ZeRO-Infinity:所有模型状态卸载至CPU与NVMe,支持超大规模模型训练
  • MoE训练:专家并行+数据并行+ZeRO驱动的灵活并行组合,GPU+CPU混合内存训练大规模MoE
  • DeepSpeed-Chat:完整的RLHF训练流水线(SFT→RM→PPO/DPO)
  • 流水线并行:模型流水线切分,多GPU协同训练
  • 混合精度训练:FP16/BF16自动混合精度
  • 1-bit Adam/ZeroOneAdam:通信高效的优化器变体
  • DeepCompile:最新编译器优化(0.19.1额外依赖)
  • 自动调优:AutoTuning自动寻找最优配置
  • SuperOffload:利用超算芯片统一内存架构的SDMA卸载(2026年最新)
  • Muon优化器支持:2026年5月起支持
  • 监控集成:TensorBoard、WandB、Comet、CSV监控器
  • 多硬件支持:NVIDIA GPU、AMD GPU、NVIDIA Grace Hopper超级芯片适配

 

优势亮点

  • ZeRO是内存优化事实标准:ZeRO-1/2/3已成为大模型训练内存优化的参考实现,被无数框架集成
  • Apache-2.0最干净许可:商用、修改、再分发无门槛,与Megatron-Core(BSD/Apache-2.0)并列”最干净许可”阵营
  • Linux Foundation治理:2025年2月起成为LF AI & Data孵化项目,社区治理更加开放
  • 支撑了微软旗舰模型:Turing-NLG、Megatron-Turing NLG、Phi系列均基于DeepSpeed训练
  • 单卡训练百亿模型:ZeRO-Offload让单张V100即可训练130亿参数GPT-2
  • MoE训练成熟:Switch Transformer 1.6T参数MoE模型训练的早期支持者
  • RLHF全流程:DeepSpeed-Chat提供完整的RLHF流水线,是大模型对齐训练的重要工具
  • 与Hugging Face生态深度集成:绝大多数用户通过Transformers Trainer或Accelerate间接调用
  • 2026年持续创新:SuperOffload、ZenFlow、Muon优化器、ALST等长序列训练技术不断迭代
  • 异构硬件适配:从NVIDIA GPU到AMD MI300X,再到Grace Hopper超级芯片,卸载策略持续优化

 

局限

  • 非终端用户框架:DeepSpeed是底层优化库,普通用户应通过Hugging Face Transformers Trainer、Accelerate、LlamaFactory、MS-SWIFT、Axolotl等上层框架间接使用
  • 配置复杂度高:ZeRO各阶段、卸载策略、并行组合的配置需要深厚的分布式训练知识
  • 与FSDP功能重叠:在简单分布式训练场景下,PyTorch原生FSDP集成度更好,DeepSpeed优势在于高级卸载与极致内存优化
  • 消费级硬件收益有限:ZeRO-3全量卸载需要大量CPU内存,单卡小模型训练并非DeepSpeed的目标场景
  • 推理能力非核心:虽提供DeepSpeed-Inference,但生产推理建议使用vLLM、SGLang、TensorRT-LLM等专用推理引擎
  • 学习曲线陡峭:ZeRO各阶段、MoE并行、卸载策略的概念复杂度高
  • Python版本要求:需跟随PyTorch生态的Python版本支持周期

 

适用人群

  • 千亿参数模型训练团队:ZeRO-3 + ZeRO-Infinity是超大规模训练的必备工具
  • 内存受限的训练场景:GPU显存不足时,ZeRO-Offload/ZeRO-Infinity可将状态卸载至CPU/NVMe
  • MoE模型训练:DeepSpeed-MoE提供灵活的专家并行组合,是MoE训练的主流选择
  • RLHF/对齐训练:DeepSpeed-Chat提供完整SFT→RM→PPO/DPO流水线
  • 框架开发者:需要在DeepSpeed之上构建自定义训练框架的工程师
  • Hugging Face生态用户:通过Transformers Trainer/Accelerate无缝调用DeepSpeed
  • 异构硬件集群:NVIDIA/AMD/Grace Hopper混合环境下的训练优化
  • 微软云(Azure)用户:与Azure ML深度集成,云端训练首选

 

安装与部署

 

1. 安装

# pip安装最新版
pip install deepspeed==0.19.1

# 源码安装
git clone https://github.com/deepspeedai/DeepSpeed.git
cd DeepSpeed
pip install -e .
pip install -e .[all]  # 安装所有额外依赖

 

2. 通过Hugging Face Transformers Trainer使用(推荐)

from transformers import Trainer, TrainingArguments

training_args = TrainingArguments(
    output_dir="./output",
    deepspeed="./ds_config_zero3.json",  # 指定DeepSpeed配置
    per_device_train_batch_size=4,
    gradient_accumulation_steps=8,
)

trainer = Trainer(
    model=model,
    args=training_args,
    train_dataset=train_dataset,
)
trainer.train()

 

3. ZeRO-3 + CPU Offload配置(ds_config_zero3.json)

{
    "zero_optimization": {
        "stage": 3,
        "offload_optimizer": {
            "device": "cpu"
        }
    },
    "bf16": {
        "enabled": "auto"
    }
}

启动训练:

deepspeed --num_gpus 8 train.py --deepspeed ds_config_zero3.json

 

4. ZeRO-Offload单卡训练130亿参数模型

{
    "zero_optimization": {
        "stage": 2,
        "offload_optimizer": {
            "device": "cpu"
        },
        "contiguous_gradients": true,
        "overlap_comm": true
    }
}

 

5. ZeRO-Infinity NVMe卸载

{
    "zero_optimization": {
        "stage": 3,
        "offload_optimizer": {
            "device": "nvme",
            "nvme_path": "/local_nvme"
        },
        "offload_param": {
            "device": "nvme",
            "nvme_path": "/local_nvme"
        }
    }
}

 

6. MoE训练配置

{
    "tensor_parallel": {
        "autotp": true
    },
    "moe": {
        "enable": true,
        "expert_parallel": 8
    },
    "zero_optimization": {
        "stage": 3
    }
}

 

7. 通过Accelerate使用

accelerate config  # 选择DeepSpeed作为分布式后端
accelerate launch train.py

 

8. 部署前必检清单

  • 确认仓库位于 github.com/deepspeedai/DeepSpeed(官方,已迁移至社区治理)
  • 许可:Apache-2.0,商用友好
  • 最新稳定版0.19.1(2026-05-30),建议跟进最新版本以获得SuperOffload、Muon优化器等新特性
  • 普通用户推荐通过Hugging Face Transformers Trainer或Accelerate间接调用
  • 消费级硬件用户建议使用上层框架(LlamaFactory/MS-SWIFT/Axolotl),它们已封装DeepSpeed配置
  • ZeRO-3 + CPU/NVMe卸载需要相应大小的CPU内存或NVMe空间
  • 生产环境推理部署需配合vLLM、SGLang、TensorRT-LLM等专用推理引擎——DeepSpeed核心职责是训练优化

 

相关导航