Compartir a través de


ModuleStep Clase

Crea un paso de canalización de Azure Machine Learning para ejecutar una versión específica de un módulo.

Module los objetos definen cálculos reutilizables, como scripts o ejecutables, que se pueden usar en diferentes escenarios de aprendizaje automático y por distintos usuarios. Para usar una versión específica de un módulo en una canalización, cree un moduleStep. ModuleStep es un paso de la canalización que usa un existente ModuleVersion.

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

Cree un paso de canalización de Azure ML para ejecutar una versión específica de un módulo.

Constructor

ModuleStep(module=None, version=None, module_version=None, inputs_map=None, outputs_map=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, arguments=None, params=None, name=None, _workflow_provider=None)

Parámetros

Nombre Description
module

Módulo usado en el paso. Proporcione el module parámetro o module_version , pero no ambos.

Valor predeterminado: None
version
str

Versión del módulo que se usa en el paso.

Valor predeterminado: None
module_version

ModuleVersion del módulo usado en el paso. Proporcione el module parámetro o module_version , pero no ambos.

Valor predeterminado: None
inputs_map

Diccionario que asigna los nombres de las definiciones de puerto de ModuleVersion a las entradas del paso.

Valor predeterminado: None
outputs_map

Diccionario que asigna los nombres de las definiciones de puerto de ModuleVersion a las salidas del paso.

Valor predeterminado: None
compute_target

Destino de proceso que se va a usar. Si no se especifica, se usará el destino de runconfig. Puede ser un objeto de destino de proceso o el nombre de cadena de un destino de proceso en el área de trabajo. Opcionalmente, si el destino de proceso no está disponible en el momento de la creación de la canalización, puede especificar una tupla de ("nombre de destino de proceso", "tipo de destino de proceso") para evitar capturar el objeto de destino de proceso (el tipo AmlCompute es "AmlCompute" y el tipo RemoteCompute es "VirtualMachine").

Valor predeterminado: None
runconfig

RunConfiguration opcional que se va a usar. Se puede usar runConfiguration para especificar requisitos adicionales para la ejecución, como las dependencias de Conda y una imagen de Docker.

Valor predeterminado: None
runconfig_pipeline_params

Invalidación de las propiedades runconfig en tiempo de ejecución mediante pares clave-valor cada uno con el nombre de la propiedad runconfig y PipelineParameter para esa propiedad.

Valores admitidos: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount'

Valor predeterminado: None
arguments

Lista de argumentos de línea de comandos para el archivo de script de Python. Los argumentos se entregarán al destino de proceso a través de argumentos en RunConfiguration. Para obtener más información sobre cómo controlar argumentos como símbolos especiales, consulte los argumentos de . RunConfiguration

Valor predeterminado: None
params

Diccionario de pares nombre-valor.

Valor predeterminado: None
name
str

Nombre del paso.

Valor predeterminado: None
_workflow_provider
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>

(Solo uso interno). Proveedor de flujo de trabajo.

Valor predeterminado: None
module
Requerido

Módulo usado en el paso. Proporcione el module parámetro o module_version , pero no ambos.

version
Requerido
str

Versión del módulo que se usa en el paso.

module_version
Requerido

ModuleVersion del módulo usado en el paso. Proporcione el module parámetro o module_version , pero no ambos.

inputs_map
Requerido
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, DatasetConsumptionConfig]]

Diccionario que asigna los nombres de las definiciones de puerto de ModuleVersion a las entradas del paso.

outputs_map
Requerido
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>]]

Diccionario que asigna los nombres de las definiciones de puerto de ModuleVersion a las salidas del paso.

compute_target
Requerido

Destino de proceso que se va a usar. Si no se especifica, se usará el destino de runconfig. Puede ser un objeto de destino de proceso o el nombre de cadena de un destino de proceso en el área de trabajo. Opcionalmente, si el destino de proceso no está disponible en el momento de la creación de la canalización, puede especificar una tupla de ("nombre de destino de proceso", "tipo de destino de proceso") para evitar capturar el objeto de destino de proceso (el tipo AmlCompute es "AmlCompute" y el tipo RemoteCompute es "VirtualMachine").

runconfig
Requerido

RunConfiguration opcional que se va a usar. Se puede usar runConfiguration para especificar requisitos adicionales para la ejecución, como las dependencias de Conda y una imagen de Docker.

runconfig_pipeline_params
Requerido

Invalidación de las propiedades runconfig en tiempo de ejecución mediante pares clave-valor cada uno con el nombre de la propiedad runconfig y PipelineParameter para esa propiedad.

Valores admitidos: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount'

arguments
Requerido

Lista de argumentos de línea de comandos para el archivo de script de Python. Los argumentos se entregarán al destino de proceso a través de argumentos en RunConfiguration. Para obtener más información sobre cómo controlar argumentos como símbolos especiales, consulte los argumentos de . RunConfiguration

params
Requerido

Diccionario de pares nombre-valor.

name
Requerido
str

Nombre del paso.

_wokflow_provider
Requerido

(Solo uso interno). Proveedor de flujo de trabajo.

Comentarios

Module Se usa para crear y administrar una unidad de cálculo que se puede volver a usar de una canalización de Azure Machine Learning. ModuleStep es el paso integrado de Azure Machine Learning que se usa para consumir un módulo. Puede definir específicamente qué ModuleVersion usar o permitir que Azure Machine Learning resuelva qué ModuleVersion usará después del proceso de resolución definido en la sección de comentarios de la Module clase . Para definir qué ModuleVersion se usa en una canalización enviada, defina uno de los siguientes elementos al crear un ModuleStep:

  • Objeto ModuleVersion .

  • Un Module objeto y un valor de versión.

  • Objeto Module sin un valor de versión. En este caso, la resolución de versiones puede variar entre envíos.

Debe definir la asignación entre las entradas y salidas de ModuleStep en las entradas y salidas de ModuleVersion.

En el ejemplo siguiente se muestra cómo crear un ModuleStep como parte de la canalización con varios objetos ModuleStep:


   middle_step = ModuleStep(module=module,
                            inputs_map= middle_step_input_wiring,
                            outputs_map= middle_step_output_wiring,
                            runconfig=RunConfiguration(), compute_target=aml_compute,
                            arguments = ["--file_num1", first_sum, "--file_num2", first_prod,
                                         "--output_sum", middle_sum, "--output_product", middle_prod])

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-modulestep.ipynb

Métodos

create_node

Cree un nodo a partir del paso ModuleStep y agréguelo al gráfico 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 a partir del paso ModuleStep y agréguelo al gráfico 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

Objeto de nodo.