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._AzureBatchStepBaseAzureBatchStep
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
|
[Obligatorio] El nombre del paso. |
create_pool
|
Indica si se debe crear el grupo antes de ejecutar los trabajos. Valor predeterminado: False
|
pool_id
|
[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
|
Si 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
|
Si Valor predeterminado: 1
|
vm_size
|
Si Valor predeterminado: standard_d1_v2
|
source_directory
|
Carpeta local que contiene los binarios del módulo, los archivos ejecutables, los ensamblados, etc. Valor predeterminado: None
|
executable
|
[Obligatorio] Nombre del comando o archivo ejecutable que se ejecutará como parte del trabajo. Valor predeterminado: None
|
arguments
|
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
|
Una etiqueta de versión opcional para indicar un cambio en la funcionalidad del módulo. Valor predeterminado: None
|
name
Requerido
|
[Obligatorio] El nombre del paso. |
create_pool
Requerido
|
Indica si se debe crear el grupo antes de ejecutar los trabajos. |
pool_id
Requerido
|
[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
|
Si |
run_task_as_admin
Requerido
|
Indica si la tarea se debe ejecutar con privilegios de administrador. |
target_compute_nodes
Requerido
|
Si |
vm_size
Requerido
|
Si |
source_directory
Requerido
|
Carpeta local que contiene los archivos binarios del módulo, ejecutables, ensamblados, etc. |
executable
Requerido
|
[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
|
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. |