选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

SageMaker 模型并行度库的发行说明

聚焦模式
SageMaker 模型并行度库的发行说明 - 亚马逊 SageMaker AI

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

要跟踪 SageMaker 模型并行度 (SMP) 库的最新更新,请参阅以下发行说明。如果您对 SMP 库有其他问题,请联系 SMP 服务团队,电话是 sm-model-parallel-feedback@amazon.com

SageMaker 模型并行度库 v2.7.0

日期:2024年12月4日

SMP 库更新

新特征

SMP Docker 容器

SMP 库团队分发 Docker 和 Enroot 容器来取代框架容器。 SageMaker PyTorch 如果你在 Pyth SageMaker on SDK 中使用 PyTorch 估算器类并指定分发配置以使用 SMP v2,则 SageMaker会自动获取 SMP Docker 容器。要使用此版本的 SMP v2,请将您的 Pyth SageMaker on SDK 升级到v2.237.0或更高版本。

容器详细信息

  • 适用于 PyTorch v2.4.1 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.<us-west-2>.smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  • 带有 CUDA v12.1 的 PyTorch v2.4.1 的 SMP Enroot 容器

    https://sagemaker-distributed-model-parallel.s3.<us-west-2>.amazonaws.com/enroot/2.4.1-gpu-py311-cu121.sqsh
  • 预装软件包

    • SMP 库 v2.7.0

    • SMDDP 库 v2.5.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Hugging Face 转换器 v4.44.2

    • Hugging Face 数据集库 v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

SMP Conda 通道

下面的 S3 存储桶是由 SMP 服务团队托管的 SMP 库的公共 Conda 通道。如果要在 Conda 环境(例如 SageMaker HyperPod 集群)中安装 SMP v2 库,请使用此 Conda 通道正确安装 SMP 库。

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

有关 Conda 通道的更多信息,请参阅 Conda 文档中的通道

SageMaker 模型并行度库 v2.6.1

日期:2024年10月31日

SMP 库更新

错误修复

  • 修复了在 SMP v2.6.0 中使用较旧的训练脚本时出现ImportError的问题。这修复了与 SMP v2.6.0 的向后不兼容问题。

  • 添加了 f DeprecationWarning or torch.sagemaker.distributed.fsdp.checkpoint。在 SMP v2.7.0 中,该模块将被弃用并移除。如果您当前在代码torch.sagemaker.distributed.fsdp.checkpoint中使用,则应计划在 SMP v2.7.0 发布之前更新脚本,以免将来出现问题。

  • 修复了 SMP v2.6.0 中发现的向后兼容性问题。此问题与 SMP v2.6.0 中弃用USE_PG_WITH_UTIL检查点方法有关,该方法破坏了与先前版本训练脚本的向后兼容性。要解决此问题,请重新运行 PyTorch 训练作业,以获取 SMP v2.6.1 打包的最新 SMP 容器。

SMP Docker 容器

SMP 库团队分发 Docker 容器来取代框架容器。 SageMaker PyTorch 如果你在 Pyth SageMaker on SDK 中使用 PyTorch 估算器类并指定分发配置以使用 SMP v2, SageMaker AI 会自动获取 SMP Docker 容器。

容器详细信息

  • 适用于 PyTorch v2.4.1 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  • 预装软件包

    • SMP 库 v2.6.1

    • SMDDP 库 v2.5.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Hugging Face 转换器 v4.44.2

    • Hugging Face 数据集库 v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

SMP Conda 通道

下面的 S3 存储桶是由 SMP 服务团队托管的 SMP 库的公共 Conda 通道。如果要在 SageMaker HyperPod 集群等高度可定制的计算资源的环境中安装 SMP v2 库,请使用此 Conda 通道正确安装 SMP 库。

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

有关 Conda 通道的更多信息,请参阅 Conda 文档中的通道

SageMaker 模型并行度库 v2.6.0

日期:2024 年 10 月 17 日

SMP 库更新

