Compartir a través de


InputPortBinding Clase

Define un enlace de un origen a una entrada de un paso de canalización.

InputPortBinding se puede usar como entrada para un paso. El origen puede ser , PipelineDataPortDataReference, DataReference, PipelineDataseto OutputPortBinding.

InputPortBinding es útil para especificar el nombre de la entrada del paso, si debe ser diferente del nombre del objeto de enlace (es decir, para evitar nombres de entrada y salida duplicados o porque el script de paso necesita una entrada para tener un nombre determinado). También se puede usar para especificar el bind_mode para PythonScriptStep las entradas.

Inicialice InputPortBinding.

Constructor

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

Parámetros

Nombre Description
name
Requerido
str

Nombre del puerto de entrada que se va a enlazar, que solo puede contener letras, dígitos y caracteres de subrayado.

bind_object

Objeto que se va a enlazar al puerto de entrada.

Valor predeterminado: None
bind_mode
str

Especifica si el paso de consumo usará el método "download" o "mount" para acceder a los datos.

Valor predeterminado: mount
path_on_compute
str

Para el modo "descargar", la ruta de acceso local del paso leerá los datos.

Valor predeterminado: None
overwrite

Para el modo "descargar", indique si se deben sobrescribir los datos existentes.

Valor predeterminado: None
is_resource

Indica si la entrada es un recurso. Los recursos se descargan en la carpeta de scripts y proporcionan una manera de cambiar el comportamiento del script en tiempo de ejecución.

Valor predeterminado: False
additional_transformations
<xref:azureml.dataprep.Dataflow>

Transformaciones adicionales que se aplicarán a la entrada. Esto solo se aplicará si la salida del paso anterior es un conjunto de datos de Azure Machine Learning.

Valor predeterminado: None
name
Requerido
str

Nombre del puerto de entrada que se va a enlazar, que solo puede contener letras, dígitos y caracteres de subrayado.

bind_object
Requerido

Objeto que se va a enlazar al puerto de entrada.

bind_mode
Requerido
str

Especifica si el paso de consumo usará el método "download" o "mount" o "direct" para acceder a los datos.

path_on_compute
Requerido
str

Para el modo "descargar", la ruta de acceso local del paso leerá los datos.

overwrite
Requerido

Para el modo "descargar", indique si se deben sobrescribir los datos existentes.

is_resource
Requerido

Indica si la entrada es un recurso. Los recursos se descargan en la carpeta de scripts y proporcionan una manera de cambiar el comportamiento del script en tiempo de ejecución.

additional_transformations
Requerido
<xref:azureml.dataprep.Dataflow>

Transformaciones adicionales que se aplicarán a la entrada. Esto solo se aplicará si la salida del paso anterior es un conjunto de datos de Azure Machine Learning.

Comentarios

InputPortBinding se usa para especificar dependencias de datos en una canalización, representa una entrada que requiere un paso para la ejecución. InputPortBindings tiene un origen, denominado bind_object, que especifica cómo se generan los datos de entrada.

PipelineData y OutputPortBinding se pueden usar como la bind_object de una inputPortBinding para especificar que la entrada del paso se generará en otro paso de la canalización.

Un ejemplo para compilar una canalización mediante InputPortBinding y PipelineData es el siguiente:


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

En este ejemplo, el paso "entrenar" requiere la salida del paso "preparar datos" como entrada.

PortDataReference, DataReferenceo PipelineDataset se puede usar como el bind_object de una clase InputPortBinding para especificar que la entrada del paso ya existe en una ubicación especificada.

Un ejemplo para compilar una canalización mediante InputPortBinding y DataReference es el siguiente:


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

En este ejemplo, el paso "train" requiere el archivo "sample_data.txt" especificado por DataReference como entrada.

Métodos

as_resource

Obtenga un enlace de puerto de entrada duplicado que se puede usar como un recurso.

get_bind_object_data_type

Obtiene el tipo de datos del objeto de enlace.

get_bind_object_name

Obtenga el nombre del objeto de enlace.

as_resource

Obtenga un enlace de puerto de entrada duplicado que se puede usar como un recurso.

as_resource()

Devoluciones

Tipo Description

InputPortBinding con is_resource propiedad establece un valor True.

get_bind_object_data_type

Obtiene el tipo de datos del objeto de enlace.

get_bind_object_data_type()

Devoluciones

Tipo Description
str

Nombre del tipo de datos.

get_bind_object_name

Obtenga el nombre del objeto de enlace.

get_bind_object_name()

Devoluciones

Tipo Description
str

Nombre del objeto de enlace.

Atributos

additional_transformations

Obtenga las transformaciones adicionales que se aplicarán a los datos de entrada.

Devoluciones

Tipo Description
<xref:azureml.dataprep.Dataflow>

Las transformaciones adicionales que se aplicarán a los datos de entrada.

bind_mode

Obtenga el modo ("descargar" o "montar" o "directo", "hdfs") que usará el paso de consumo para acceder a los datos.

Devoluciones

Tipo Description
str

Modo de enlace ("descargar" o "montar" o "directo" o "hdfs").

bind_object

Obtenga el objeto al que se enlazará InputPort.

Devoluciones

Tipo Description

Objeto bind.

data_reference_name

Obtenga el nombre de la referencia de datos asociada a InputPortBinding.

Devoluciones

Tipo Description
str

Nombre de referencia de datos.

data_type

Obtiene el tipo de los datos de entrada.

Devoluciones

Tipo Description
str

Propiedad de tipo de datos.

is_resource

Obtiene si la entrada es un recurso.

Devoluciones

Tipo Description

Es la entrada de un recurso.

name

Nombre del enlace de puerto de entrada.

Devoluciones

Tipo Description
str

Nombre.

overwrite

Para el modo "descargar", indique si se deben sobrescribir los datos existentes.

Devoluciones

Tipo Description

La propiedad overwrite.

path_on_compute

Obtenga la ruta de acceso local desde la que leerá los datos.

Devoluciones

Tipo Description
str

Ruta de acceso del proceso.