InputPortBinding 类

定义从源到管道步骤输入的绑定。

InputPortBinding 可用作步骤的输入。 源可以是 PipelineDataPortDataReferenceDataReferencePipelineDatasetOutputPortBinding

如果步骤输入的名称应不同于绑定对象的名称(即避免输入/输出名称重复,或者步骤脚本需要输入具有特定名称),则 InputPortBinding 可用于指定步骤输入的名称。 它还可用于指定 PythonScriptStep 输入的 bind_mode。

继承
builtins.object
InputPortBinding

构造函数

InputPortBinding(name, bind_object=None, bind_mode='mount', path_on_compute=None, overwrite=None, is_resource=False, additional_transformations=None, **kwargs)

参数

name
str
必需

要绑定的输入端口的名称,只能包含字母、数字和下划线。

bind_object
Union[<xref:azureml.pipeline.core.PortDataReference,azureml.data.data_reference.DataReference,azureml.pipeline.core.PipelineData,azureml.pipeline.core.OutputPortBinding,azureml.pipeline.core.PipelineDataset>]
默认值: None

要绑定到输入端口的对象。

bind_mode
str
默认值: mount

指定使用步骤是使用“下载”还是“装载”方法来访问数据。

path_on_compute
str
默认值: None

对于“下载”模式,步骤将从中读取数据的本地路径。

overwrite
bool
默认值: None

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

is_resource
bool
默认值: False

指示输入是否是资源。 资源会下载到脚本文件夹,并提供一种在运行时更改脚本行为的方法。

additional_transformations
<xref:azureml.dataprep.Dataflow>
默认值: None

要应用到输入的其他转换。 只有当上一步骤的输出是 Azure 机器学习数据集时才会应用此项。

注解

InputPortBinding 用于在管道中指定数据依赖项,它表示步骤执行所需的输入。 InputPortBindings 具有名为 bind_object 的源,用于指定输入数据的生成方式。

PipelineDataOutputPortBinding 可用作 InputPortBinding 的 bind_object,用于指定步骤的输入将由管道中的另一个步骤生成。

使用 InputPortBinding 和 PipelineData 生成管道的示例如下所示:


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

   step_1_output = PipelineData("output", datastore=datastore, output_mode="mount")

   step_1 = PythonScriptStep(
       name='prepare data',
       script_name="prepare_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])

在本示例中,“训练”步骤需要将“准备数据”步骤的输出作为输入。

PortDataReferenceDataReferencePipelineDataset 可用作 InputPortBinding 的 bind_object,用于指定位置已存在指定步骤的输入。

使用 InputPortBinding 和 DataReference 生成管道的示例如下所示:


   from azureml.data.data_reference import DataReference
   from azureml.pipeline.core import InputPortBinding, Pipeline
   from azureml.pipeline.steps import PythonScriptStep

   data_reference = DataReference(datastore=datastore, path_on_datastore='sample_data.txt', mode="mount")
   step_1_input = InputPortBinding("input", bind_object=data_reference)

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

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

在此示例中,“训练”步骤需要将 DataReference 指定的“sample_data.txt”文件作为输入。

方法

as_resource

获取可用作资源的重复输入端口绑定。

get_bind_object_data_type

获取绑定对象的数据类型。

get_bind_object_name

获取绑定对象的名称。

as_resource

获取可用作资源的重复输入端口绑定。

as_resource()

返回

is_resource 属性设置为 True 的 InputPortBinding。

返回类型

get_bind_object_data_type

获取绑定对象的数据类型。

get_bind_object_data_type()

返回

数据类型名称。

返回类型

str

get_bind_object_name

获取绑定对象的名称。

get_bind_object_name()

返回

绑定对象名称。

返回类型

str

属性

additional_transformations

获取要应用于输入数据的其他转换。

返回

要应用于输入数据的其他转换。

返回类型

<xref:azureml.dataprep.Dataflow>

bind_mode

获取使用步骤将用于访问数据的模式(“下载”、“装装”、“直接”或“hdfs”)。

返回

绑定模式(“下载”、“装载”、“直接”或“hdfs”)。

返回类型

str

bind_object

获取 InputPort 将绑定到的对象。

返回

绑定对象。

返回类型

Union[<xref:azureml.pipeline.core.PortDataReference,azureml.data.data_reference.DataReference,azureml.pipeline.core.PipelineData,azureml.pipeline.core.OutputPortBinding,azureml.pipeline.core.PipelineDataset>]

data_reference_name

获取与 InputPortBinding 关联的数据引用的名称。

返回

数据引用名称。

返回类型

str

data_type

获取输入数据的类型。

返回

数据类型属性。

返回类型

str

is_resource

了解输入是否是资源。

返回

输入是否是资源。

返回类型

name

输入端口绑定的名称。

返回

名称。

返回类型

str

overwrite

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

返回

覆盖属性。

返回类型

path_on_compute

获取步骤将从中读取数据的本地路径。

返回

计算路径。

返回类型

str