Partager via


RScriptStep Classe

Remarque

Il s’agit d’une classe expérimentale et peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Crée une étape de pipeline Azure ML qui exécute un script R.

Créez une étape de pipeline Azure ML qui exécute un script R.

OBSOLESCENT. Utilisez à la CommandStep place. Pour obtenir un exemple, consultez Comment exécuter des scripts R dans des pipelines avec CommandStep.

Constructeur

RScriptStep(script_name, name=None, arguments=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, inputs=None, outputs=None, params=None, source_directory=None, use_gpu=False, custom_docker_image=None, cran_packages=None, github_packages=None, custom_url_packages=None, allow_reuse=True, version=None)

Paramètres

Nom Description
script_name
Obligatoire
str

[Obligatoire] Nom d’un script R relatif à source_directory.

name
Obligatoire
str

Nom de l’étape. S’il n’est pas spécifié, script_name est utilisé.

arguments
Obligatoire

Arguments de ligne de commande pour le fichier de script R. Les arguments sont passés au calcul via le arguments paramètre dans RunConfiguration. Pour plus d’informations sur la façon de gérer des arguments tels que des symboles spéciaux, consultez le RunConfiguration.

compute_target
Obligatoire

[Obligatoire] Cible de calcul à utiliser. Si elle n’est pas spécifiée, la cible à partir de celle-ci runconfig est utilisée. Ce paramètre peut être spécifié en tant qu’objet cible de calcul ou le nom de chaîne d’une cible de calcul sur l’espace de travail. 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

[Obligatoire] Exécutez la configuration qui encapsule les informations nécessaires pour envoyer une exécution d’entraînement dans une expérience. Cela est nécessaire pour définir des configurations d’exécution R qui peuvent être définies dans RSection. La RSection est requise pour cette étape.

runconfig_pipeline_params
Obligatoire

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

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
str

Dossier qui contient le script R, conda env et d’autres ressources utilisées à l’étape.

use_gpu
Obligatoire

Indique si l’environnement à exécuter l’expérience doit prendre en charge les GPU. Si la valeur est True, une image Docker par défaut basée sur GPU est utilisée dans l’environnement. Si la valeur est False, une image basée sur le processeur est utilisée. Les images Docker par défaut (PROCESSEUR ou GPU) ne seront utilisées que si un utilisateur ne définit pas les deux base_image paramètres.base_dockerfile Ce paramètre est utilisé uniquement dans les cibles de calcul avec Docker. Pour https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection plus d’informations sur base_image.

custom_docker_image
Obligatoire
str

Nom de l’image Docker à partir de laquelle l’image à utiliser pour l’entraînement sera générée. Si elle n’est pas définie, une image basée sur le processeur par défaut est utilisée comme image de base. Cela a été déconseillé et sera supprimé dans une prochaine version. Utilisez plutôt base_image dans DockerSection.

cran_packages
Obligatoire

Packages CRAN à installer. Cela a été déconseillé et sera supprimé dans une prochaine version. Utilisez plutôt RSection.cran_packages.

github_packages
Obligatoire

Packages GitHub à installer. Cela a été déconseillé et sera supprimé dans une prochaine version. Utilisez plutôt RSection.github_packages.

custom_url_packages
Obligatoire

Packages à installer à partir d’une URL locale, d’un répertoire ou d’une URL personnalisée. Cela a été déconseillé et sera supprimé dans une prochaine version. Utilisez plutôt RSection.custom_url_packages.

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
str

Balise de version facultative pour indiquer une modification des fonctionnalités de l’étape.

script_name
Obligatoire
str

[Obligatoire] Nom d’un script R relatif à source_directory.

name
Obligatoire
str

Nom de l’étape. S’il n’est pas spécifié, script_name est utilisé.

arguments
Obligatoire

Arguments de ligne de commande pour le fichier de script R. Les arguments sont passés au calcul via le arguments paramètre dans RunConfiguration. Pour plus d’informations sur la façon de gérer des arguments tels que des symboles spéciaux, consultez le RunConfiguration.

compute_target
Obligatoire

[Obligatoire] Cible de calcul à utiliser. Si elle n’est pas spécifiée, la cible à partir de celle-ci runconfig est utilisée. Ce paramètre peut être spécifié en tant qu’objet cible de calcul ou le nom de chaîne d’une cible de calcul sur l’espace de travail. 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

