共用方式為


InputPortBinding 類別

定義從來源到管線步驟輸入的系結。

InputPortBinding 可作為步驟的輸入。 來源可以是 PipelineDataPortDataReferenceDataReferencePipelineDatasetOutputPortBinding

InputPortBinding 對於指定步驟輸入的名稱很有用,如果它應該與系結對象的名稱不同(也就是為了避免重複的輸入/輸出名稱,或因為步驟腳本需要輸入具有特定名稱)。 它也可以用來指定輸入的bind_mode PythonScriptStep

初始化 InputPortBinding。

建構函式

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

參數

名稱 Description
name
必要
str

要系結的輸入埠名稱,只能包含字母、數位和底線。

bind_object

要系結至輸入埠的物件。

預設值: None
bind_mode
str

指定取用步驟會使用「下載」或「掛接」方法來存取數據。

預設值: mount
path_on_compute
str

針對「下載」模式,步驟會從中讀取數據的本機路徑。

預設值: None
overwrite

針對「下載」模式,指出是否要覆寫現有的數據。

預設值: None
is_resource

指出輸入是否為資源。 資源會下載至腳本資料夾,並提供在運行時間變更腳本行為的方式。

預設值: False
additional_transformations
<xref:azureml.dataprep.Dataflow>

要套用至輸入的其他轉換。 只有在上一個步驟的輸出是 Azure Machine Learning 數據集時,才會套用此專案。

預設值: None
name
必要
str

要系結的輸入埠名稱,只能包含字母、數位和底線。

bind_object
必要

要系結至輸入埠的物件。

bind_mode
必要
str

指定取用步驟會使用「下載」或「掛接」或「直接」方法來存取數據。

path_on_compute
必要
str

針對「下載」模式,步驟會從中讀取數據的本機路徑。

overwrite
必要

針對「下載」模式,指出是否要覆寫現有的數據。

is_resource
必要

指出輸入是否為資源。 資源會下載至腳本資料夾,並提供在運行時間變更腳本行為的方式。

additional_transformations
必要
<xref:azureml.dataprep.Dataflow>

要套用至輸入的其他轉換。 只有在上一個步驟的輸出是 Azure Machine Learning 數據集時,才會套用此專案。

備註

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])

在此範例中,“train” 步驟需要 DataReference 所指定的 “sample_data.txt” 檔案做為輸入。

方法

as_resource

取得可做為資源的重複輸入埠系結。

get_bind_object_data_type

取得系結對象的數據類型。

get_bind_object_name

取得系結物件的名稱。

as_resource

取得可做為資源的重複輸入埠系結。

as_resource()

傳回

類型 Description

具有 is_resource 屬性的 InputPortBinding 會設定 True。

get_bind_object_data_type

取得系結對象的數據類型。

get_bind_object_data_type()

傳回

類型 Description
str

數據類型名稱。

get_bind_object_name

取得系結物件的名稱。

get_bind_object_name()

傳回

類型 Description
str

系結物件名稱。

屬性

additional_transformations

取得要套用至輸入數據的其他轉換。

傳回

類型 Description
<xref:azureml.dataprep.Dataflow>

要套用至輸入數據的其他轉換。

bind_mode

取得取用步驟將用來存取數據的模式 (“download” 或 “mount” 或 “direct”、“hdfs”。

傳回

類型 Description
str

系結模式 (“download” 或 “mount” 或 “direct” 或 “hdfs” )。

bind_object

取得 InputPort 將系結至的物件。

傳回

類型 Description

系結物件。

data_reference_name

取得與 InputPortBinding 相關聯的數據參考名稱。

傳回

類型 Description
str

數據參考名稱。

data_type

取得輸入數據的類型。

傳回

類型 Description
str

數據類型屬性。

is_resource

取得輸入是否為資源。

傳回

類型 Description

這是輸入資源。

name

輸入埠系結的名稱。

傳回

類型 Description
str

名稱。

overwrite

針對「下載」模式,指出是否要覆寫現有的數據。

傳回

類型 Description

overwrite 屬性。

path_on_compute

取得步驟會從中讀取數據的本機路徑。

傳回

類型 Description
str

計算上的路徑。