DeepSpeed 是一个深度学习优化库,目标是让分布式训练变得简单、高效、有效。它由微软主导开发,是微软 AI at Scale 计划的组成部分,项目开源并采用微软开源行为准则,欢迎社区提交贡献。它支撑过多个当时世界上规模最大的语言模型,包括 5300 亿参数的 Megatron-Turing NLG、1780 亿参数的 Jurassic-1 和 1760 亿参数的 BLOOM。
训练大模型时,最现实的瓶颈是显存和通信。比如你要训练一个百亿参数级别的模型,单张 GPU 根本放不下参数、梯度和优化器状态,于是只能手动切分模型、写通信逻辑、调流水线并行,工程量巨大且容易出错。即便搭起来了,梯度在多卡之间频繁同步也会拖慢吞吐,batch 一大通信开销就压不住。没有这类工具时,团队往往要自己维护一套分布式训练框架,或者干脆放弃更大的模型规模。代价很直接:要么烧人力,要么烧算力,要么两头都烧。DeepSpeed 的做法是把 ZeRO 显存优化、3D 并行、ZeRO-Offload、ZeRO-Infinity 这些系统级技术打包成库,让 ZeRO-Infinity 这类方案可以把参数和优化器状态卸载到 CPU 甚至 NVMe,把单卡放不下的模型拆开训练。它还提供 1-bit Adam、1-bit LAMB 这类通信压缩优化器,减少多卡同步的数据量。
最适合它的是需要预训练或大规模微调的团队,尤其是模型参数已经超出单卡显存、又希望控制训练成本的情况。做超长序列训练的人也能用上,它的 Arctic Long Sequence Training 支持百万 token 级别的序列。反过来,如果你只是在小数据集上微调一个几亿参数的模型,单卡或简单多卡数据并行就够,引入 DeepSpeed 的配置成本反而多余。想完全绕开配置文件、一行参数都不想调的人也会觉得不顺手,因为它的能力大多通过 JSON 配置释放。
实际使用围绕一个 JSON 配置文件展开。你在里面声明训练批次相关的三个量:train_batch_size、train_micro_batch_size_per_gpu 和 gradient_accumulation_steps,三者满足 train_batch_size 等于单卡 micro batch 乘梯度累积步数再乘 GPU 数量,只填两个就行,第三个会自动推断。接着配置优化器,它原生支持 Adam、AdamW、LAMB 和 Muon,也可以直接引用 PyTorch 里的其他优化器,学习率等参数按优化器构造函数签名填写。然后按需打开 FP16、BF16 或 torch.autocast 混合精度,选择 ZeRO 的优化级别,决定是否把参数或优化器状态卸载到 CPU 或 NVMe,再配梯度裁剪、激活检查点、通信选项等。配置交给 DeepSpeed 后,它接管分布式训练的初始化、梯度累积边界管理和优化器步骤,你按常规方式跑训练循环即可。想省事还可以开 Autotuning 自动调参,用 Flops Profiler 分析算力消耗。
📬 不错过下一款好工具
每周二、周五各一期,随时退订
这是你的产品?认领并提升曝光 →
它是开源项目,参考资料中未列出任何收费档位,具体许可与使用条款以官网当前公示为准。获取方式是通过官网和开源仓库获取代码,按贡献指南参与或直接使用。
该选它的场景很明确:模型大到单卡装不下,或者多卡训练的显存、通信开销已经压垮吞吐,又或者要做百万 token 级长序列训练、需要 MoE 架构支持,这些正是 ZeRO、3D 并行和 DeepSpeed-MoE 覆盖的范围。它也已经和 Transformers、Accelerate、Lightning、MosaicML 这些主流训练框架打通,迁移成本不高。反过来,如果你的任务在单张 GPU 上就能跑完,或者你要的是推理服务、数据标注、模型托管这类训练之外的能力,那应该看对应类型的工具,而不是在一个训练优化库里找答案。
以官网当前公示为准
悟道是北京智源研究院推出的超大规模语言模型,面向需要中英文文本与图像联合处理能力的研究者和开发者。
Aim 是一款 AI 训练模型工具,面向需要构建或优化机器学习模型的开发者与研究人员。
OpenBMB是由清华团队发起的大规模预训练语言模型开源库,提供从训练到部署的全流程工具链,降低大模型研发门槛。
Cherry Studio 是一款开源的 AI 客户端助手,面向需要同时调用多个大模型、管理本地知识库以及进行图文创作的个人用户与开发者。
Lamini AI 是一款专为开发者设计的低代码大语言模型定制引擎,通过简化API与自动化基础设施管理,助力企业低门槛、高效率地完成领域专属模型的微调与部署。
阿里巴巴达摩院推出的十万亿参数跨模态预训练大模型,提供强大的图文联合理解、生成及知识表征等智能服务。