完全分片数据并行(FSDP)训练

重要

此功能在 Beta 版中。

本页包含用于在无服务器 GPU 计算环境中使用完全分片数据并行(FSDP)训练的笔记本示例。 FSDP 将模型参数、梯度和优化器状态分片至多个 GPU,使得训练超大型模型成为可能,而这些模型无法适应单个 GPU 的内存。

何时使用 FSDP

在以下情况下使用 FSDP:

  • 模型太大,无法容纳在单个 GPU 的内存中
  • 您需要在参数为 20B 到 120B+ 的范围内训练模型。
  • 你希望比 DDP 提供的内存效率更高

对于适合单个 GPU 内存的较小模型,请考虑使用 DDP 以简化操作。 有关高级内存优化功能,请参阅 DeepSpeed

使用 FSDP2训练一个拥有1000万个参数的Transformer模型

以下笔记本演示如何使用 FSDP2 库对 1000 万个参数转换器模型进行分布式训练。

PyTorch FSDP

获取笔记本

使用 TRL 和 FSDP 训练 OpenAI GPT-OSS 120B 模型

此笔记本演示如何使用 FSDP2转换器强化学习 (TRL) 库在 GPT-OSS 120B 模型上运行监督微调 (SFT)。 此示例利用 FSDP 来减少内存消耗,并使用 DDP 扩展跨 8 个 H100 GPU 的全局批大小。

TRL FSDP

获取笔记本