通过


分布式数据并行 (DDP) 训练

重要

此功能在 Beta 版中。 工作区管理员可以从 预览 页控制对此功能的访问。 请参阅 Manage Azure Databricks 预览版

本页包含有关在 AI 运行时上使用 分布式数据并行(DDP) 训练的笔记本示例。 DDP 是分布式训练的最常见并行技术,其中,完整模型在每个 GPU 上复制,数据批处理在 GPU 之间拆分。

何时使用 DDP

在以下情况下使用 DDP:

  • 您的模型可以完全安装在单个 GPU 的内存中
  • 想要通过增加数据吞吐量来扩大训练规模
  • 你需要最简单的分布式训练方法,该方法在大多数框架中都具有自动支持。

对于不适合单个 GPU 内存的大型模型,请考虑改用 FSDPDeepSpeed

示例

教程 说明
使用 PyTorch DDP 训练简单的多层感知器(MLP)神经网络 此笔记本演示了在 Azure Databricks 上使用 PyTorch 的 DDP 模块和无服务器 GPU 资源的简单多层感知器(MLP)神经网络的分布式训练。
使用 TRL 和 DDP 在 8xH100 上训练 OpenAI GPT-OSS 20B 模型 此笔记本演示如何使用 无服务器 GPU Python API 通过 转换器强化学习(TRL) 库对 Hugging Face 的 GPT-OSS 20B 模型进行监督微调(SFT)。 此示例利用节点上所有 8 个 H100 GPU 中的 DDP 来缩放全局批大小。
分布式微调 Llama 3.2 3B 使用 Unsloth 此笔记本演示如何使用 无服务器 GPU Python API 在 8 个 A10 GPU 中使用 Unsloth 库微调 Llama 3.2 3B 模型。 Unsloth 提供内存高效的训练优化,并通过 Hugging Face Accelerate 实现的 DDP。
使用 Axolotl 进行分布式微调 Olmo3 7B 此笔记本演示如何使用 无服务器 GPU Python API,通过 16 个 H100 GPU 和 Axolotl 库微调 Olmo3 7B 模型。 Axolotl 旨在简化最新 LLM 的训练后和微调。
使用 PyTorch Lightning 训练双塔推荐器系统 此笔记本演示如何在无服务器 GPU 上使用 PyTorch Lightning 训练双塔建议模型。 PyTorch Lightning 提供了一个高级接口,用于自动处理多 GPU 训练的 DDP 配置。 该示例包括使用马赛克流式处理(MDS)格式的数据准备,以及跨 A10 或 H100 GPU 进行分布式训练。
请参阅深度学习推荐示例页面以获取完整笔记本,包括:
  • 数据准备和 MDS 格式转换
  • 使用 PyTorch Lightning 进行双塔推荐器训练

使用 PyTorch DDP 训练简单的多层感知器(MLP)神经网络

以下笔记本演示了使用具有无服务器 GPU 资源的 Azure Databricks 上的 PyTorch 的 DDP 模块对简单的多层感知器(MLP)神经网络进行分布式训练。

PyTorch DDP

获取笔记本

使用 PyTorch Lightning 训练双塔推荐系统

此笔记本演示如何在无服务器 GPU 计算上使用 PyTorch Lightning 训练双塔建议模型。 PyTorch Lightning 提供了一个高级接口,用于自动处理多 GPU 训练的 DDP 配置。 该示例包括使用马赛克流式处理(MDS)格式的数据准备,以及跨 A10 或 H100 GPU 进行分布式训练。

请参阅深度学习推荐示例页面以获取完整笔记本,包括:

  • 数据准备和 MDS 格式转换
  • 使用 PyTorch Lightning 进行双塔推荐器训练