CommandStep Classe
Créez une étape de pipeline Azure ML qui exécute une commande.
Créez une étape de pipeline Azure ML qui exécute une commande.
Constructeur
CommandStep(command=None, name=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, inputs=None, outputs=None, params=None, source_directory=None, allow_reuse=True, version=None)
Paramètres
| Nom | Description |
|---|---|
|
command
|
Commande à exécuter ou chemin d’accès de l’exécutable/script relatif à Valeur par défaut: None
|
|
name
|
Nom de l’étape. S’il n’est pas spécifié, le premier mot dans celui-ci Valeur par défaut: None
|
|
compute_target
|
Cible de calcul à utiliser. Si elle n’est pas spécifiée, la cible à partir de celle-ci Valeur par défaut: None
|
|
runconfig
|
Objet de configuration facultatif qui encapsule les informations nécessaires pour soumettre une exécution d’entraînement dans une expérience. Valeur par défaut: None
|
|
runconfig_pipeline_params
|
<xref:<xref:{str: PipelineParameter}>>
Remplace les 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
|
|
inputs
|
list[InputPortBinding ou
DataReference ou
PortDataReference ou
PipelineData ou
<xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> ou
DatasetConsumptionConfig]
Liste des liaisons de port d’entrée. Valeur par défaut: None
|
|
outputs
|
Liste des liaisons de port de sortie. Valeur par défaut: None
|
|
params
|
Dictionnaire de paires nom-valeur inscrites en tant que variables d’environnement avec « AML_PARAMETER_ ». Valeur par défaut: None
|
|
source_directory
|
Dossier qui contient des scripts, conda env et d’autres ressources utilisées à l’étape. Valeur par défaut: None
|
|
allow_reuse
|
Indique si l’étape doit réutiliser les résultats précédents lors de la réexécutation avec les mêmes paramètres. La réutilisation est activée par défaut. Si le contenu de l’étape (scripts/dépendances) ainsi que les entrées et les paramètres restent inchangés, la sortie de l’exécution précédente de cette étape est réutilisée. Lors de la réutilisation de l’étape, au lieu de soumettre le travail au calcul, les résultats de l’exécution précédente sont immédiatement mis à la disposition des étapes suivantes. Si vous utilisez des jeux de données Azure Machine Learning comme entrées, la réutilisation est déterminée par la modification de la définition du jeu de données, et non par la modification des données sous-jacentes. Valeur par défaut: True
|
|
version
|
Balise de version facultative pour indiquer une modification des fonctionnalités de l’étape. Valeur par défaut: None
|
|
command
Obligatoire
|
Commande à exécuter ou chemin d’accès de l’exécutable/script relatif à |
|
name
Obligatoire
|
Nom de l’étape. S’il n’est pas spécifié, le premier mot dans celui-ci |
|
compute_target
Obligatoire
|
Cible de calcul à utiliser. Si elle n’est pas spécifiée, la cible à partir de celle-ci |
|
runconfig
Obligatoire
|
Objet de configuration facultatif qui encapsule les informations nécessaires pour soumettre une exécution d’entraînement dans une expérience. |
|
runconfig_pipeline_params
Obligatoire
|
<xref:<xref:{str: PipelineParameter}>>
Remplace les 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 » |
|
inputs
Obligatoire
|
list[InputPortBinding ou
DataReference ou
PortDataReference ou
PipelineData ou
<xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset> ou
DatasetConsumptionConfig]
Liste des liaisons de port d’entrée. |
|
outputs
Obligatoire
|
Liste des liaisons de port de sortie. |
|
params
Obligatoire
|
Dictionnaire de paires nom-valeur inscrites en tant que variables d’environnement avec « AML_PARAMETER_ ». |
|
source_directory
Obligatoire
|
Dossier qui contient des scripts, conda env et d’autres ressources utilisées à l’étape. |
|
allow_reuse
Obligatoire
|
Indique si l’étape doit réutiliser les résultats précédents lors de la réexécutation avec les mêmes paramètres. La réutilisation est activée par défaut. Si le contenu de l’étape (scripts/dépendances) ainsi que les entrées et les paramètres restent inchangés, la sortie de l’exécution précédente de cette étape est réutilisée. Lors de la réutilisation de l’étape, au lieu de soumettre le travail au calcul, les résultats de l’exécution précédente sont immédiatement mis à la disposition des étapes suivantes. Si vous utilisez des jeux de données Azure Machine Learning comme entrées, la réutilisation est déterminée par la modification de la définition du jeu de données, et non par la modification des données sous-jacentes. |
|
version
Obligatoire
|
Balise de version facultative pour indiquer une modification des fonctionnalités de l’étape. |
Remarques
CommandStep est une étape intégrée de base pour exécuter une commande sur la cible de calcul donnée. Il prend une commande en tant que paramètre ou à partir d’autres paramètres comme runconfig. Il prend également d’autres paramètres facultatifs tels que la cible de calcul, les entrées et les sorties. Vous devez utiliser ou ScriptRunConfigRunConfiguration spécifier des exigences pour CommandStep, telles que l’image Docker personnalisée.
La meilleure pratique pour l’utilisation de CommandStep consiste à utiliser un dossier distinct pour l’exécutable ou le script afin d’exécuter les fichiers dépendants associés à l’étape et de spécifier ce dossier avec le source_directory paramètre. Le suivi de cette bonne pratique présente deux avantages. Tout d’abord, il permet de réduire la taille de l’instantané créé pour l’étape, car seul ce qui est nécessaire pour l’étape est instantané.
Deuxièmement, la sortie de l’étape à partir d’une exécution précédente peut être réutilisée s’il n’y a aucune modification apportée à source_directory celle qui déclencherait un nouveau chargement de l’instantané.
Pour les commandes connues du système n’est pas obligatoire, mais vous pouvez toujours le fournir avec tous les fichiers dépendants source_directory associés à l’étape.
L’exemple de code suivant montre comment utiliser un CommandStep dans un scénario d’entraînement Machine Learning. Pour répertorier les fichiers dans Linux :
from azureml.pipeline.steps import CommandStep
trainStep = CommandStep(name='list step',
command='ls -lrt',
compute_target=compute_target)
Pour exécuter un script Python :
from azureml.pipeline.steps import CommandStep
trainStep = CommandStep(name='train step',
command='python train.py arg1 arg2',
source_directory=project_folder,
compute_target=compute_target)
Pour exécuter un script Python via ScriptRunConfig :
from azureml.core import ScriptRunConfig
from azureml.pipeline.steps import CommandStep
train_src = ScriptRunConfig(source_directory=script_folder,
command='python train.py arg1 arg2',
environment=my_env)
trainStep = CommandStep(name='train step',
runconfig=train_src)
Pour https://aka.ms/pl-first-pipeline plus d’informations sur la création de pipelines en général.
Méthodes
| create_node |
Créez un nœud pour CommandStep et ajoutez-le au graphe 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 pour CommandStep et ajoutez-le au graphe 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:_GraphContext>
Contexte de graphe. |
Retours
| Type | Description |
|---|---|
|
Nœud créé. |