ModuleStep Classe
Crée une étape de pipeline Azure Machine Learning pour exécuter une version spécifique d’un module.
Module les objets définissent des calculs réutilisables, tels que des scripts ou des exécutables, qui peuvent être utilisés dans différents scénarios de Machine Learning et par différents utilisateurs. Pour utiliser une version spécifique d’un module dans un pipeline, créez un ModuleStep. Un ModuleStep est une étape du pipeline qui utilise un module existant ModuleVersion.
Pour obtenir un exemple d’utilisation de ModuleStep, consultez le notebook https://aka.ms/pl-modulestep.
Créez une étape de pipeline Azure ML pour exécuter une version spécifique d’un module.
Constructeur
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)
Paramètres
| Nom | Description |
|---|---|
|
module
|
Module utilisé à l’étape.
Indiquez le paramètre ou le Valeur par défaut: None
|
|
version
|
Version du module utilisé à l’étape. Valeur par défaut: None
|
|
module_version
|
ModuleVersion du module utilisé à l’étape.
Indiquez le paramètre ou le Valeur par défaut: None
|
|
inputs_map
|
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputAbstractDataset, DatasetConsumptionConfig]]
Dictionnaire qui mappe les noms des définitions de port de ModuleVersion aux entrées de l’étape. Valeur par défaut: None
|
|
outputs_map
|
dict[str, Union[OutputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputAbstractDataset]]
Dictionnaire qui mappe les noms des définitions de port de ModuleVersion aux sorties de l’étape. Valeur par défaut: None
|
|
compute_target
|
Cible de calcul à utiliser. Si elle n’est pas spécifiée, la cible du runconfig sera utilisée. Peut être un objet cible de calcul ou le nom de chaîne d’une cible de calcul sur l’espace de travail. Si vous le souhaitez, si la cible de calcul n’est pas disponible au moment de la création du pipeline, vous pouvez spécifier un tuple de (nom cible de calcul, « type cible de calcul ») pour éviter d’extraire l’objet cible de calcul (le type AmlCompute est « AmlCompute » et le type RemoteCompute est « VirtualMachine »). Valeur par défaut: None
|
|
runconfig
|
RunConfiguration facultatif à utiliser. Une RunConfiguration peut être utilisée pour spécifier des exigences supplémentaires pour l’exécution, telles que les dépendances conda et une image Docker. Valeur par défaut: None
|
|
runconfig_pipeline_params
|
Remplacement des propriétés runconfig au moment de l’exécution à l’aide de paires clé-valeur chacune avec le nom de la propriété runconfig et PipelineParameter pour cette propriété. Valeurs prises en charge : « NodeCount », « MpiProcessCountPerNode », « TensorflowWorkerCount », « TensorflowParameterServerCount » Valeur par défaut: None
|
|
arguments
|
Liste des arguments de ligne de commande pour le fichier de script Python. Les arguments sont remis à la cible de calcul via des arguments dans RunConfiguration. Pour plus d’informations sur la gestion des arguments tels que des symboles spéciaux, consultez les arguments dans RunConfiguration Valeur par défaut: None
|
|
params
|
Dictionnaire de paires nom-valeur. Valeur par défaut: None
|
|
name
|
Nom de l’étape. Valeur par défaut: None
|
|
_workflow_provider
|
<xref:azureml.pipeline.core._aeva_provider._AevaWorkflowProvider>
(Utilisation interne uniquement.) Fournisseur de flux de travail. Valeur par défaut: None
|
|
module
Obligatoire
|
Module utilisé à l’étape.
Indiquez le paramètre ou le |
|
version
Obligatoire
|
Version du module utilisé à l’étape. |
|
module_version
Obligatoire
|
ModuleVersion du module utilisé à l’étape.
Indiquez le paramètre ou le |
|
inputs_map
Obligatoire
|
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, DatasetConsumptionConfig]]
Dictionnaire qui mappe les noms des définitions de port de ModuleVersion aux entrées de l’étape. |
|
outputs_map
Obligatoire
|
dict[str, Union[InputPortBinding, DataReference, PortDataReference, PipelineData, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>]]
Dictionnaire qui mappe les noms des définitions de port de ModuleVersion aux sorties de l’étape. |
|
compute_target
Obligatoire
|
Cible de calcul à utiliser. Si elle n’est pas spécifiée, la cible du runconfig sera utilisée. Peut être un objet cible de calcul ou le nom de chaîne d’une cible de calcul sur l’espace de travail. Si vous le souhaitez, si la cible de calcul n’est pas disponible au moment de la création du pipeline, vous pouvez spécifier un tuple de (nom cible de calcul, « type cible de calcul ») pour éviter d’extraire l’objet cible de calcul (le type AmlCompute est « AmlCompute » et le type RemoteCompute est « VirtualMachine »). |
|
runconfig
Obligatoire
|
RunConfiguration facultatif à utiliser. Une RunConfiguration peut être utilisée pour spécifier des exigences supplémentaires pour l’exécution, telles que les dépendances conda et une image Docker. |
|
runconfig_pipeline_params
Obligatoire
|
Remplacement des propriétés runconfig au moment de l’exécution à l’aide de paires clé-valeur chacune avec le nom de la propriété runconfig et PipelineParameter pour cette propriété. Valeurs prises en charge : « NodeCount », « MpiProcessCountPerNode », « TensorflowWorkerCount », « TensorflowParameterServerCount » |
|
arguments
Obligatoire
|
Liste des arguments de ligne de commande pour le fichier de script Python. Les arguments sont remis à la cible de calcul via des arguments dans RunConfiguration. Pour plus d’informations sur la gestion des arguments tels que des symboles spéciaux, consultez les arguments dans RunConfiguration |
|
params
Obligatoire
|
Dictionnaire de paires nom-valeur. |
|
name
Obligatoire
|
Nom de l’étape. |
|
_wokflow_provider
Obligatoire
|
(Utilisation interne uniquement.) Fournisseur de flux de travail. |
Remarques
A Module est utilisé pour créer et gérer une unité de calcul réutilisable d’un pipeline Azure Machine Learning. ModuleStep est l’étape intégrée d’Azure Machine Learning utilisée pour consommer un module. Vous pouvez définir spécifiquement moduleVersion à utiliser ou laisser Azure Machine Learning résoudre le ModuleVersion à utiliser en suivant le processus de résolution défini dans la section remarques de la Module classe. Pour définir le ModuleVersion utilisé dans un pipeline soumis, définissez l’un des éléments suivants lors de la création d’un ModuleStep :
Objet ModuleVersion.
Objet Module et valeur de version.
Objet Module sans valeur de version. Dans ce cas, la résolution de version peut varier entre les soumissions.
Vous devez définir le mappage entre les entrées et sorties de ModuleStep aux entrées et sorties de ModuleVersion.
L’exemple suivant montre comment créer un ModuleStep dans le cadre d’un pipeline avec plusieurs objets 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])
L’exemple complet est disponible à partir de 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éthodes
| create_node |
Créez un nœud à partir de l’étape ModuleStep et ajoutez-le au graphique spécifié. Cette méthode n’est pas destinée à être utilisée directement. Lorsqu’un pipeline est instancié avec cette étape, Azure ML transmet automatiquement les paramètres requis par cette méthode afin que cette étape puisse être ajoutée à un graphique de pipeline qui représente le flux de travail. |
create_node
Créez un nœud à partir de l’étape ModuleStep et ajoutez-le au graphique spécifié.
Cette méthode n’est pas destinée à être utilisée directement. Lorsqu’un pipeline est instancié avec cette étape, Azure ML transmet automatiquement les paramètres requis par cette méthode afin que cette étape puisse être ajoutée à un graphique de pipeline qui représente le flux de travail.
create_node(graph, default_datastore, context)
Paramètres
| Nom | Description |
|---|---|
|
graph
Obligatoire
|
Objet graphique auquel ajouter le nœud. |
|
default_datastore
Obligatoire
|
Magasin de données par défaut. |
|
context
Obligatoire
|
<xref:azureml.pipeline.core._GraphContext>
Contexte de graphe. |
Retours
| Type | Description |
|---|---|
|
Objet node. |