新特征

  • 增加了对以下 LLM 模型配置的支持。您可以开始使用 上下文并行性张量并行性

  • 增加了对以下 Mixtral 模型配置的 张量并行性 支持。

  • 增加了对 AllGather基于上下文的并行度实现的支持,该实现利用 AllGather 通信集合体来获取张量的完整序列。 key-and-value可用的实现有 p2pall_gather。在注意力计算期间,该p2p实现利用 peer-to-peer发送-接收调用 key-and-value (KV) 张量累积,异步运行并允许通信与计算重叠。另一方面,all_gather 实现采用了 AllGather 通信集体操作来进行 KV 张量累积。要了解如何应用这些上下文并行性实现,请参阅 上下文并行性

  • 增加了对调整旋转位置嵌入 (RoPE)θ 值的支持。

错误修复

  • 修复了当启用延迟参数时在预训练过程中无法正确初始化旋转位置嵌入 (RoPE) 的漏洞。

已知问题

  • Transformer Engine 目前不支持上下文并行 FP8度或启用滑动窗口注意功能。因此,当滑动窗口配置设置为非空值时,SMP 版本的 Mistral 变换器不支持上下文并行或 FP8 训练。

SMP Docker 容器

SMP 库团队分发 Docker 容器来取代框架容器。 SageMaker PyTorch 如果你在 Pyth SageMaker on SDK 中使用 PyTorch 估算器类并指定分发配置以使用 SMP v2, SageMaker AI 会自动获取 SMP Docker 容器。

通用更新

  • 已升级 PyTorch 到 v2.4.1

  • Megatron 升级到 v0.8.0

  • 已将 TransformerEngine 库升级到 v1.10

  • 转换器升级到 v4.44.2

  • cuDNN 升级到 v9.4.0.58

容器详细信息

  • 适用于 PyTorch v2.4.1 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  • 预装软件包

    • SMP 库 v2.6.0

    • SMDDP 库 v2.5.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Hugging Face 转换器 v4.44.2

    • Hugging Face 数据集库 v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

SMP Conda 通道

下面的 S3 存储桶是由 SMP 服务团队托管的 SMP 库的公共 Conda 通道。如果要在 SageMaker HyperPod 集群等高度可定制的计算资源的环境中安装 SMP v2 库,请使用此 Conda 通道正确安装 SMP 库。

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

有关 Conda 通道的更多信息,请参阅 Conda 文档中的通道

SageMaker 模型并行度库 v2.5.0

日期:2024 年 8 月 28 日

SMP 库更新

新特征

  • 在 Mixtral 模型的 P5 实例上添加了对使用 FP8 数据格式进行混合精度训练的支持。

  • 增加了对以下模型配置的 上下文并行性 支持。

    • Llama-v2: 7B 和 70B

    • Llama-v3: 8B 和 70B

    • GPT-NeoX: 20B

  • 增加了对异步保存检查点的支持。要了解更多信息,请参阅 使用 SMP 的检查点

    • 支持在不使用 Amazon EBS 或文件服务器的情况下将检查点直接保存到 S3。

错误修复

  • 解决了在加载预训练模型检查点和利用张量并行时,在 Llama 微调过程中导致初始损失异常高的问题。

备注

  • 要以 FP8 混合精度使用 Mixtral 的激活检查点,您需要分别检查注意层和专家层。有关正确设置的示例,请参阅 Amazon A SageMaker I 示例存储库中的示例训练脚本

已知问题

  • MoE 配置中的平衡负载平衡类型 (torch.sagemaker.moe.moe_config.MoEConfig) 目前与激活检查点不兼容。

  • 通过上下文并行性,GPT-NeoX 在预训练和微调中都出现了性能倒退。

  • 对于 P4 实例上的 GPT-NeoX,直接将权重从延迟参数初始化的转换模型加载到 Hugging Face 转换器模型会导致第一步的损失不匹配。

SMP Docker 容器

