InputPortBinding Classe

Define um enlace de uma origem para uma entrada de um passo de pipeline.

Um InputPortBinding pode ser utilizado como uma entrada para um passo. A origem pode ser , PortDataReferencePipelineData, , DataReference, PipelineDatasetou OutputPortBinding.

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

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

name
str
Necessário

Nome da porta de entrada a vincular, que só pode conter letras, dígitos e carateres de sublinhado.

bind_object
Union[PortDataReference, DataReference, PipelineData, OutputPortBinding, PipelineDataset]
valor predefinido: None

O objeto a vincular à porta de entrada.

bind_mode
str
valor predefinido: mount

Especifica se o passo de consumo utilizará o método "download" ou "mount" para aceder aos dados.

path_on_compute
str
valor predefinido: None

Para o modo de "transferência", o caminho local a partir do qual o passo irá ler os dados.

overwrite
bool
valor predefinido: None

Para o modo de "transferência", indique se deve substituir os dados existentes.

is_resource
bool
valor predefinido: False

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

additional_transformations
<xref:azureml.dataprep.Dataflow>
valor predefinido: None

Transformações adicionais a aplicar à entrada. Isto só será aplicado se o resultado do passo anterior for um Conjunto de Dados do Azure Machine Learning.

name
str
Necessário

Nome da porta de entrada a vincular, que só pode conter letras, dígitos e carateres de sublinhado.

bind_object
Union[PortDataReference, DataReference, PipelineData, OutputPortBinding, PipelineDataset]
Necessário

O objeto a vincular à porta de entrada.

bind_mode
str
Necessário

Especifica se o passo de consumo utilizará o método "download" ou "mount" ou "direct" para aceder aos dados.

path_on_compute
str
Necessário

Para o modo de "transferência", o caminho local a partir do qual o passo irá ler os dados.

overwrite
bool
Necessário

Para o modo de "transferência", indique se deve substituir os dados existentes.

is_resource
bool
Necessário

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

additional_transformations
<xref:azureml.dataprep.Dataflow>
Necessário

Transformações adicionais a aplicar à entrada. Isto só será aplicado se o resultado do passo anterior for um Conjunto de Dados do Azure Machine Learning.

Observações

InputPortBinding é utilizado para especificar dependências de dados num Pipeline, representa uma entrada que um passo requer para a execução. InputPortBindings tem uma origem, denominada bind_object, que especifica a forma como os dados de entrada são produzidos.

PipelineData e OutputPortBinding pode ser utilizado como o bind_object para um InputPortBinding para especificar que a entrada para o passo será produzida por outro passo no Pipeline.

Um exemplo para criar um Pipeline com InputPortBinding e PipelineData é o seguinte:


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

Neste exemplo, o passo "preparar" requer a saída do passo "preparar dados" como uma entrada.

PortDataReference, DataReferenceou PipelineDataset pode ser utilizado como o bind_object para um InputPortBinding para especificar que a entrada para o passo já existe numa localização especificada.

Um exemplo para criar um Pipeline com InputPortBinding e DataReference é o seguinte:


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

Neste exemplo, o passo "train" requer o ficheiro "sample_data.txt" especificado pela DataReference como uma entrada.

Métodos

as_resource

Obtenha um enlace de porta de entrada duplicado que pode ser utilizado como recurso.

get_bind_object_data_type

Obtenha o tipo de dados do objeto de enlace.

get_bind_object_name

Obtenha o nome do objeto de enlace.

as_resource

Obtenha um enlace de porta de entrada duplicado que pode ser utilizado como recurso.

as_resource()

Devoluções

InputPortBinding com is_resource propriedade definir um Verdadeiro.

Tipo de retorno

get_bind_object_data_type

Obtenha o tipo de dados do objeto de enlace.

get_bind_object_data_type()

Devoluções

O nome do tipo de dados.

Tipo de retorno

str

get_bind_object_name

Obtenha o nome do objeto de enlace.

get_bind_object_name()

Devoluções

O nome do objeto de enlace.

Tipo de retorno

str

Atributos

additional_transformations

Obtenha as transformações adicionais a aplicar aos dados de entrada.

Devoluções

As transformações adicionais a aplicar aos dados de entrada.

Tipo de retorno

<xref:azureml.dataprep.Dataflow>

bind_mode

Obtenha o modo ("download" ou "mount" ou "direct", "hdfs") que o passo de consumo utilizará para aceder aos dados.

Devoluções

O modo de enlace ("download" ou "mount" ou "direct" ou "hdfs").

Tipo de retorno

str

bind_object

Obtenha o objeto a que o InputPort estará vinculado.

Devoluções

O objeto de enlace.

Tipo de retorno

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

Obtenha o nome da referência de dados associada ao InputPortBinding.

Devoluções

O nome da referência de dados.

Tipo de retorno

str

data_type

Obtenha o tipo de dados de entrada.

Devoluções

A propriedade do tipo de dados.

Tipo de retorno

str

is_resource

Obtenha se a entrada é um recurso.

Devoluções

É introduzir um recurso.

Tipo de retorno

name

Nome do enlace de porta de entrada.

Devoluções

O nome.

Tipo de retorno

str

overwrite

Para o modo de "transferência", indique se deve substituir os dados existentes.

Devoluções

A propriedade substituir.

Tipo de retorno

path_on_compute

Obtenha o caminho local a partir do qual o passo irá ler os dados.

Devoluções

O caminho na computação.

Tipo de retorno

str