DeepSpeed Windows 安装指南:从环境自测到跑通三个训练示例
【免费下载链接】DeepSpeedDeepSpeed is a deep learning optimization library that makes distributed training and inference easy, efficient, and effective.项目地址: https://gitcode.com/GitHub_Trending/de/DeepSpeed
这篇文章帮你在 Windows 11 上完成 DeepSpeed 的安装、验证,并跑通三个官方示例。DeepSpeed 是微软开源的深度学习优化库,提供 ZeRO、3D 并行、MoE 等优化,用于 Phi-3、Megatron-Turing-530B 等模型的分布式训练与推理;Windows 支持自 0.14.5 版本起提供,覆盖单卡训练、微调和推理,体验与 Linux 一致。
动手前,先核对你的环境
| 组件 | 版本要求 | 必需/可选 |
|---|---|---|
| Windows | 11 Version 23H2 及以上 | 必需 |
| 带 CUDA 的 NVIDIA 显卡 + 驱动 | 官方在 4GB 显存的 RTX A2000 上完成验证 | 必需 |
| Python | 3.x | 必需 |
| PyTorch | 2.3.0 带 CUDA 版本(官方测试配置) | 必需 |
| Visual C++ 构建工具 | VS2022 C++ x64/x86 build tools | 可选,仅源码构建路线需要 |
| HuggingFace Transformers | 4.41.2(官方测试配置) | 可选,微调与推理示例需要 |
| DeepSpeedExamples 仓库 | 最新版 | 可选,运行三个示例前需克隆 |
三条安装路线,选对一条:DeepSpeed Windows 安装
| 安装方式 | 适用场景 | 一行命令 |
|---|---|---|
| pip 安装 ⭐ | 大多数用户,快速上手 | pip install deepspeed |
| 源码构建 | 需要最新代码或自行修改 | 克隆仓库后运行build_win.bat |
| 预编译 wheel 分发 | 多台同配置机器 | DS_BUILD_OPS=1 python -m build --wheel --no-isolation |
推荐 pip 路线:Windows 版本已预编译全部算子,无需安装 CUDA SDK 或 C++ 编译器,一条命令即可:
pip install deepspeed # 安装最新版,Windows 版算子已预编译源码构建路线适合需要定制的场景:克隆 仓库 后运行 build_win.bat,wheel 会生成在dist目录,前置条件见 README 的 Windows 章节。预编译分发路线说明见 进阶安装文档。
一条命令自测安装
安装完成后运行环境自测:
ds_report # 或 python -m deepspeed.env_report预期输出关键几行:
| | DeepSpeed Version: 0.14.5 | nvcc (nvCC): Cuda compilation tools, release 12.x | torch cuda: 12.x输出即安装报告,重点看 DeepSpeed 版本是否为你刚安装的 0.14.5+、CUDA 相关行是否为 OK;任一行报错,先看下一节的排错表。
跑通三个真实示例
以下示例脚本来自 DeepSpeedExamples 仓库,运行前先克隆该仓库并进入对应目录。
示例一:CIFAR-10 小模型训练
最简单的单卡训练闭环,验证 DeepSpeed 训练链路:
deepspeed cifar10_deepspeed.py --deepspeed # 脚本位于 training/cifar预期结果:终端滚动输出每个 step 的 loss,数值逐步下降。
示例二:BERT 预训练
语言模型预训练,脚本位于training/HelloDeepSpeed目录:
deepspeed train_bert_ds.py --checkpoint_dir experiment_deepspeed # 检查点输出到该目录预期结果:训练正常启动并持续输出 loss,运行结束后experiment_deepspeed目录中出现检查点文件。
示例三:OPT-125M 模型微调(LoRA + CPU offload)
对 facebook/opt-125m 做监督微调,同时启用 LoRA 与 ZeRO-2 的 CPU offload,4GB 显存即可运行:
deepspeed training\step1_supervised_finetuning\main.py --model_name_or_path facebook/opt-125m --gradient_accumulation_steps 8 --lora_dim 128 --only_optimize_lora --print_loss --zero_stage 2 --deepspeed --dtype bf16 --offload --output_dir output预期结果:终端逐条打印 loss,output目录生成微调后的模型权重。
出问题,先看这里
| 报错现象 | 最常见原因 | 解决办法 |
|---|---|---|
| 源码构建时报 C++ 编译错误 | 未装 C++ 构建工具 | 安装 VS2022 的 "C++ 桌面开发" 工作负载(VS2019 亦可),以管理员身份运行 Visual Studio 2022 开发者命令提示符 |
Installed CUDA version ... does not match the version torch was compiled with | 系统 CUDA 与 PyTorch 编译所用 CUDA 主版本不一致 | 运行nvcc --version和python -c "import torch; print(torch.version.cuda)"核对;重装匹配的 PyTorch,或按 advanced-install.md 的 CUDA version mismatch 小节处理 |
CUDA error: no kernel image is available for execution on the device | 扩展未针对你的显卡架构编译 | 构建时设置TORCH_CUDA_ARCH_LIST指定架构(方法见 advanced-install.md),或直接用 pip 预编译版 |
| 微调/推理示例报显存不足 | 4GB 显存装不下模型与生成工作集 | 保持示例中--offload/--cpu-offload参数,将权重卸载到 CPU 内存 |
| 用到 async io(AIO)或 GDS 功能失败 | 两项功能不支持 Windows | 官方说明见 README Windows 章节,Windows 上请避开这两项功能 |
资源与路线图
- Windows 支持官方博客(英文)
- Windows 支持官方博客(中文)
- 进阶安装指南
- 上手教程
- 仓库 README(含 Windows 安装步骤)
当前 Windows 版尚不支持多 GPU 运行与权重量化,async io 和 GDS 也未适配;官方路线图的下一步就是多 GPU 支持、权重量化和性能研究。卡住时先看 Windows 博客文档 和 advanced-install.md。
【免费下载链接】DeepSpeedDeepSpeed is a deep learning optimization library that makes distributed training and inference easy, efficient, and effective.项目地址: https://gitcode.com/GitHub_Trending/de/DeepSpeed
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考