SMP 库团队分发 Docker 容器来取代框架容器。 SageMaker PyTorch 如果你在 Pyth SageMaker on SDK 中使用 PyTorch 估算器类并指定分发配置以使用 SMP v2, SageMaker AI 会自动获取 SMP Docker 容器。要使用此版本的 SMP v2,请将你的 Pyth SageMaker on SDK 升级到 v2.224.0 或更高版本。

通用更新

  • 已将 FlashAttention 库升级到 v2.5.8

  • Transformer Engine 库升级到 v1.8

    • 如果您想在 Conda 环境中安装 Transformer Engine,您需要从源代码中构建,并挑选特定的上游修复程序(744624d27c63427669bf3)。

容器详细信息

  • 适用于 PyTorch v2.3.1 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.<region>.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121

    有关支持区域的完整列表,请参阅 AWS 区域

  • 预装软件包

    • SMP 库 v2.5.0

    • SMDDP 库 v2.3.0

    • CUDNN v8.9.7.29

    • FlashAttention v2.5.8

    • TransformerEngine v1.8

    • Megatron v0.7.0

    • Hugging Face 转换器 v4.40.1

    • Hugging Face 数据集库 v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

SMP Conda 通道

下面的 S3 存储桶是由 SMP 服务团队托管的 SMP 库的公共 Conda 通道。如果要在 SageMaker HyperPod 集群等高度可定制的计算资源的环境中安装 SMP v2 库,请使用此 Conda 通道正确安装 SMP 库。

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

有关 Conda 通道的更多信息,请参阅 Conda 文档中的通道

SageMaker 模型并行度库 v2.4.0

日期:2024 年 6 月 20 日

SMP 库更新

错误修复

  • 修复了当使用 SMP 转换器时在前向传递中未传递标签时导致不正确的分对数形状的错误。

通用更新

  • 增加了对 PyTorch v2.3.1 的支持。

  • 增加了对 Python v3.11 的支持。

  • 增加了对 Hugging Face 转换器库 v4.40.1 的支持。

弃用

  • 已停止支持 Python v3.10。

  • 已停止对 v4.40.1 之前版本的 Hugging Face 转换器库的支持。

其他更改

  • 包含一个用于切换保存不同等级的去重复张量的补丁。要了解更多信息,请参阅 PyTorch GitHub 存储库中的讨论话题

已知问题

  • 在使用张量并行微调 Llama-3 70B 时,存在一个已知的问题,即损失可能会激增,然后恢复到更高的损失值。

SMP Docker 容器

SMP 库团队分发 Docker 容器来取代框架容器。 SageMaker PyTorch 如果你在 Pyth SageMaker on SDK 中使用 PyTorch 估算器类并指定分发配置以使用 SMP v2, SageMaker AI 会自动获取 SMP Docker 容器。要使用此版本的 SMP v2,请将你的 Pyth SageMaker on SDK 升级到 v2.224.0 或更高版本。

通用更新

  • SMDDP 库升级到 v2.3.0。

  • NCCL 库升级到 v2.21.5。

  • EFA 软件升级到 v1.32.0。

弃用

容器详细信息

  • 适用于 PyTorch v2.3.1 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121
  • 预装软件包

    • SMP 库 v2.4.0

    • SMDDP 库 v2.3.0

    • CUDNN v8.9.7.29

    • FlashAttention v2.3.3

    • TransformerEngine v1.2.1

    • Hugging Face 转换器 v4.40.1

    • Hugging Face 数据集库 v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

SMP Conda 通道

下面的 S3 存储桶是由 SMP 服务团队托管的 SMP 库的公共 Conda 通道。如果要在 SageMaker HyperPod 集群等高度可定制的计算资源的环境中安装 SMP v2 库,请使用此 Conda 通道正确安装 SMP 库。

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

有关 Conda 通道的更多信息,请参阅 Conda 文档中的通道

SageMaker 模型并行度库 v2.3.1

日期:2024 年 5 月 9 日

