Compartir a través de


AzureBatchStep Clase

Crea un paso de canalización de Azure ML para enviar trabajos a Azure Batch.

Nota: Este paso no admite la carga o descarga de directorios y su contenido.

Para obtener un ejemplo de uso de AzureBatchStep, consulte el cuaderno https://aka.ms/pl-azbatch.

Cree un paso de canalización de Azure ML para enviar trabajos a Azure Batch.

Constructor

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)

Parámetros

Nombre Description
name
Requerido
str

[Obligatorio] Nombre del paso.

create_pool

Indica si se va a crear el grupo antes de ejecutar los trabajos.

Valor predeterminado: False
pool_id
str

[Obligatorio] Identificador del grupo donde se ejecuta el trabajo. El identificador puede ser un grupo existente o uno que se creará cuando se envíe el trabajo.

Valor predeterminado: None
delete_batch_job_after_finish

Indica si se va a eliminar el trabajo de la cuenta de Batch una vez finalizado.

Valor predeterminado: True
delete_batch_pool_after_finish

Indica si se va a eliminar el grupo una vez finalizado el trabajo.

Valor predeterminado: False
is_positive_exit_code_failure

Indica si se produce un error en el trabajo si la tarea existe con un código positivo.

Valor predeterminado: True
vm_image_urn
str

Si create_pool es True y la máquina virtual usa VirtualMachineConfiguration. Formato de valor: urn:publisher:offer:sku. Ejemplo: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter.

Valor predeterminado: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter
run_task_as_admin

Indica si la tarea debe ejecutarse con privilegios de administrador.

Valor predeterminado: False
target_compute_nodes
int

Si create_pool es True, indica cuántos nodos de proceso se agregarán al grupo.

Valor predeterminado: 1
vm_size
str

Si create_pool es True, indica el tamaño de la máquina virtual de los nodos de proceso.

Valor predeterminado: standard_d1_v2
source_directory
str

Carpeta local que contiene los archivos binarios del módulo, el ejecutable, los ensamblados, etc.

Valor predeterminado: None
executable
str

[Obligatorio] Nombre del comando o ejecutable que se ejecutará como parte del trabajo.

Valor predeterminado: None
arguments
str

Argumentos para el comando o ejecutable.

Valor predeterminado: None
inputs

Lista de enlaces de puerto de entrada. Antes de que se ejecute el trabajo, se crea una carpeta para cada entrada. Los archivos de cada entrada se copiarán del almacenamiento a la carpeta correspondiente en el nodo de proceso. Por ejemplo, si el nombre de entrada es input1 y la ruta de acceso relativa en el almacenamiento es some/relative/path/that/can/really/long/inputfile.txt, la ruta de acceso del archivo en el proceso será: ./input1/inputfile.txt. Cuando el nombre de entrada tiene más de 32 caracteres, se truncará y anexará con un sufijo único para que el nombre de carpeta se pueda crear correctamente en el destino de proceso.

Valor predeterminado: None
outputs

Lista de enlaces de puerto de salida. De forma similar a las entradas, antes de que se ejecute el trabajo, se crea una carpeta para cada salida. El nombre de la carpeta será el mismo que el nombre de salida. La suposición es que el trabajo colocará la salida en esa carpeta.

Valor predeterminado: None
allow_reuse

Indica si el paso debe reutilizar los resultados anteriores al volver a ejecutarse con la misma configuración. La reutilización está habilitada de forma predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se pone inmediatamente a disposición de los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado.

Valor predeterminado: True
compute_target

[Obligatorio] Proceso batchCompute donde se ejecuta el trabajo.

Valor predeterminado: None
version
str

Etiqueta de versión opcional para indicar un cambio en la funcionalidad del módulo.

Valor predeterminado: None
name
Requerido
str

[Obligatorio] Nombre del paso.

create_pool
Requerido

Indica si se va a crear el grupo antes de ejecutar los trabajos.

pool_id
Requerido
str

[Obligatorio] Identificador del grupo donde se ejecuta el trabajo. El identificador puede ser un grupo existente o uno que se creará cuando se envíe el trabajo.

delete_batch_job_after_finish
Requerido

Indica si se va a eliminar el trabajo de la cuenta de Batch una vez finalizado.

delete_batch_pool_after_finish
Requerido

Indica si se va a eliminar el grupo una vez finalizado el trabajo.

is_positive_exit_code_failure
Requerido

Indica si se produce un error en el trabajo si la tarea existe con un código positivo.

vm_image_urn
Requerido
str

Si create_pool es True y la máquina virtual usa VirtualMachineConfiguration. Formato de valor: urn:publisher:offer:sku. Ejemplo: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter.

run_task_as_admin
Requerido

Indica si la tarea debe ejecutarse con privilegios de administrador.

target_compute_nodes
Requerido
int

Si create_pool es True, indica cuántos nodos de proceso se agregarán al grupo.

vm_size
Requerido
str

Si create_pool es True, indica el tamaño de la máquina virtual de los nodos de proceso.

source_directory
Requerido
str

Carpeta local que contiene los archivos binarios del módulo, el ejecutable, los ensamblados, etc.

executable
Requerido
str

[Obligatorio] Nombre del comando o ejecutable que se ejecutará como parte del trabajo.

arguments
Requerido

Argumentos para el comando o ejecutable.

inputs
Requerido

Lista de enlaces de puerto de entrada. Antes de que se ejecute el trabajo, se crea una carpeta para cada entrada. Los archivos de cada entrada se copiarán del almacenamiento a la carpeta correspondiente en el nodo de proceso. Por ejemplo, si el nombre de entrada es input1 y la ruta de acceso relativa en el almacenamiento es some/relative/path/that/can/really/long/inputfile.txt, la ruta de acceso del archivo en el proceso será: ./input1/inputfile.txt. En caso de que el nombre de entrada tenga más de 32 caracteres, se truncará y anexará con un sufijo único, por lo que el nombre de la carpeta se podría crear correctamente en el proceso.

outputs
Requerido

Lista de enlaces de puerto de salida. De forma similar a las entradas, antes de que se ejecute el trabajo, se crea una carpeta para cada salida. El nombre de la carpeta será el mismo que el nombre de salida. La suposición es que el trabajo tendrá la salida en esa carpeta.

allow_reuse
Requerido

Indica si el paso debe reutilizar los resultados anteriores al volver a ejecutarse con la misma configuración. La reutilización está habilitada de forma predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se pone inmediatamente a disposición de los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado.

compute_target
Requerido

[Obligatorio] Proceso batchCompute donde se ejecuta el trabajo.

version
Requerido
str

Etiqueta de versión opcional para indicar un cambio en la funcionalidad del módulo.

Comentarios

En el ejemplo siguiente se muestra cómo usar AzureBatchStep en una canalización de 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,
   )

El ejemplo completo está disponible en 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

Métodos

create_node

Cree un nodo desde el paso AzureBatch y agréguelo al grafo especificado.

Este método no está pensado para usarse directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que el paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo.

create_node

Cree un nodo desde el paso AzureBatch y agréguelo al grafo especificado.

Este método no está pensado para usarse directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que el paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo.

create_node(graph, default_datastore, context)

Parámetros

Nombre Description
graph
Requerido

Objeto de grafo al que se va a agregar el nodo.

default_datastore
Requerido

Almacén de datos predeterminado.

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

Contexto del grafo.

Devoluciones

Tipo Description

Nodo creado.