运行管道 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

运行管道

以下页面介绍了如何使用 Amazon Pipelines 运行 SageMaker 管道,无论是使用 SageMaker资源还是本地运行。

使用该pipeline.start()函数开始新的管道运行,就像传统 SageMaker管道运行一样。有关该start()函数的信息,请参阅 sag emaker.workflow.pipeline.pipeline.start。

注意

使用@step装饰器定义的步骤作为训练作业运行。因此,请注意以下限制:

  • 您的账户中的实例限制和训练任务限制。相应地更新您的限制,以避免出现任何限制或资源限制问题。

  • 与正在进行的每一个训练步骤相关的货币成本。有关更多详情,请参阅 Amazon SageMaker 定价

从本地运行的管道中检索结果

要查看管道运行中任何步骤的结果,请使用 e xecution.result (),如以下代码段所示:

execution = pipeline.start() execution.result(step_name="train")
注意

本地模式下不支持execution.result()管道。

一次只能检索一个步骤的结果。如果步骤名称是由生成的 SageMaker,则可以通过以下方式调用list_steps来检索步骤名称:

execution.list_step()

在本地运行管道

你可以像处理传统的管道步骤一样在本地运行带有@step装饰步骤的管道。有关本地模式管道运行的详细信息,请参阅使用本地模式运行管道。要使用本地模式,请在管道定义中提供 a LocalPipelineSession SageMakerSession 而不是,如以下示例所示:

from sagemaker.workflow.function_step import step from sagemaker.workflow.pipeline import Pipeline from sagemaker.workflow.pipeline_context import LocalPipelineSession @step def train(): training_data = s3.download(....) ... return trained_model step_train_result = train() local_pipeline_session = LocalPipelineSession() local_pipeline = Pipeline( name="<pipeline-name>", steps=[step_train_result], sagemaker_session=local_pipeline_session # needed for local mode ) local_pipeline.create(role_arn="role_arn") # pipeline runs locally execution = local_pipeline.start()