本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
SageMaker 模型并行度库的核心功能
Amazon SageMaker 的模型并行度库提供分发策略和节省内存的技术,例如分片数据并行性、按层划分模型以进行管道调度以及检查点。模型并行性策略和技术有助于将大型模型分布在多个设备上,同时优化训练速度和内存使用。该库还提供 Python 帮助程序函数、上下文管理器和封装器函数,用于调整训练脚本以实现模型的自动或手动分区。
在训练作业中实现模型并行性时,将保持 “使用模型并行度运行分布式 SageMaker 训练作业” 部分中显示的相同的两步工作流程。对于调整训练脚本,您无需或者仅需在训练脚本中添加几行额外的代码。要启动调整后的训练脚本的训练作业,您需要设置分布配置参数以激活节省内存的功能或者传递用于并行度的值。
要开始使用示例,请参阅以下 Jupyter 笔记本,其中演示了如何使用 SageMaker 模型并行度库。
要深入了解库的核心功能,请参阅以下主题。
注意
SageMaker 分布式训练库可通过 Hugging Face 的 Amazon PyTorch深度学习容器获得, TensorFlow 也可以在训练平台 SageMaker 内使用。要利用分布式训练库的功能,我们建议您使用 SageMaker Python SDK。如果你使用 SageMaker APIs了 Python (Boto3) 或,你也可以在JSON请求语法中手动配置。SDK Amazon Command Line Interface在整篇文档中,说明和示例都侧重于如何在 SageMaker Python 中使用分布式训练库SDK。
重要
SageMaker 模型并行度库支持的所有核心功能,并支持流水线并行性。 PyTorch TensorFlow