Freigeben über


RScriptStep Klasse

Hinweis

Dies ist eine experimentelle Klasse, die jederzeit geändert werden kann. Unter https://aka.ms/azuremlexperimental finden Sie weitere Informationen.

Erstellt einen Azure ML-Pipelineschritt, in dem ein R-Skript ausgeführt wird.

Erstellen Sie einen Azure ML-Pipelineschritt, der ein R-Skript ausführt.

VERALTET. Verwenden Sie stattdessen CommandStep. Ein Beispiel finden Sie unter How to run R scripts in pipelines with CommandStep (Ausführen von R-Skripts in Pipelines mit CommandStep).

Vererbung
azureml.pipeline.core._python_script_step_base._PythonScriptStepBase
RScriptStep

Konstruktor

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)

Parameter

Name Beschreibung
script_name
Erforderlich
str

[Erforderlich] Der Name eines R-Skripts relativ zu source_directory.

name
Erforderlich
str

Der Name des Schritts. Wenn keine Angabe erfolgt, wird script_name verwendet.

arguments
Erforderlich

Befehlszeilenargumente für die R-Skriptdatei. Die Argumente werden über den arguments-Parameter in RunConfiguration an Compute übergeben. Weitere Informationen zum Umgang mit Argumenten wie Sondersymbolen finden Sie unter RunConfiguration.

compute_target
Erforderlich

[Erforderlich] Das zu verwendende Computeziel. Wenn keine Angabe erfolgt, wird das Ziel aus runconfig verwendet. Dieser Parameter kann als Computezielobjekt oder als Zeichenfolgenname eines Computeziels im Arbeitsbereich angegeben werden. Wenn das Computeziel zum Zeitpunkt der Pipelineerstellung nicht verfügbar ist, können Sie optional ein Tupel von („Computezielname“, „Computezieltyp“) angeben, um das Abrufen des Computezielobjekts zu vermeiden (AmlCompute-Typ ist „AmlCompute“ und RemoteCompute-Typ ist „VirtualMachine“).

runconfig
Erforderlich

[Erforderlich] Ausführungskonfiguration, die die Informationen kapselt, die zum Übermitteln eines Trainingslaufs in einem Experiment erforderlich sind. Dies ist erforderlich, um R-Ausführungskonfigurationen zu definieren, die in RSection definiert werden können. RSection ist für diesen Schritt erforderlich.

runconfig_pipeline_params
Erforderlich

Überschreibt runconfig-Eigenschaften zur Laufzeit unter Verwendung von Schlüssel-Wert-Paaren mit jeweils dem Namen der runconfig-Eigenschaft und dem Pipelineparameter für diese Eigenschaft.

Unterstützte Werte: „NodeCount“, „MpiProcessCountPerNode“, „TensorflowWorkerCount“, „TensorflowParameterServerCount“

inputs
Erforderlich

Eine Liste mit Eingabeportbindungen.

outputs
Erforderlich

Eine Liste mit Ausgabeportbindungen.

params
Erforderlich

Ein Wörterbuch mit Name-Wert-Paaren, die als Umgebungsvariablen mit „AML_PARAMETER_“ registriert sind.

source_directory
Erforderlich
str

Ein Ordner, der R-Skript, die Conda-Umgebung und andere Ressourcen enthält, die im Schritt verwendet werden.

use_gpu
Erforderlich

Gibt an, ob die Umgebung, in der das Experiment ausgeführt werden soll, GPUs unterstützen soll. TRUE gibt an, dass ein GPU-basiertes Docker-Standardimage in der Umgebung verwendet wird. Bei FALSE wird ein CPU-basiertes Image verwendet. Standardmäßige Docker-Images (CPU oder GPU) werden nur verwendet, wenn ein Benutzer nicht die Parameter base_image und base_dockerfile festgelegt hat. Diese Einstellung wird nur bei Docker-fähigen Computezielen verwendet. Ausführliche Informationen zu base_image finden Sie unter https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection.

custom_docker_image
Erforderlich
str

Der Name des Docker-Images, mit dem das für das Training zu verwendende Image erstellt wird. Wenn diese Einstellung nicht festgelegt ist, wird als Basisimage ein CPU-basiertes Standardimage verwendet. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen base_image in DockerSection.

cran_packages
Erforderlich

CRAN-Pakete, die installiert werden sollen. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.cran_packages.

github_packages
Erforderlich

Zu installierende GitHub-Pakete. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.github_packages.

custom_url_packages
Erforderlich

Pakete, die von einer lokalen, benutzerdefinierten oder Verzeichnis-URL installiert werden sollen. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.custom_url_packages.

