Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 
      中国的 Amazon Web Services 服务入门
         (PDF)。
    本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
通过  SageMaker  AI 估算器类的distribution参数,您可以分配特定的实例组来运行分布式训练。例如,假定您有以下两个实例组,并且想在其中一个实例组上运行多 GPU 训练。
from sagemaker.instance_group import InstanceGroup
instance_group_1 = InstanceGroup("instance_group_1", "ml.c5.18xlarge", 1)
instance_group_2 = InstanceGroup("instance_group_2", "ml.p3dn.24xlarge", 2)
您可以为其中一个实例组设置分布式训练配置。例如,以下代码示例说明如何将带两个 ml.p3dn.24xlarge 实例的 training_group_2 分配给分布式训练配置。
使用 MPI
            - PyTorch
 - 
                    
from sagemaker.pytorch import PyTorch
estimator = PyTorch(
    ...
    instance_groups=[instance_group_1, instance_group_2],
    distribution={
        "mpi": {
            "enabled": True, "processes_per_host": 8
        },
        "instance_groups": [instance_group_2]
    }
)
                 
            - TensorFlow
 - 
                    
from sagemaker.tensorflow import TensorFlow
estimator = TensorFlow(
    ...
    instance_groups=[instance_group_1, instance_group_2],
    distribution={
        "mpi": {
            "enabled": True, "processes_per_host": 8
        },
        "instance_groups": [instance_group_2]
    }
)
                 
        
借助 A  SageMaker  I 数据 parallel 库
            - PyTorch
 - 
                    
from sagemaker.pytorch import PyTorch
estimator = PyTorch(
    ...
    instance_groups=[instance_group_1, instance_group_2],
    distribution={
        "smdistributed": {
            "dataparallel": {
                "enabled": True
            }
        }, 
        "instance_groups": [instance_group_2]
    }
)
                 
            - TensorFlow
 - 
                    
from sagemaker.tensorflow import TensorFlow
estimator = TensorFlow(
    ...
    instance_groups=[instance_group_1, instance_group_2],
    distribution={
        "smdistributed": {
            "dataparallel": {
                "enabled": True
            }
        }, 
        "instance_groups": [instance_group_2]
    }
)
                 
        
使用  SageMaker  AI 数据并行库时,请确保实例组由库支持的实例类型组成。
有关  SageMaker  AI 数据并行库的更多信息,请参阅 SageMaker AI 数据并行训练。
使用 A  SageMaker  I 模型并行库
            - PyTorch
 - 
                    
from sagemaker.pytorch import PyTorch
estimator = PyTorch(
    ...
    instance_groups=[instance_group_1, instance_group_2],
    distribution={
        "smdistributed": {
            "modelparallel": {
                "enabled":True,
                "parameters": {
                    ...   # SageMaker AI model parallel parameters
                } 
            }
        }, 
        "instance_groups": [instance_group_2]
    }
)
                 
            - TensorFlow
 - 
                    
from sagemaker.tensorflow import TensorFlow
estimator = TensorFlow(
    ...
    instance_groups=[instance_group_1, instance_group_2],
    distribution={
        "smdistributed": {
            "modelparallel": {
                "enabled":True,
                "parameters": {
                    ...   # SageMaker AI model parallel parameters
                } 
            }
        }, 
        "instance_groups": [instance_group_2]
    }
)
                 
        
有关  SageMaker  AI 模型并行库的更多信息,请参阅 SageMaker AI 模型并行训练。