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.

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

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

Herencia
ModuleStep

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

module
Module
valor predeterminado: None

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

version
str
valor predeterminado: None

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

module_version
ModuleVersion
valor predeterminado: None

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

inputs_map
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputAbstractDataset, DatasetConsumptionConfig]]
valor predeterminado: None

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

outputs_map
dict[str, Union[OutputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputAbstractDataset]]
valor predeterminado: None

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

compute_target
Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
valor predeterminado: None

El destino de proceso que se 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
RunConfiguration
valor predeterminado: None

Una clase RunConfiguration opcional que se 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
dict[str, PipelineParameter]
valor predeterminado: None

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

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

arguments
list[str]
valor predeterminado: None

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, vea los argumentos en RunConfiguration

params
dict[str, str]
valor predeterminado: None

Un diccionario de pares de nombre-valor.

name
str
valor predeterminado: None

Nombre del paso.

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

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

module
Module
Requerido

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

version
str
Requerido

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

module_version
ModuleVersion
Requerido

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

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

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

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

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

compute_target
Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
Requerido

El destino de proceso que se 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
RunConfiguration
Requerido

Una clase RunConfiguration opcional que se 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
dict[str, PipelineParameter]
Requerido

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

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

arguments
list[str]
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, vea los argumentos en RunConfiguration

params
dict[str, str]
Requerido

Un diccionario de pares de nombre-valor.

name
str
Requerido

Nombre del paso.

_wokflow_provider
Requerido

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

Comentarios

Se usa Module 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 en Azure Machine Learning se usa para consumir un módulo. Puede definir específicamente qué ModuleVersion usar o dejar que Azure Machine Learning resuelva qué ModuleVersion usar siguiendo el proceso de resolución definido en la sección de comentarios de la clase Module. Para definir qué ModuleVersion se usa en una canalización enviada, defina una de las siguientes opciones al crear un paso ModuleStep:

  • Un objeto ModuleVersion.

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

  • Un 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 a 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.

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 ModuleStep y agréguelo al gráfico 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

graph
Graph
Requerido

El objeto de grafo al que se agrega el nodo.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Requerido

El almacén de datos predeterminado.

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

El contexto del grafo.

Devoluciones

El objeto de nodo.

Tipo de valor devuelto