allow_reuse
Erforderlich

Gibt an, ob bei dem Schritt vorherige Ergebnisse wiederverwendet werden sollen, wenn er mit den gleichen Einstellungen erneut ausgeführt wird. Die Wiederverwendung ist standardmäßig aktiviert. Wenn der Schrittinhalt (Skripts/Abhängigkeiten) sowie die Eingaben und Parameter unverändert bleiben, wird die Ausgabe der vorherigen Ausführung dieses Schritts wiederverwendet. Wenn Sie den Schritt wiederverwenden, anstatt den Auftrag zum Berechnen zu übermitteln, werden die Ergebnisse der vorherigen Ausführung sofort für alle nachfolgenden Schritte verfügbar gemacht. Wenn Sie Azure Machine Learning-Datasets als Eingaben verwenden, hängt die Wiederverwendung nicht davon ab, ob sich die zugrunde liegenden Daten geändert haben, sondern davon, ob sich die Definition des Datasets geändert hat.

version
Erforderlich
str

Ein optionales Versionstag, um eine Änderung der Funktionalität für den Schritt zu kennzeichnen.

script_name
Erforderlich
str

[Erforderlich] Der Name eines R-Skripts relativ zu source_directory.

name
Erforderlich
str

Der Name des Schritts. Wenn keine Angabe erfolgt, wird script_name verwendet.

arguments
Erforderlich

Befehlszeilenargumente für die R-Skriptdatei. Die Argumente werden über den arguments-Parameter in RunConfiguration an Compute übergeben. Weitere Informationen zum Umgang mit Argumenten wie Sondersymbolen finden Sie unter RunConfiguration.

compute_target
Erforderlich

[Erforderlich] Das zu verwendende Computeziel. Wenn nicht angegeben, wird das Ziel von runconfig verwendet. Dieser Parameter kann als Computezielobjekt oder als Zeichenfolgenname eines Computeziels im Arbeitsbereich angegeben werden. Wenn das Computeziel zum Zeitpunkt der Pipelineerstellung nicht verfügbar ist, können Sie optional ein Tupel von („Computezielname“, „Computezieltyp“) angeben, um das Abrufen des Computezielobjekts zu vermeiden (AmlCompute-Typ ist „AmlCompute“ und RemoteCompute-Typ ist „VirtualMachine“).

runconfig
Erforderlich

[Erforderlich] Ausführungskonfiguration, die die Informationen kapselt, die zum Übermitteln eines Trainingslaufs in einem Experiment erforderlich sind. Dies ist erforderlich, um R-Ausführungskonfigurationen zu definieren, die in RSection definiert werden können. RSection ist für diesen Schritt erforderlich.

runconfig_pipeline_params
Erforderlich

Überschreibt runconfig-Eigenschaften zur Laufzeit unter Verwendung von Schlüssel-Wert-Paaren mit jeweils dem Namen der runconfig-Eigenschaft und dem Pipelineparameter für diese Eigenschaft.

Unterstützte Werte: „NodeCount“, „MpiProcessCountPerNode“, „TensorflowWorkerCount“, „TensorflowParameterServerCount“

inputs
Erforderlich

Eine Liste mit Eingabeportbindungen.

outputs
Erforderlich

Eine Liste mit Ausgabeportbindungen.

params
Erforderlich

Ein Wörterbuch mit Name-Wert-Paaren, die als Umgebungsvariablen mit „AML_PARAMETER_“ registriert sind.

source_directory
Erforderlich
str

Ein Ordner, der R-Skript, die Conda-Umgebung und andere Ressourcen enthält, die im Schritt verwendet werden.

use_gpu
Erforderlich

Gibt an, ob die Umgebung, in der das Experiment ausgeführt werden soll, GPUs unterstützen soll. TRUE gibt an, dass ein GPU-basiertes Docker-Standardimage in der Umgebung verwendet wird. Bei FALSE wird ein CPU-basiertes Image verwendet. Standardmäßige Docker-Images (CPU oder GPU) werden nur verwendet, wenn ein Benutzer nicht die Parameter base_image und base_dockerfile festgelegt hat. Diese Einstellung wird nur bei Docker-fähigen Computezielen verwendet. Ausführliche Informationen zu base_image finden Sie unter https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection.

custom_docker_image
Erforderlich
str

Der Name des Docker-Images, mit dem das für das Training zu verwendende Image erstellt wird. Wenn diese Einstellung nicht festgelegt ist, wird als Basisimage ein CPU-basiertes Standardimage verwendet. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen base_image in DockerSection.

cran_packages
Erforderlich

CRAN-Pakete, die installiert werden sollen. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.cran_packages.

