PublishedPipeline 类
表示在没有构造管道的 Python 代码的情况下提交的管道。
此外,PublishedPipeline 可用于重新提交具有不同的 PipelineParameter 值和输入的 Pipeline。
初始化 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。
- 继承
-
azureml.core._portal.HasPipelinePortalPublishedPipeline
构造函数
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
必需
|
已发布管道的状态 (“活动”或“已禁用”) 。 |
_pipeline_provider
必需
|
<xref:azureml.pipeline.core._workflow_provider._PublishedPipelineProvider>
已发布管道提供程序。 |
kwargs
必需
|
自定义关键字参数,保留供将来开发 |
注解
可以从 Pipeline 或 PipelineRun 创建 PublishedPipeline。
从管道进行发布的示例如下:
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。 调用 submit,将创建 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
获取 PublishedPipeline 中的步骤名称列表。
get_step_names(_workflow_provider=None)
参数
名称 | 说明 |
---|---|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
工作流提供程序。 默认值: None
|
返回
类型 | 说明 |
---|---|
PublishedPipeline 中的步骤名称列表。 |
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
|
返回
类型 | 说明 |
---|---|
已提交的管道运行。 |