[Obligatoire] Exécutez la configuration qui encapsule les informations nécessaires pour envoyer une exécution d’entraînement dans une expérience. Cela est nécessaire pour définir des configurations d’exécution R qui peuvent être définies dans RSection. La RSection est requise pour cette étape.

runconfig_pipeline_params
Obligatoire

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

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
str

Dossier qui contient le script R, conda env et d’autres ressources utilisées à l’étape.

use_gpu
Obligatoire

Indique si l’environnement à exécuter l’expérience doit prendre en charge les GPU. Si la valeur est True, une image Docker par défaut basée sur GPU est utilisée dans l’environnement. Si la valeur est False, une image basée sur le processeur est utilisée. Les images Docker par défaut (PROCESSEUR ou GPU) ne seront utilisées que si un utilisateur ne définit pas les deux base_image paramètres.base_dockerfile Ce paramètre est utilisé uniquement dans les cibles de calcul avec Docker. Pour https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection plus d’informations sur base_image.

custom_docker_image
Obligatoire
str

Nom de l’image Docker à partir de laquelle l’image à utiliser pour l’entraînement sera générée. Si elle n’est pas définie, une image basée sur le processeur par défaut est utilisée comme image de base. Cela a été déconseillé et sera supprimé dans une prochaine version. Utilisez plutôt base_image dans DockerSection.

cran_packages
Obligatoire

Packages CRAN à installer. Cela a été déconseillé et sera supprimé dans une prochaine version. Utilisez plutôt RSection.cran_packages.

github_packages
Obligatoire

Packages GitHub à installer. Cela a été déconseillé et sera supprimé dans une prochaine version. Utilisez plutôt RSection.github_packages.

custom_url_packages
Obligatoire

Packages à installer à partir d’une URL locale, d’un répertoire ou d’une URL personnalisée. Cela a été déconseillé et sera supprimé dans une prochaine version. Utilisez plutôt RSection.custom_url_packages.

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
str

Balise de version facultative pour indiquer une modification des fonctionnalités de l’étape.

Remarques

RScriptStep est une étape intégrée de base pour exécuter un script R sur une cible de calcul. Il prend un nom de script et d’autres paramètres facultatifs tels que des arguments pour le script, la cible de calcul, les entrées et les sorties. Vous devez utiliser un RunConfiguration pour spécifier les conditions requises pour RScriptStep, telles que l’image Docker personnalisée, les packages cran/github requis.

La meilleure pratique pour l’utilisation de RScriptStep consiste à utiliser un dossier distinct pour les scripts et tous les fichiers dépendants associés à l’étape et à 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é.

L’exemple de code suivant montre comment utiliser un RScriptStep dans un scénario d’entraînement Machine Learning.


   from azureml.core.runconfig import RunConfiguration
   from azureml.core.environment import Environment, RSection, RCranPackage
   from azureml.pipeline.steps import RScriptStep

   rc = RunConfiguration()
   rc.framework='R'
   rc.environment.r = RSection()                            # R details with required packages
   rc.environment.docker.enabled = True                     # to enable docker image
   rc.environment.docker.base_image = '<custom user image>' # to use custom image

   cran_package1 = RCranPackage()
   cran_package1.name = "ggplot2"
   cran_package1.repository = "www.customurl.com"
   cran_package1.version = "2.1"
   rc.environment.r.cran_packages = [cran_package1]

   trainStep = RScriptStep(script_name="train.R",
                           arguments=["--input", blob_input_data, "--output", output_data1],
                           inputs=[blob_input_data],
                           outputs=[output_data1],
                           compute_target=compute_target,
                           use_gpu=False,
                           runconfig=rc,
                           source_directory=project_folder)

Pour https://aka.ms/pl-first-pipeline plus d’informations sur la création de pipelines en général. Pour plus d’informations sur RSection, voir https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection

Méthodes

create_node

Créez un nœud pour RScriptStep et ajoutez-le au graphe spécifié.

OBSOLESCENT. Utilisez à la CommandStep place. Pour obtenir un exemple, consultez Comment exécuter des scripts R dans des pipelines avec CommandStep.

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 RScriptStep et ajoutez-le au graphe spécifié.

OBSOLESCENT. Utilisez à la CommandStep place. Pour obtenir un exemple, consultez Comment exécuter des scripts R dans des pipelines avec CommandStep.

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

Nœud créé.