github_packages
Erforderlich

Zu installierende GitHub-Pakete. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.github_packages.

custom_url_packages
Erforderlich

Pakete, die von einer lokalen, benutzerdefinierten oder Verzeichnis-URL installiert werden sollen. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.custom_url_packages.

allow_reuse
Erforderlich

Gibt an, ob bei dem Schritt vorherige Ergebnisse wiederverwendet werden sollen, wenn er mit den gleichen Einstellungen erneut ausgeführt wird. Die Wiederverwendung ist standardmäßig aktiviert. Wenn der Schrittinhalt (Skripts/Abhängigkeiten) sowie die Eingaben und Parameter unverändert bleiben, wird die Ausgabe der vorherigen Ausführung dieses Schritts wiederverwendet. Wenn Sie den Schritt wiederverwenden, anstatt den Auftrag zum Berechnen zu übermitteln, werden die Ergebnisse der vorherigen Ausführung sofort für alle nachfolgenden Schritte verfügbar gemacht. Wenn Sie Azure Machine Learning-Datasets als Eingaben verwenden, hängt die Wiederverwendung nicht davon ab, ob sich die zugrunde liegenden Daten geändert haben, sondern davon, ob sich die Definition des Datasets geändert hat.

version
Erforderlich
str

Ein optionales Versionstag, um eine Änderung der Funktionalität für den Schritt zu kennzeichnen.

Hinweise

Ein RScriptStep ist ein grundlegender, integrierter Schritt zum Ausführen von R-Skripts auf einem Computeziel. Er nimmt einen Skriptnamen und andere optionale Parameter wie Argumente für das Skript, das Computeziel, Eingaben und Ausgaben entgegen. Sie sollten ein RunConfiguration verwenden, um Anforderungen für RScriptStep anzugeben, z. B. ein benutzerdefiniertes Docker-Image oder erforderliche cran/github-Pakete.

Die bewährte Methode für die Arbeit mit RScriptStep ist die Verwendung eines separaten Ordners für Skripts und alle abhängigen Dateien, die dem Schritt zugeordnet sind, und das Angeben dieses Ordners mit dem source_directory-Parameter. Das Befolgen dieser bewährten Methode bietet zwei Vorteile. Erstens kann die Größe der für den Schritt erstellten Momentaufnahme reduziert werden, da nur die für den Schritt benötigte Momentaufnahme erstellt wird. Zweitens kann die Ausgabe des Schritts aus einer vorherigen Ausführung wiederverwendet werden, wenn keine Änderungen am source_directory vorgenommen wurden, die einen erneuten Upload der Momentaufnahme auslösen würden.

Das folgende Codebeispiel zeigt die Verwendung eines RScriptStep in einem Machine Learning-Trainingsszenario.


   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)

Weitere allgemeine Informationen zum Erstellen von Pipelines finden Sie unter https://aka.ms/pl-first-pipeline. Weitere Informationen zu RSection finden Sie unter https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection.

Methoden

create_node

Einen Knoten für RScriptStep erstellen und dem angegebenen Diagramm hinzufügen.

VERALTET. Verwenden Sie stattdessen CommandStep. Ein Beispiel finden Sie unter How to run R scripts in pipelines with CommandStep (Ausführen von R-Skripts in Pipelines mit CommandStep).

Diese Methode ist nicht für die direkte Nutzung vorgesehen. Wenn eine Pipeline mit diesem Schritt instanziiert wird, werden von Azure ML automatisch die für diese Methode erforderlichen Parameter übergeben, damit der Schritt einem Pipelinegraphen hinzugefügt werden kann, der den Workflow darstellt.

create_node

Einen Knoten für RScriptStep erstellen und dem angegebenen Diagramm hinzufügen.

VERALTET. Verwenden Sie stattdessen CommandStep. Ein Beispiel finden Sie unter How to run R scripts in pipelines with CommandStep (Ausführen von R-Skripts in Pipelines mit CommandStep).

Diese Methode ist nicht für die direkte Nutzung vorgesehen. Wenn eine Pipeline mit diesem Schritt instanziiert wird, werden von Azure ML automatisch die für diese Methode erforderlichen Parameter übergeben, damit der Schritt einem Pipelinegraphen hinzugefügt werden kann, der den Workflow darstellt.

create_node(graph, default_datastore, context)

Parameter

Name Beschreibung
graph
Erforderlich

Das Graphobjekt, dem der Knoten hinzugefügt werden soll.

default_datastore
Erforderlich

Der Standarddatenspeicher.

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

Der Graphkontext.

Gibt zurück

Typ Beschreibung

Der erstellte Knoten.