Condividi tramite


AzureBatchStep Classe

Crea un passaggio della pipeline di Azure ML per l'invio di processi a Azure Batch.

Nota: questo passaggio non supporta il caricamento/download delle directory e il relativo contenuto.

Per un esempio di uso di AzureBatchStep, vedere il notebook https://aka.ms/pl-azbatch.

Creare un passaggio della pipeline di Azure ML per l'invio di processi a Azure Batch.

Ereditarietà
azureml.pipeline.core._azurebatch_step_base._AzureBatchStepBase
AzureBatchStep

Costruttore

AzureBatchStep(name, create_pool=False, pool_id=None, delete_batch_job_after_finish=True, delete_batch_pool_after_finish=False, is_positive_exit_code_failure=True, vm_image_urn='urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter', run_task_as_admin=False, target_compute_nodes=1, vm_size='standard_d1_v2', source_directory=None, executable=None, arguments=None, inputs=None, outputs=None, allow_reuse=True, compute_target=None, version=None)

Parametri

Nome Descrizione
name
Necessario
str

[Obbligatorio] Nome del passaggio.

create_pool

Indica se creare il pool prima di eseguire i processi.

Valore predefinito: False
pool_id
str

[Obbligatorio] ID del pool in cui viene eseguito il processo. L'ID può essere un pool esistente o uno che verrà creato quando il processo viene inviato.

Valore predefinito: None
delete_batch_job_after_finish

Indica se eliminare il processo dall'account Batch al termine dell'operazione.

Valore predefinito: True
delete_batch_pool_after_finish

Indica se eliminare il pool al termine del processo.

Valore predefinito: False
is_positive_exit_code_failure

Indica se il processo ha esito negativo se l'attività esiste con un codice positivo.

Valore predefinito: True
vm_image_urn
str

Se create_pool è True e la macchina virtuale usa VirtualMachineConfiguration. Formato valore: urn:publisher:offer:sku. Esempio: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter.

Valore predefinito: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
run_task_as_admin

Indica se l'attività deve essere eseguita con privilegi di amministratore.

Valore predefinito: False
target_compute_nodes
int

Se create_pool è True, indica il numero di nodi di calcolo che verranno aggiunti al pool.

Valore predefinito: 1
vm_size
str

Se create_pool è True, indica le dimensioni della macchina virtuale dei nodi di calcolo.

Valore predefinito: standard_d1_v2
source_directory
str

Cartella locale che contiene i file binari del modulo, eseguibili, assembly e così via.

Valore predefinito: None
executable
str

[Obbligatorio] Nome del comando/eseguibile che verrà eseguito come parte del processo.

Valore predefinito: None
arguments
str

Argomenti per il comando/eseguibile.

Valore predefinito: None
inputs

Elenco di associazioni di porte di input. Prima dell'esecuzione del processo, viene creata una cartella per ogni input. I file per ogni input verranno copiati dalla risorsa di archiviazione alla rispettiva cartella nel nodo di calcolo. Ad esempio, se il nome di input è input1 e il percorso relativo nella risorsa di archiviazione è some/relative/path/that/can/really/long/inputfile.txt, il percorso del file nel calcolo sarà: ./input1/inputfile.txt. Quando il nome di input è più lungo di 32 caratteri, verrà troncato e aggiunto con un suffisso univoco in modo che il nome della cartella possa essere creato correttamente nella destinazione di calcolo.

Valore predefinito: None
outputs

Elenco di associazioni di porte di output. Analogamente agli input, prima dell'esecuzione del processo, viene creata una cartella per ogni output. Il nome della cartella corrisponderà al nome dell'output. Si presuppone che il processo inserisca l'output in tale cartella.

Valore predefinito: None
allow_reuse

Indica se il passaggio deve riutilizzare i risultati precedenti quando viene eseguito di nuovo con le stesse impostazioni. Il riutilizzo è abilitato per impostazione predefinita. Se il contenuto del passaggio (script/dipendenze) e gli input e i parametri rimangono invariati, l'output dell'esecuzione precedente di questo passaggio viene riutilizzato. Quando si riutilizza il passaggio, anziché inviare il processo al calcolo, i risultati dell'esecuzione precedente vengono immediatamente resi disponibili per tutti i passaggi successivi. Se si usano set di dati di Azure Machine Learning come input, il riutilizzo viene determinato dal fatto che la definizione del set di dati sia stata modificata, non dal fatto che i dati sottostanti siano stati modificati.

Valore predefinito: True
compute_target

[Obbligatorio] Calcolo BatchCompute in cui viene eseguito il processo.

Valore predefinito: None
version
str

Tag di versione facoltativo per indicare una modifica delle funzionalità per il modulo.

Valore predefinito: None
name
Necessario
str

[Obbligatorio] Nome del passaggio.

create_pool
Necessario

Indica se creare il pool prima di eseguire i processi.

pool_id
Necessario
str

