Share via


AzureBatchStep Clase

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

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

Para obtener un ejemplo del 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.

Herencia
azureml.pipeline.core._azurebatch_step_base._AzureBatchStepBase
AzureBatchStep

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] El nombre del paso.

create_pool

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

valor predeterminado: False
pool_id
str

[Obligatorio] El id. del grupo en el que se ejecuta el trabajo. El id. 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 después de que finalice 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 del 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 se debe ejecutar 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 máquina virtual de los nodos de proceso.

valor predeterminado: standard_d1_v2
source_directory
str

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

valor predeterminado: None
executable
str

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

valor predeterminado: None
arguments
str

Argumentos para el comando o ejecutable.

valor predeterminado: None
inputs

Una 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 en la carpeta correspondiente del nodo de proceso. Por ejemplo, si el nombre de entrada es input1 y la ruta de acceso relativa en el almacenamiento es alguna/ruta/de/acceso/relativa/que/puede/ser/muy/larga/archivoentrada.txt, la ruta de acceso del archivo en el proceso será: ./entrada1/archivoentrada.txt. Cuando el nombre de entrada tenga más de 32 caracteres, se truncará y se anexará con un sufijo único para que el nombre de la carpeta se pueda crear correctamente en el destino de proceso.

valor predeterminado: None
outputs

Una 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 volver a usar los resultados anteriores cuando se ejecuta con la misma configuración o entrada. La reutilización está habilitada de manera 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 hacen disponibles inmediatamente para 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] Un proceso BatchCompute donde se ejecuta el trabajo.

valor predeterminado: None
version
str

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

valor predeterminado: None
name
Requerido
str

[Obligatorio] El nombre del paso.

create_pool
Requerido

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

pool_id
Requerido
str

[Obligatorio] El id. del grupo en el que se ejecuta el trabajo. El id. 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 después de que finalice 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 del valor: urn:publisher:offer:sku. Ejemplo: urn:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter.

run_task_as_admin
Requerido

Indica si la tarea se debe ejecutar 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, ejecutables, ensamblados, etc.

executable
Requerido
str

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

arguments
Requerido

Argumentos para el comando o ejecutable.

inputs
Requerido

Una 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 en la carpeta correspondiente del nodo de proceso. Por ejemplo, si el nombre de entrada es input1 y la ruta de acceso relativa en el almacenamiento es alguna/ruta/de/acceso/relativa/que/puede/ser/muy/larga/archivoentrada.txt, la ruta de acceso del archivo en el proceso será: ./entrada1/archivoentrada.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

Una 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 volver a usar los resultados anteriores cuando se ejecuta con la misma configuración o entrada. La reutilización está habilitada de manera 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 hacen disponibles inmediatamente para 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] Un proceso BatchCompute donde se ejecuta el trabajo.

version
Requerido
str

Una 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 a partir del paso AzureBatch y agréguelo al grafo especificado.

No se debe llamar a este método 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 ese paso se pueda agregar a un gráfico de canalización que represente el flujo de trabajo.

create_node

Cree un nodo a partir del paso AzureBatch y agréguelo al grafo especificado.

No se debe llamar a este método 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 ese paso se pueda agregar a un gráfico de canalización que represente el flujo de trabajo.

create_node(graph, default_datastore, context)

Parámetros

Nombre Description
graph
Requerido

El objeto de grafo al que se agrega el nodo.

default_datastore
Requerido

El almacén de datos predeterminado.

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

El contexto del grafo.

Devoluciones

Tipo Description

El nodo creado.