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.HasPipelinePortal
PublishedPipeline

构造函数

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
必需
str

已发布管道的名称。

graph_id
必需
str

此已发布管道的图 ID。

description
必需
str

已发布管道的说明。

version
必需
str

已发布管道的版本。

published_pipeline_id
必需
str

已发布管道的 ID。

status
必需
str

已发布管道的状态(“Active”或“Disabled”)。

endpoint
必需
str

用于提交此管道的运行的 REST 终结点 URL。

total_run_steps
必需
int

此管道中的步骤数。

workspace
必需

已发布管道的工作区。

continue_on_step_failure
必需

当某个步骤失败时,是否继续执行 PipelineRun 中的其他步骤。 默认值为 false。

_pipeline_provider
必需
<xref:azureml.pipeline.core._workflow_provider._PublishedPipelineProvider>

已发布管道提供程序。

kwargs
必需

自定义关键字参数,保留供将来开发

name
必需
str

已发布管道的名称。

graph_id
必需
str

此已发布管道的图 ID。

description
必需
str

已发布管道的说明。

version
必需
str

已发布管道的版本。

published_pipeline_id
必需
str

已发布管道的 ID。

status
必需
str

已发布管道的状态 (“活动”或“已禁用”) 。

_pipeline_provider
必需
<xref:azureml.pipeline.core._workflow_provider._PublishedPipelineProvider>

已发布管道提供程序。

kwargs
必需

自定义关键字参数,保留供将来开发

注解

可以从 PipelinePipelineRun 创建 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
必需
str

已发布管道的 ID。

_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>

工作流提供程序。

默认值: None
_service_endpoint
str

服务终结点。

默认值: None

返回

类型 说明

一个 PublishedPipeline 对象。

get_all

获取当前工作区中所有已发布的管道。

弃用:此方法即将弃用,将由 PublishedPipeline list 方法取代。

static get_all(workspace, active_only=True, _service_endpoint=None)

参数

名称 说明
workspace
必需

在其中创建了已发布管道的工作区。

active_only

是否只返回当前处于活动状态的已发布管道。

默认值: True
_service_endpoint
str

服务终结点。

默认值: 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
str

服务终结点。

默认值: None

返回

类型 说明

PublishedPipeline 对象的列表。

save

将管道 YAML 保存到文件。

目前,YAML 导出仅支持由 ModuleSteps 组成的管道。

save(path=None, _workflow_provider=None)

参数

名称 说明
path
str

要将 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
必需
str

要提交到的试验的名称。

pipeline_parameters

用于分配新值的参数的字典 {param name, param value}。 有关详细信息,请参阅 PipelineParameter

默认值: None
_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>

工作流提供程序。

默认值: None
_service_endpoint
str

服务终结点。

默认值: None
parent_run_id
str

为此管道运行的父运行设置的可选运行 ID,该 ID 将在 RunHistory 中反映出来。 父运行必须属于此管道所要提交到的同一试验。

默认值: None
continue_on_step_failure

当某个步骤失败时,是否继续执行 PipelineRun 中的其他步骤(可选)。 如果提供,则重写管道上的设置。

默认值: None

返回

类型 说明

已提交的管道运行。

属性

continue_on_step_failure

获取 continue_on_step_failure 设置的值。

返回

类型 说明

continue_on_step_failure 设置的值。

description

获取已发布管道的说明。

返回

类型 说明
str

已发布管道的说明。

endpoint

获取用于运行已发布管道的 REST 终结点 URL。

返回

类型 说明
str

用于运行已发布管道的 REST 终结点 URL。

graph_id

获取此已发布管道的图 ID。

返回

类型 说明
str

图的 ID。

id

获取已发布管道的 ID。

返回

类型 说明
str

已发布管道的 ID。

name

获取已发布管道的名称。

返回

类型 说明
str

已发布管道的名称。

status

获取已发布管道的状态。

返回

类型 说明
str

已发布管道的状态。

total_run_steps

获取管道中的步骤数。

返回

类型 说明
int

管道中的步骤数。

version

获取已发布管道的版本。

返回

类型 说明
str

所发布管道的版本。