[Obbligatorio] ID del pool in cui viene eseguito il processo. L'ID può essere un pool esistente o uno che verrà creato quando il processo viene inviato.

delete_batch_job_after_finish
Necessario

Indica se eliminare il processo dall'account Batch al termine dell'operazione.

delete_batch_pool_after_finish
Necessario

Indica se eliminare il pool al termine del processo.

is_positive_exit_code_failure
Necessario

Indica se il processo ha esito negativo se l'attività esiste con un codice positivo.

vm_image_urn
Necessario
str

Se create_pool è True e la macchina virtuale usa VirtualMachineConfiguration. Formato valore: urn:publisher:offer:sku. Esempio: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter.

run_task_as_admin
Necessario

Indica se l'attività deve essere eseguita con privilegi di amministratore.

target_compute_nodes
Necessario
int

Se create_pool è True, indica il numero di nodi di calcolo che verranno aggiunti al pool.

vm_size
Necessario
str

Se create_pool è True, indica le dimensioni della macchina virtuale dei nodi di calcolo.

source_directory
Necessario
str

Cartella locale che contiene i file binari del modulo, eseguibili, assembly e così via.

executable
Necessario
str

[Obbligatorio] Nome del comando/eseguibile che verrà eseguito come parte del processo.

arguments
Necessario

Argomenti per il comando/eseguibile.

inputs
Necessario

Elenco di associazioni di porte di input. Prima dell'esecuzione del processo, viene creata una cartella per ogni input. I file per ogni input verranno copiati dalla risorsa di archiviazione alla rispettiva cartella nel nodo di calcolo. Ad esempio, se il nome di input è input1 e il percorso relativo nella risorsa di archiviazione è some/relative/path/that/can/really/long/inputfile.txt, il percorso del file nel calcolo sarà: ./input1/inputfile.txt. Nel caso in cui il nome di input sia composto da più di 32 caratteri, verrà troncato e aggiunto con un suffisso univoco, quindi il nome della cartella potrebbe essere creato correttamente nel calcolo.

outputs
Necessario

Elenco di associazioni di porte di output. Analogamente agli input, prima dell'esecuzione del processo, viene creata una cartella per ogni output. Il nome della cartella corrisponderà al nome dell'output. Il presupposto è che il processo avrà l'output in tale cartella.

allow_reuse
Necessario

Indica se il passaggio deve riutilizzare i risultati precedenti quando viene eseguito di nuovo con le stesse impostazioni. Il riutilizzo è abilitato per impostazione predefinita. Se il contenuto del passaggio (script/dipendenze) e gli input e i parametri rimangono invariati, l'output dell'esecuzione precedente di questo passaggio viene riutilizzato. Quando si riutilizza il passaggio, anziché inviare il processo al calcolo, i risultati dell'esecuzione precedente vengono immediatamente resi disponibili per tutti i passaggi successivi. Se si usano set di dati di Azure Machine Learning come input, il riutilizzo viene determinato dal fatto che la definizione del set di dati sia stata modificata, non dal fatto che i dati sottostanti siano stati modificati.

compute_target
Necessario

[Obbligatorio] Calcolo BatchCompute in cui viene eseguito il processo.

version
Necessario
str

Tag di versione facoltativo per indicare una modifica delle funzionalità per il modulo.

Commenti

L'esempio seguente illustra come usare AzureBatchStep in una pipeline di Azure Machine Learning.


   step = AzureBatchStep(
               name="Azure Batch Job",
               pool_id="MyPoolName", # Replace this with the pool name of your choice
               inputs=[testdata],
               outputs=[outputdata],
               executable="azurebatch.cmd",
               arguments=[testdata, outputdata],
               compute_target=batch_compute,
               source_directory=binaries_folder,
   )

L'esempio completo è disponibile da https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-azurebatch-to-run-a-windows-executable.ipynb

Metodi

create_node

Creare un nodo dal passaggio AzureBatch e aggiungerlo al grafico specificato.

Questo metodo non deve essere usato direttamente. Quando viene creata un'istanza di una pipeline con questo passaggio, Azure ML passa automaticamente i parametri necessari tramite questo metodo in modo che tale passaggio possa essere aggiunto a un grafo della pipeline che rappresenta il flusso di lavoro.

create_node

Creare un nodo dal passaggio AzureBatch e aggiungerlo al grafico specificato.

Questo metodo non deve essere usato direttamente. Quando viene creata un'istanza di una pipeline con questo passaggio, Azure ML passa automaticamente i parametri necessari tramite questo metodo in modo che tale passaggio possa essere aggiunto a un grafo della pipeline che rappresenta il flusso di lavoro.

create_node(graph, default_datastore, context)

Parametri

Nome Descrizione
graph
Necessario

Oggetto grafico a cui aggiungere il nodo.

default_datastore
Necessario

Archivio dati predefinito.

context
Necessario
<xref:azureml.pipeline.core._GraphContext>

Contesto del grafo.

Restituisce

Tipo Descrizione

Nodo creato.