PublishedPipeline 类
表示要提交的管道,而不使用构造它的 Python 代码。
此外,可以使用 PublishedPipeline 重新提交 Pipeline 具有不同 PipelineParameter 值和输入的订阅。
初始化 PublishedPipeline。
:p aram 终结点 REST 终结点 URL,用于提交此管道的管道运行。 :type endpoint: str :p aram total_run_steps:此管道中的步骤数:type total_run_steps:int :p aram 工作区:已发布管道的工作区。 :type workspace: azureml.core.Workspace :p aram continue_on_step_failure:是否继续执行 PipelineRun 中的其他步骤
如果步骤失败,则默认值为 false。
构造函数
PublishedPipeline(name, graph_id, description, version, published_pipeline_id, status, endpoint, total_run_steps, workspace, continue_on_step_failure=None, _pipeline_provider=None, **kwargs)
参数
名称 | 说明 |
---|---|
name
必需
|
已发布管道的名称。 |
graph_id
必需
|
此已发布管道的图形的 ID。 |
description
必需
|
已发布管道的说明。 |
version
必需
|
已发布的管道版本。 |
published_pipeline_id
必需
|
已发布管道的 ID。 |
status
必需
|
已发布管道(“Active”或“Disabled”)的状态。 |
endpoint
必需
|
要为此管道提交运行的 REST 终结点 URL。 |
total_run_steps
必需
|
此管道中的步骤数。 |
workspace
必需
|
已发布管道的工作区。 |
continue_on_step_failure
必需
|
如果步骤失败,是否继续执行 PipelineRun 中的其他步骤。 默认值为 false。 |
_pipeline_provider
必需
|
<xref:azureml.pipeline.core._workflow_provider._PublishedPipelineProvider>
已发布的管道提供程序。 |
kwargs
必需
|
自定义关键字参数,保留以供将来开发 |
name
必需
|
已发布管道的名称。 |
graph_id
必需
|
此已发布管道的图形的 ID。 |
description
必需
|
已发布管道的说明。 |
version
必需
|
已发布的管道版本。 |
published_pipeline_id
必需
|
已发布管道的 ID。 |
status
必需
|
已发布管道(“Active”或“Disabled”)的状态。 |
_pipeline_provider
必需
|
<xref:azureml.pipeline.core._workflow_provider._PublishedPipelineProvider>
已发布的管道提供程序。 |
kwargs
必需
|
自定义关键字参数,保留以供将来开发 |
注解
可以从
从管道发布的示例如下所示:
from azureml.pipeline.core import Pipeline
pipeline = Pipeline(workspace=ws, steps=steps)
published_pipeline = pipeline.publish(name="My_New_Pipeline",
description="My New Pipeline Description",
version="1.0",
continue_on_step_failure=True)
若要从 PipelineRun 发布,请使用:
from azureml.pipeline.core import PipelineRun
pipeline_run = PipelineRun(experiment=Experiment(ws, "Pipeline_experiment"), run_id="run_id")
published_pipeline = pipeline_run.publish_pipeline(name="My_New_Pipeline",
description="My New Pipeline Description",
version="1.0",
continue_on_step_failure=True)
注意:continue_on_step_failure参数指定如果一个步骤失败,管道中的步骤是否将继续执行。 默认值为 False,这意味着当一个步骤失败时,管道执行将停止,取消任何正在运行的步骤。
使用 submit. 提交 PublishedPipeline。 调用提交时,将创建一个 PipelineRun ,进而为工作流中的每个步骤创建 StepRun 对象。
提交 PublishedPipeline 的示例如下所示:
from azureml.pipeline.core import PublishedPipeline
published_pipeline = PublishedPipeline.get(workspace=ws, id="published_pipeline_id")
pipeline_run = experiment.submit(published_pipeline)
提交 PublishedPipeline 时可以指定许多可选设置。 这些包括:
continue_on_step_failure:如果步骤失败,是否继续执行 PipelineRun 中的其他步骤(可选)。 只有不依赖于失败步骤输出的步骤才会继续执行。 如果提供,此参数设置将覆盖管道上的设置。
pipeline_parameters:管道执行的参数,{name: value} 的字典。 有关详细信息,请参阅 PipelineParameter。
parent_run_id:可以提供运行 ID 来设置此管道运行的父运行,该运行反映在 RunHistory 中。 父运行必须与提交的管道属于同一试验。
使用以下设置提交 PublishedPipeline 的示例如下所示:
from azureml.pipeline.core import PublishedPipeline
published_pipeline = PublishedPipeline.get(workspace=ws, id="published_pipeline_id")
pipeline_run = experiment.submit(published_pipeline,
continue_on_step_failure=True,
pipeline_parameters={"param1": "value1"},
parent_run_id="<run_id>")
所有已发布的管道都具有 REST 终结点。 使用管道终结点,可以从外部系统(例如非 Python 客户端)触发管道的运行。 有关如何在调用 REST 终结点时进行身份验证的信息,请参阅 https://aka.ms/pl-restep-auth。
例如,使用终结点可以在批量评分和重新训练方案中实现“托管可重复性”。 有关详细信息,请参阅 https://aka.ms/pl-first-pipeline。
方法
disable |
将已发布的管道设置为“已禁用”,并且无法运行。 |
enable |
将已发布的管道设置为“活动”,并可供运行。 |
get |
获取已发布的管道。 |
get_all |
获取当前工作区中的所有已发布管道。 已弃用:此方法已弃用,转而支持 PublishedPipeline list 方法。 |
get_graph |
获取 PublishedPipeline 的图形。 |
get_step_names |
获取 PublishedPipeline 中步骤的名称列表。 |
list |
获取当前工作区中的所有已发布管道。 |
save |
将管道 YAML 保存到文件。 目前,YAML 导出仅支持包含 ModuleSteps 的管道。 |
submit |
提交已发布的管道。 这等效于使用 submit。 返回提交的 PipelineRun。 使用此对象监视和查看运行的详细信息。 |
disable
将已发布的管道设置为“已禁用”,并且无法运行。
disable()
enable
将已发布的管道设置为“活动”,并可供运行。
enable()
get
获取已发布的管道。
static get(workspace, id, _workflow_provider=None, _service_endpoint=None)
参数
名称 | 说明 |
---|---|
workspace
必需
|
在其中创建了已发布管道的工作区。 |
id
必需
|
已发布管道的 ID。 |
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
工作流提供程序。 默认值: None
|
_service_endpoint
|
服务终结点。 默认值: None
|
返回
类型 | 说明 |
---|---|
PublishedPipeline 对象。 |
get_all
获取当前工作区中的所有已发布管道。
已弃用:此方法已弃用,转而支持 PublishedPipeline list 方法。
static get_all(workspace, active_only=True, _service_endpoint=None)
参数
名称 | 说明 |
---|---|
workspace
必需
|
已发布管道创建的工作区。 |
active_only
|
是否仅返回当前处于活动状态的已发布管道。 默认值: True
|
_service_endpoint
|
服务终结点。 默认值: None
|
返回
类型 | 说明 |
---|---|
PublishedPipeline 对象的列表。 |
get_graph
获取 PublishedPipeline 的图形。
get_graph(_workflow_provider=None)
参数
名称 | 说明 |
---|---|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
工作流提供程序。 默认值: None
|
返回
类型 | 说明 |
---|---|
图形。 |
get_step_names
list
获取当前工作区中的所有已发布管道。
static list(workspace, active_only=True, _service_endpoint=None)
参数
名称 | 说明 |
---|---|
workspace
必需
|
在其中创建了已发布管道的工作区。 |
active_only
|
是否仅返回当前处于活动状态的已发布管道。 默认值: True
|
_service_endpoint
|
服务终结点。 默认值: None
|
返回
类型 | 说明 |
---|---|
PublishedPipeline 对象的列表。 |
save
将管道 YAML 保存到文件。
目前,YAML 导出仅支持包含 ModuleSteps 的管道。
save(path=None, _workflow_provider=None)
参数
名称 | 说明 |
---|---|
path
|
要保存到的 YAML 的路径。 如果路径是目录,管道 YAML 文件将保存在 path/pipeline_name.yml。 如果路径为 None,则使用当前目录。 默认值: None
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
工作流提供程序。 默认值: None
|
返回
类型 | 说明 |
---|---|
submit
提交已发布的管道。 这等效于使用 submit。
返回提交的 PipelineRun。 使用此对象监视和查看运行的详细信息。
submit(workspace, experiment_name, pipeline_parameters=None, _workflow_provider=None, _service_endpoint=None, parent_run_id=None, continue_on_step_failure=None)
参数
名称 | 说明 |
---|---|
workspace
必需
|
要提交已发布管道的工作区。 |
experiment_name
必需
|
要提交到的试验的名称。 |
pipeline_parameters
|
用于分配新值 {param name, param value} 的参数字典。 有关详细信息,请参阅 PipelineParameter。 默认值: None
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
工作流提供程序。 默认值: None
|
_service_endpoint
|
服务终结点。 默认值: None
|
parent_run_id
|
要为此管道运行的父运行设置的可选运行 ID,该 ID 反映在 RunHistory 中。 父运行必须属于与提交此管道相同的试验。 默认值: None
|
continue_on_step_failure
|
如果步骤失败(可选)是否继续执行 PipelineRun 中的其他步骤。 如果提供,则会替代管道上的设置。 默认值: None
|
返回
类型 | 说明 |
---|---|
提交的管道运行。 |