Condividi tramite


InputPortBinding Classe

Definisce un'associazione da un'origine a un input di un passaggio della pipeline.

Un input InputPortBinding può essere usato come input per un passaggio. L'origine può essere , PipelineDataPortDataReference, DataReference, PipelineDataseto OutputPortBinding.

InputPortBinding è utile per specificare il nome dell'input del passaggio, se deve essere diverso dal nome dell'oggetto bind ,ad esempio per evitare nomi di input/output duplicati o perché lo script del passaggio deve avere un determinato nome. Può essere usato anche per specificare il bind_mode per PythonScriptStep gli input.

Inizializzare InputPortBinding.

Costruttore

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

Parametri

Nome Descrizione
name
Necessario
str

Nome della porta di input da associare, che può contenere solo lettere, cifre e caratteri di sottolineatura.

bind_object

Oggetto da associare alla porta di input.

Valore predefinito: None
bind_mode
str

Specifica se il passaggio di utilizzo userà il metodo "download" o "mount" per accedere ai dati.

Valore predefinito: mount
path_on_compute
str

Per la modalità "download", il percorso locale da cui il passaggio leggerà i dati.

Valore predefinito: None
overwrite

Per la modalità "download", indicare se sovrascrivere i dati esistenti.

Valore predefinito: None
is_resource

Indica se l'input è una risorsa. Le risorse vengono scaricate nella cartella script e consentono di modificare il comportamento dello script in fase di esecuzione.

Valore predefinito: False
additional_transformations
<xref:azureml.dataprep.Dataflow>

Trasformazioni aggiuntive da applicare all'input. Questa operazione verrà applicata solo se l'output del passaggio precedente è un set di dati di Azure Machine Learning.

Valore predefinito: None
name
Necessario
str

Nome della porta di input da associare, che può contenere solo lettere, cifre e caratteri di sottolineatura.

bind_object
Necessario

Oggetto da associare alla porta di input.

bind_mode
Necessario
str

Specifica se il passaggio di utilizzo userà il metodo "download" o "mount" o "direct" per accedere ai dati.

path_on_compute
Necessario
str

Per la modalità "download", il percorso locale da cui il passaggio leggerà i dati.

overwrite
Necessario

Per la modalità "download", indicare se sovrascrivere i dati esistenti.

is_resource
Necessario

Indicare se l'input è una risorsa. Le risorse vengono scaricate nella cartella script e consentono di modificare il comportamento dello script in fase di esecuzione.

additional_transformations
Necessario
<xref:azureml.dataprep.Dataflow>

Trasformazioni aggiuntive da applicare all'input. Questa operazione verrà applicata solo se l'output del passaggio precedente è un set di dati di Azure Machine Learning.

Commenti

InputPortBinding viene usato per specificare le dipendenze dei dati in una pipeline, rappresenta un input necessario per l'esecuzione di un passaggio. InputPortBindings ha un'origine, denominata bind_object, che specifica la modalità di produzione dei dati di input.

PipelineData e OutputPortBinding possono essere usati come bind_object per un InputPortBinding per specificare che l'input per il passaggio verrà prodotto da un altro passaggio della pipeline.

Un esempio di compilazione di una pipeline con InputPortBinding e PipelineData è il seguente:


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

In questo esempio il passaggio "training" richiede l'output del passaggio "preparare i dati" come input.

PortDataReference, DataReferenceo PipelineDataset può essere usato come bind_object per un inputPortBinding per specificare che l'input per il passaggio esiste già in una posizione specificata.

Un esempio di compilazione di una pipeline con InputPortBinding e DataReference è il seguente:


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

In questo esempio il passaggio "train" richiede il file "sample_data.txt" specificato da DataReference come input.

Metodi

as_resource

Ottenere un'associazione di porta di input duplicata che può essere usata come risorsa.

get_bind_object_data_type

Ottiene il tipo di dati dell'oggetto bind.

get_bind_object_name

Ottenere il nome dell'oggetto bind.

as_resource

Ottenere un'associazione di porta di input duplicata che può essere usata come risorsa.

as_resource()

Restituisce

Tipo Descrizione

InputPortBinding con is_resource proprietà imposta un valore True.

get_bind_object_data_type

Ottiene il tipo di dati dell'oggetto bind.

get_bind_object_data_type()

Restituisce

Tipo Descrizione
str

Nome del tipo di dati.

get_bind_object_name

Ottenere il nome dell'oggetto bind.

get_bind_object_name()

Restituisce

Tipo Descrizione
str

Nome dell'oggetto bind.

Attributi

additional_transformations

Ottenere le trasformazioni aggiuntive da applicare ai dati di input.

Restituisce

Tipo Descrizione
<xref:azureml.dataprep.Dataflow>

Trasformazioni aggiuntive da applicare ai dati di input.

bind_mode

Ottenere la modalità ("download" o "mount" o "direct", "hdfs") che verrà usata per accedere ai dati.

Restituisce

Tipo Descrizione
str

Modalità di associazione ("download" o "mount" o "direct" o "hdfs").

bind_object

Ottenere l'oggetto a cui verrà associato InputPort.

Restituisce

Tipo Descrizione

Oggetto bind.

data_reference_name

Ottenere il nome del riferimento ai dati associato a InputPortBinding.

Restituisce

Tipo Descrizione
str

Nome del riferimento ai dati.

data_type

Ottenere il tipo di dati di input.

Restituisce

Tipo Descrizione
str

Proprietà del tipo di dati.

is_resource

Ottiene un valore che indica se l'input è una risorsa.

Restituisce

Tipo Descrizione

Input di una risorsa.

name

Nome dell'associazione di porte di input.

Restituisce

Tipo Descrizione
str

Nome.

overwrite

Per la modalità "download", indicare se sovrascrivere i dati esistenti.

Restituisce

Tipo Descrizione

Proprietà di sovrascrittura.

path_on_compute

Ottenere il percorso locale da cui il passaggio leggerà i dati.

Restituisce

Tipo Descrizione
str

Percorso nel calcolo.