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 workspace:已发布管道的工作区。 :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
Workspace
必需

已发布管道的工作区。

continue_on_step_failure
bool
必需

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

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

已发布管道提供程序。

kwargs
dict
必需

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

name
str
必需

已发布管道的名称。

graph_id
str
必需

此已发布管道的图 ID。

description
str
必需

已发布管道的说明。

version
str
必需

已发布管道的版本。

published_pipeline_id
str
必需

已发布管道的 ID。

status
str
必需

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

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

已发布管道提供程序。

kwargs
dict
必需

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

注解

可以从 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
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
Workspace
必需

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

active_only
bool
默认值: 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
Workspace
必需

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

active_only
bool
默认值: True

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

_service_endpoint
str
默认值: None

服务终结点。

返回

PublishedPipeline 对象的列表。

返回类型

save

将管道 YAML 保存到文件。

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

save(path=None, _workflow_provider=None)

参数

path
str
默认值: None

要将 YAML 保存到的路径。 如果该路径为目录,则管道 YAML 文件将保存到 path/pipeline_name.yml。 如果该路径为 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
Workspace
必需

要在其中提交已发布管道的工作区。

experiment_name
str
必需

要提交到的试验的名称。

pipeline_parameters
dict
默认值: None

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

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

工作流提供程序。

_service_endpoint
str
默认值: None

服务终结点。

parent_run_id
str
默认值: None

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

continue_on_step_failure
bool
默认值: None

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

返回

已提交的管道运行。

返回类型

属性

continue_on_step_failure

获取 continue_on_step_failure 设置的值。

返回

continue_on_step_failure 设置的值。

返回类型

description

获取已发布管道的说明。

返回

已发布管道的说明。

返回类型

str

endpoint

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

返回

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

返回类型

str

graph_id

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

返回

图的 ID。

返回类型

str

id

获取已发布管道的 ID。

返回

已发布管道的 ID。

返回类型

str

name

获取已发布管道的名称。

返回

已发布管道的名称。

返回类型

str

status

获取已发布管道的状态。

返回

已发布管道的状态。

返回类型

str

total_run_steps

获取管道中的步骤数。

返回

管道中的步骤数。

返回类型

int

version

获取已发布管道的版本。

返回

所发布管道的版本。

返回类型

str