Compartilhar via


InputPortBinding Classe

Define uma associação de uma origem e de uma entrada de uma etapa de pipeline.

Uma InputPortBinding pode ser usada como uma entrada para uma etapa. A origem pode ser PipelineData, PortDataReference, DataReference, PipelineDataset ou OutputPortBinding.

InputPortBinding é útil para especificar o nome da entrada da etapa, se ela deve ser diferente do nome do objeto de associação (ou seja, para evitar nomes de entrada/saída duplicados ou porque o script de etapa precisa de uma entrada para ter um determinado nome). Também pode ser usado para especificar o bind_mode de entradas PythonScriptStep.

Inicializar InputPortBinding.

Herança
builtins.object
InputPortBinding

Construtor

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

Parâmetros

Nome Description
name
Obrigatório
str

Nome da porta de entrada a ser associada, que pode conter apenas letras, dígitos e sublinhados.

bind_object

O objeto para a associação à porta de entrada.

valor padrão: None
bind_mode
str

Especifica se a etapa de consumo usará o método "download" ou "mount" para acessar os dados.

valor padrão: mount
path_on_compute
str

Para o modo "download", o caminho local do qual a etapa lerá os dados.

valor padrão: None
overwrite

Para o modo "download", indique se os dados existentes devem ser substituídos.

valor padrão: None
is_resource

Indica se a entrada é um recurso. Os recursos são baixados para a pasta do script e fornecem uma forma de alterar o comportamento do script em tempo de execução.

valor padrão: False
additional_transformations
<xref:azureml.dataprep.Dataflow>

Transformações adicionais a serem aplicadas à entrada. Só será aplicado se a saída da etapa anterior for um conjunto de dados do Azure Machine Learning.

valor padrão: None
name
Obrigatório
str

Nome da porta de entrada a ser associada, que pode conter apenas letras, dígitos e sublinhados.

bind_object
Obrigatório

O objeto para a associação à porta de entrada.

bind_mode
Obrigatório
str

Especifica se a etapa de consumo usará o método "download" ou "mount" ou "direct" para acessar os dados.

path_on_compute
Obrigatório
str

Para o modo "download", o caminho local do qual a etapa lerá os dados.

overwrite
Obrigatório

Para o modo "download", indique se os dados existentes devem ser substituídos.

is_resource
Obrigatório

Indica se a entrada é um recurso. Os recursos são baixados para a pasta do script e fornecem uma forma de alterar o comportamento do script em tempo de execução.

additional_transformations
Obrigatório
<xref:azureml.dataprep.Dataflow>

Transformações adicionais a serem aplicadas à entrada. Só será aplicado se a saída da etapa anterior for um conjunto de dados do Azure Machine Learning.

Comentários

InputPortBinding é usado para especificar dependências de dados em um pipeline e representa uma entrada que uma etapa requer para a execução. InputPortBindings têm uma fonte, chamada bind_object, que especifica como os dados de entrada são produzidos.

PipelineData e OutputPortBinding podem ser usados como o bind_object de um InputPortBinding para especificar que a entrada da etapa será produzida por outra etapa no pipeline.

Veja o seguinte exemplo de criação de pipeline com InputPortBinding e 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])

No exemplo, a etapa "treinar" requer a saída da etapa "preparar dados" como uma entrada.

PortDataReference, DataReference ou PipelineDataset pode ser usado como o bind_object de um InputPortBinding para especificar que a entrada da etapa já existe em um local especificado.

Veja o seguinte exemplo de criação de pipeline com InputPortBinding e 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])

No exemplo, a etapa "treinar" requer o arquivo "sample_data.txt" especificado por DataReference como uma entrada.

Métodos

as_resource

Obter uma associação de porta de entrada duplicada que pode ser usada como um recurso.

get_bind_object_data_type

Obter o tipo de dados do objeto de associação.

get_bind_object_name

Obter o nome do objeto de associação.

as_resource

Obter uma associação de porta de entrada duplicada que pode ser usada como um recurso.

as_resource()

Retornos

Tipo Description

InputPortBinding com a propriedade is_resource definida como True.

get_bind_object_data_type

Obter o tipo de dados do objeto de associação.

get_bind_object_data_type()

Retornos

Tipo Description
str

O nome do tipo de dados.

get_bind_object_name

Obter o nome do objeto de associação.

get_bind_object_name()

Retornos

Tipo Description
str

O nome do objeto de associação.

Atributos

additional_transformations

Obter transformações adicionais a serem aplicadas aos dados de entrada.

Retornos

Tipo Description
<xref:azureml.dataprep.Dataflow>

Transformações adicionais a serem aplicadas aos dados de entrada.

bind_mode

Obter o modo ("download", "mount", "direct" ou "hdfs") a ser usado pela etapa de consumo para acessar os dados.

Retornos

Tipo Description
str

O modo de associação ("download", "mount", "direct" ou "hdfs").

bind_object

Obter o objeto ao qual InputPort será vinculado.

Retornos

Tipo Description

O objeto de associação.

data_reference_name

Obter o nome da referência de dados associada a InputPortBinding.

Retornos

Tipo Description
str

O nome da referência de dados.

data_type

Obter o tipo dos dados de entrada.

Retornos

Tipo Description
str

A propriedade de tipo de dados.

is_resource

Obter indicação sobre se a entrada é um recurso.

Retornos

Tipo Description

É entrada de um recurso.

name

Nome da associação de porta de entrada.

Retornos

Tipo Description
str

O nome.

overwrite

Para o modo "download", indique se os dados existentes devem ser substituídos.

Retornos

Tipo Description

A propriedade de substituição.

path_on_compute

Obter o caminho local do qual a etapa lerá dados.

Retornos

Tipo Description
str

O caminho na computação.