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
|
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
|
Especifica si el paso de consumo usará el método "download" o "mount" para acceder a los datos. Valor predeterminado: mount
|
|
path_on_compute
|
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
|
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
|
Especifica si el paso de consumo usará el método "download" o "mount" o "direct" para acceder a los datos. |
|
path_on_compute
Requerido
|
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 |
|---|---|
|
Nombre del tipo de datos. |
get_bind_object_name
Obtenga el nombre del objeto de enlace.
get_bind_object_name()
Devoluciones
| Tipo | Description |
|---|---|
|
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 |
|---|---|
|
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 |
|---|---|
|
Nombre de referencia de datos. |
data_type
Obtiene el tipo de los datos de entrada.
Devoluciones
| Tipo | Description |
|---|---|
|
Propiedad de tipo de datos. |
is_resource
Obtiene si la entrada es un recurso.
Devoluciones
| Tipo | Description |
|---|---|
|
Es la entrada de un recurso. |
name
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 |
|---|---|
|
Ruta de acceso del proceso. |