错误修复

  • 修复了在 torch.sagemaker.moe.moe_config.MoEConfig 中使用 moe_load_balancing=balanced 进行专家并行性时的 ImportError 问题。

  • 修复了在启用 load_state_dict_from_rank0torch.sagemaker.transform 调用引发 KeyError 的微调问题。

  • 修复了加载大型专家混合 out-of-memory (MoE) 模型(例如 Mixtral 8x22b)进行微调时出现的(OOM)错误。

SMP Docker 容器

SMP 库团队分发 Docker 容器来取代框架容器。 SageMaker PyTorch此版本将上述错误修复整合到以下 SMP Docker 映像中。

  • 适用于 PyTorch v2.2.0 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121

SageMaker 模型并行度库 v2.3.0

日期:2024 年 4 月 11 日

新特征

  • 增加了一项新的核心功能专家并行性,以支持专家混合转换器模型。要了解更多信息,请参阅 专家并行性

SMP Docker 容器

SMP 库团队分发 Docker 容器来取代框架容器。 SageMaker PyTorch如果你在 Pyth SageMaker on SDK 中使用 PyTorch 估算器类并指定分发配置以使用 SMP v2,则 SageMaker 会自动获取 SMP Docker 容器。要使用此版本的 SMP v2,请将你的 Pyth SageMaker on SDK 升级到 v2.214.4 或更高版本。

  • 适用于 PyTorch v2.2.0 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
    • 此 Docker 容器中预装的软件包

      • SMDDP 库 v2.2.0

      • CUDNN v8.9.5.29

      • FlashAttention v2.3.3

      • TransformerEngine v1.2.1

      • Hugging Face 转换器 v4.37.1

      • Hugging Face 数据集库 v2.16.1

      • Megatron-core 0.5.0

      • EFA v1.30.0

      • NCCL v2.19.4

SageMaker 模型并行度库 v2.2.0

日期:2024 年 3 月 7 日

新功能

  • 增加了对在集成了变形引擎的 P5 实例上FP8 训练以下 Hugging Face 变形器模型的支持:

    • GPT-NeoX

    • Llama 2

错误修复

  • 修复了在张量并行训练过程中无法保证张量在集体调用 AllGather 之前连续的错误。

通用更新

  • 增加了对 PyTorch v2.2.0 的支持。

  • SMDDP 库升级到 v2.2.0。

  • 已将 FlashAttention 库升级到 v2.3.3。

  • NCCL 库升级到 v2.19.4。

弃用

  • 已停止支持 V1.2.0 之前的 Transformer Engine。

已知问题

  • SMP 激活分载 功能目前无法使用。改用本机 PyTorch 激活卸载。

其他更改

SMP Docker 容器

SMP 库团队分发 Docker 容器来取代框架容器。 SageMaker PyTorch如果你在 Pyth SageMaker on SDK 中使用 PyTorch 估算器类并指定分发配置以使用 SMP v2, SageMaker AI 会自动获取 SMP Docker 容器。要使用此版本的 SMP v2,请将你的 Pyth SageMaker on SDK 升级到 v2.212.0 或更高版本。

  • 适用于 PyTorch v2.2.0 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
    • 适用于 P4d、P4de 和 P5 实例

    • 此 Docker 容器中预装的软件包

      • SMDDP 库 v2.2.0

      • CUDNN v8.9.5.29

      • FlashAttention v2.3.3

      • TransformerEngine v1.2.1

      • Hugging Face 转换器 v4.37.1

      • Hugging Face 数据集库 v2.16.1

      • EFA v1.30.0

      • NCCL v2.19.4

SageMaker 模型并行度库 v2.1.0

日期:2024 年 2 月 6 日

通用更新

  • 增加了对 PyTorch v2.1.2 的支持。

弃用

  • 已停止对 Hugging Face 转换器 v4.31.0 的支持。

已知问题

  • 发现了使用 attn_implementation=flash_attention_2 和 FSDP 微调 Hugging Face Llama 2 模型会导致模型出现分歧的问题。有关参考,请参阅 Hugging Face Transformers 存储库中的问题单 GitHub 。为避免分歧问题,请使用 attn_implementation=sdpa。或者,通过设置 use_smp_implementation=True 使用 SMP 转换器模型实现。

