本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
运行管道
以下页面介绍了如何使用 Amazon Pipelines 运行 SageMaker 管道,无论是使用 SageMaker资源还是本地运行。
使用该pipeline.start()
函数开始新的管道运行,就像传统 SageMaker管道运行一样。有关该start()
函数的信息,请参阅 sag
注意
使用@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()