OutputPortBinding 类

定义管道步骤的命名输出。

OutputPortBinding 可用于指定将由某个步骤生成的数据类型以及数据的生成方式。 它可以与 InputPortBinding 一起使用,指定步骤输出是另一个步骤的必需输入。

初始化 OutputPortBinding。

继承
builtins.object
OutputPortBinding

构造函数

OutputPortBinding(name, datastore=None, output_name=None, bind_mode='mount', path_on_compute=None, is_directory=None, overwrite=None, data_type=None, pipeline_output_name=None, training_output=None, dataset_registration=None, dataset_output=None)

参数

名称 说明
name
必需
str

OutputPortBinding 对象的名称,只能包含字母、数字和下划线。

datastore

PipelineData 将驻留的数据存储。

默认值: None
output_name
str

输出的名称(如果使用 None 名称)。 只能包含字母、数字和下划线。

默认值: None
bind_mode
str

指定生成步骤将使用“upload”、“mount”或“hdfs”方法来访问数据。

默认值: mount
path_on_compute
str

对于“upload”模式,模块将输出写入到的路径。

默认值: None
is_directory

输出是目录还是单个文件。

默认值: None
overwrite

对于“upload”模式,是否覆盖现有数据。

默认值: None
data_type
str

可选。 数据类型可用于指定输出的预期类型,并详细说明使用步骤使用数据的方式。 可以是任何用户定义的字符串。

默认值: None
pipeline_output_name
str

如果提供,将使用 PipelineRun.get_pipeline_output() 提供此输出。 管道输出名称在管道中必须是唯一的。

默认值: None
training_output

定义训练结果的输出。 只有特定的训练需要此值,这会导致不同种类的输出,例如指标和模型。 例如,AutoMLStep 将生成指标和模型。 还可以定义用于获取最佳模型的特定训练迭代或指标。 对于 HyperDriveStep,你还可以定义要包括在输出中的特定模型文件。

默认值: None
dataset_registration

可选。 这是一个内部参数。 请改用 PipelineData.as_dataset。

默认值: None
dataset_output

可选。 这是一个内部参数。 请改用 OutputFileDatasetConfig。

默认值: None
name
必需
str

OutputPortBinding 对象的名称,只能包含字母、数字和下划线。

datastore
必需

PipelineData 将驻留的数据存储。

output_name
必需
str

输出的名称(如果使用 None 名称)。 只能包含字母、数字和下划线。

bind_mode
必需
str

指定生成步骤将使用“upload”、“mount”或“hdfs”方法来访问数据。

path_on_compute
必需
str

对于“upload”模式,模块将输出写入到的路径。

is_directory
必需

如果输出是目录,则为

overwrite
必需

对于“upload”模式,是否覆盖现有数据。

data_type
必需
str

可选。 数据类型可用于指定输出的预期类型,并详细说明使用步骤使用数据的方式。 可以是任何用户定义的字符串。

pipeline_output_name
必需
str

如果提供,将使用 PipelineRun.get_pipeline_output() 提供此输出。 管道输出名称在管道中必须是唯一的。

training_output
必需

定义训练结果的输出。 只有特定的训练需要此值,这会导致不同种类的输出,例如指标和模型。 例如,AutoMLStep 将生成指标和模型。 还可以定义用于获取最佳模型的特定训练迭代或指标。 对于 HyperDriveStep,你还可以定义要包括在输出中的特定模型文件。

dataset_registration
必需

可选。 这是一个内部参数。 请改用 PipelineData.as_dataset。

dataset_output
必需

可选。 这是一个内部参数。 请改用 OutputFileDatasetConfig。

注解

在生成管道时,可以按类似于 PipelineData 的方式来使用 OutputPortBinding,指定步骤输入和输出。 不同之处在于,OutputPortBinding 需要与 InputPortBinding 一起使用,才能用作另一个步骤的输入。

使用 OutputPortBinding 构造管道的示例如下所示:


   from azureml.pipeline.core import OutputPortBinding, InputPortBinding, Pipeline
   from azureml.pipeline.steps import PythonScriptStep

   step_1_output = OutputPortBinding("output", datastore=datastore)

   step_1 = PythonScriptStep(
       name='process data',
       script_name="process_data.py",
       compute_target=compute,
       arguments=["--output", step_1_output],
       outputs=[step_1_output]
   )

   step_2_input = InputPortBinding("input", bind_object=step_1_output)

   step_2 = PythonScriptStep(
       name='train',
       script_name="train.py",
       compute_target=compute,
       arguments=["--input", step_2_input],
       inputs=[step_2_input]
   )

   pipeline = Pipeline(workspace=workspace, steps=[step_1, step_2])

这将创建具有两个步骤的管道。 首先将执行进程步骤,然后在该步骤完成后,将执行训练步骤。 Azure ML 将向训练步骤提供由 OutputPortBinding 对象描述的进程步骤产生的输出。

属性

bind_mode

获取生成步骤将用于创建数据的模式(“upload”、“mount”或“hdfs”)。

返回

类型 说明
str

绑定模式。

data_type

获取将生成的数据类型。

返回

类型 说明
str

数据类型名称。

dataset_registration

获取数据集注册信息。

返回

类型 说明

数据集注册信息。

datastore

PipelineData 将驻留的数据存储。

返回

类型 说明

数据存储对象。

is_directory

输出是否是目录。

返回

类型 说明

is_directory

name

OutputPortBinding 对象的名称。

返回

类型 说明
str

名称。

overwrite

对于“upload”模式,指示是否覆盖现有数据。

返回

类型 说明

_overwrite

path_on_compute

对于“upload”模式,模块将输出写入到的路径。

返回

类型 说明
str

path_on_compute

pipeline_output_name

获取与此 OutputPortBinding 对应的管道输出的名称。

返回

类型 说明
str

管道输出名称。

training_output

获取训练输出。

返回

类型 说明

训练输出