SMP Docker 容器

SMP 库团队分发 Docker 容器来取代框架容器。 SageMaker PyTorch如果你在 Pyth SageMaker on SDK 中使用 PyTorch 估算器类并指定分发配置以使用 SMP v2,则 SageMaker 会自动获取 SMP Docker 容器。要使用此版本的 SMP v2,请将你的 Pyth SageMaker on SDK 升级到 v2.207.0 或更高版本。

  • 适用于 PyTorch v2.1.2 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.1.2-gpu-py310-cu121
    • 适用于 P4d、P4de 和 P5 实例

    • 此 Docker 容器中预装的软件包

      • SMDDP 库 v2.1.0

      • CUDNN v8.9.5.29

      • FlashAttention v2.3.3

      • TransformerEngine v1.2.1

      • Hugging Face 转换器 v4.37.1

      • Hugging Face 数据集库 v2.16.1

      • EFA v1.30.0

SMP Conda 通道

下面的 S3 存储桶是由 SMP 服务团队托管的公共 Conda 通道。如果要在 SageMaker HyperPod 集群等高度可定制的计算资源的环境中安装 SMP v2 库,请使用此 Conda 通道正确安装 SMP 库。

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

有关 Conda 通道的更多信息,请参阅 Conda 文档中的通道

SageMaker 模型并行度库 v2.0.0

日期:2023 年 12 月 19 日

新特征

发布了 SageMaker 模型并行度 (SMP) 库 v2.0.0,其中包含以下新产品。

  • 全新的 torch.sagemaker 软件包,与 SMP v1.x 中之前的 smdistributed.modelparallel.torch 软件包完全不同。

  • 支持 PyTorch 2.0.1。

  • 对 PyTorch FSDP 的支持。

  • 通过与 Transformer Engine 库集成,实现张量并行。

  • Support 支持SageMaker 培训SageMaker HyperPod.

重大更改

  • SMP v2 对软件包进行了全面改进,并提供了 APIs 软件包。torch.sagemaker大多数情况下,您只需使用 torch.sagemaker.init() 模块进行初始化,并传递模型并行配置参数即可。使用此新软件包,您可以大大简化训练脚本中的代码修改。要了解如何调整训练脚本以使用 SMP v2 的更多信息,请参阅 使用 SageMaker 模型并行度库 v2

  • 如果您已经使用 SMP v1 来训练 Hugging Face 转换器模型,并想要在 SMP v2 中重复使用这些模型,请参阅 从 SMP v1 升级到 SMP v2

  • 对于 PyTorch FSDP 训练,你应该使用 SMP v2。

已知问题

  • 目前,激活检查点只适用于以下具有 FSDP 的封装策略。

    • auto_wrap_policy = functools.partial(transformer_auto_wrap_policy, ...)

  • 要使用 激活分载,FSDP 激活检查点类型必须是 REENTRANT

  • 在启用张量并行且分片数据并行度设置为 1 的情况下运行时,您必须使用 backend = nccl。这种情况下不支持 smddp 后端选项。

  • 即使不使用张量并行度,也需要将 Transformer E@@ ngin e PyTorch 与 SMP 库一起使用。

其他更改

弃用

  • 已停止支持 TensorFlow。

  • SMP v2 不支持管道并行性。

  • 该 DeepSpeed 库不支持原生 PyTorch FSDP。

SMP Docker 容器

SMP 库团队分发 Docker 容器来取代框架容器。 SageMaker PyTorch如果你在 Pyth SageMaker on SDK 中使用 PyTorch 估算器类并指定分发配置以使用 SMP v2, SageMaker AI 会自动获取 SMP Docker 容器。要使用此版本的 SMP v2,请将你的 Pyth SageMaker on SDK 升级到 v2.207.0 或更高版本。

  • 适用于 PyTorch v2.0.1 的 SMP Docker 容器,带有 CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.0.1-gpu-py310-cu121
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。