Compartir a través de


RScriptStep Clase

Nota:

Se trata de una clase experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para obtener más información.

Crea un paso de canalización de Azure ML que ejecuta el script de R.

Cree un paso de canalización de Azure ML que ejecute el script de R.

OBSOLESCENTE. Use en CommandStep su lugar. Para obtener un ejemplo, consulte Ejecución de scripts de R en canalizaciones con CommandStep.

Constructor

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)

Parámetros

Nombre Description
script_name
Requerido
str

[Obligatorio] Nombre de un script de R relativo a source_directory.

name
Requerido
str

Nombre del paso. Si no se especifica, script_name se usa .

arguments
Requerido

Argumentos de línea de comandos para el archivo de script de R. Los argumentos se pasarán al proceso a través del arguments parámetro en RunConfiguration. Para obtener más información sobre cómo controlar argumentos como símbolos especiales, vea .RunConfiguration

compute_target
Requerido

[Obligatorio] Destino de proceso que se va a usar. Si no se especifica, se usa el destino de .runconfig Este parámetro se puede especificar como 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
Requerido

[Obligatorio] Ejecute la configuración que encapsula la información necesaria para enviar una ejecución de entrenamiento en un experimento. Esto es necesario para definir configuraciones de ejecución de R que se pueden definir en RSection. El RSection es necesario para este paso.

runconfig_pipeline_params
Requerido

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

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

inputs
Requerido

Lista de enlaces de puerto de entrada.

outputs
Requerido

Lista de enlaces de puerto de salida.

params
Requerido

Diccionario de pares nombre-valor registrados como variables de entorno con "AML_PARAMETER_".

source_directory
Requerido
str

Carpeta que contiene el script de R, conda env y otros recursos usados en el paso.

use_gpu
Requerido

Indica si el entorno para ejecutar el experimento debe admitir GPU. Si es True, se usará una imagen de Docker predeterminada basada en GPU en el entorno. Si es False, se usará una imagen basada en CPU. Las imágenes de Docker predeterminadas (CPU o GPU) solo se usarán si un usuario no establece los base_image parámetros y base_dockerfile . Esta configuración solo se usa en destinos de proceso habilitados para Docker. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection para obtener más información sobre base_image.

custom_docker_image
Requerido
str

Nombre de la imagen de Docker a partir de la que se compilará la imagen que se va a usar para el entrenamiento. Si no se establece, se usará una imagen predeterminada basada en CPU como imagen base. Esto ha quedado en desuso y se quitará en una versión futura. Use base_image en DockerSection en su lugar.

cran_packages
Requerido

Paquetes CRAN que se van a instalar. Esto ha quedado en desuso y se quitará en una versión futura. Use RSection.cran_packages en su lugar.

github_packages
Requerido

Paquetes de GitHub que se van a instalar. Esto ha quedado en desuso y se quitará en una versión futura. Use RSection.github_packages en su lugar.

custom_url_packages
Requerido

Paquetes que se van a instalar desde una dirección URL local, de directorio o personalizada. Esto ha quedado en desuso y se quitará en una versión futura. Use RSection.custom_url_packages en su lugar.

allow_reuse
Requerido

Indica si el paso debe reutilizar los resultados anteriores al volver a ejecutarse con la misma configuración. La reutilización está habilitada de forma predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se pone inmediatamente a disposición de los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado.

version
Requerido
str

Etiqueta de versión opcional para indicar un cambio en la funcionalidad del paso.

script_name
Requerido
str

[Obligatorio] Nombre de un script de R relativo a source_directory.

name
Requerido
str

Nombre del paso. Si no se especifica, script_name se usa .

arguments
Requerido

Argumentos de línea de comandos para el archivo de script de R. Los argumentos se pasarán al proceso a través del arguments parámetro en RunConfiguration. Para obtener más información sobre cómo controlar argumentos como símbolos especiales, vea .RunConfiguration

compute_target
Requerido

[Obligatorio] Destino de proceso que se va a usar. Si no se especifica, se usará el destino de .runconfig Este parámetro se puede especificar como 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
Requerido

[Obligatorio] Ejecute la configuración que encapsula la información necesaria para enviar una ejecución de entrenamiento en un experimento. Esto es necesario para definir configuraciones de ejecución de R que se pueden definir en RSection. El RSection es necesario para este paso.

runconfig_pipeline_params
Requerido

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

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

inputs
Requerido

Lista de enlaces de puerto de entrada.

outputs
Requerido

Lista de enlaces de puerto de salida.

params
Requerido

Diccionario de pares nombre-valor registrados como variables de entorno con "AML_PARAMETER_".

source_directory
Requerido
str

Carpeta que contiene el script de R, conda env y otros recursos usados en el paso.

use_gpu
Requerido

Indica si el entorno para ejecutar el experimento debe admitir GPU. Si es True, se usará una imagen de Docker predeterminada basada en GPU en el entorno. Si es False, se usará una imagen basada en CPU. Las imágenes de Docker predeterminadas (CPU o GPU) solo se usarán si un usuario no establece los base_image parámetros y base_dockerfile . Esta configuración solo se usa en destinos de proceso habilitados para Docker. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection para obtener más información sobre base_image.

custom_docker_image
Requerido
str

Nombre de la imagen de Docker a partir de la que se compilará la imagen que se va a usar para el entrenamiento. Si no se establece, se usará una imagen predeterminada basada en CPU como imagen base. Esto ha quedado en desuso y se quitará en una versión futura. Use base_image en DockerSection en su lugar.

cran_packages
Requerido

Paquetes CRAN que se van a instalar. Esto ha quedado en desuso y se quitará en una versión futura. Use RSection.cran_packages en su lugar.

github_packages
Requerido

Paquetes de GitHub que se van a instalar. Esto ha quedado en desuso y se quitará en una versión futura. Use RSection.github_packages en su lugar.

custom_url_packages
Requerido

Paquetes que se van a instalar desde una dirección URL local, de directorio o personalizada. Esto ha quedado en desuso y se quitará en una versión futura. Use RSection.custom_url_packages en su lugar.

allow_reuse
Requerido

Indica si el paso debe reutilizar los resultados anteriores al volver a ejecutarse con la misma configuración. La reutilización está habilitada de forma predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se pone inmediatamente a disposición de los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado.

version
Requerido
str

Etiqueta de versión opcional para indicar un cambio en la funcionalidad del paso.

Comentarios

RScriptStep es un paso básico integrado para ejecutar el script de R en un destino de proceso. Toma un nombre de script y otros parámetros opcionales, como argumentos para el script, el destino de proceso, las entradas y las salidas. Debe usar para RunConfiguration especificar los requisitos de RScriptStep, como la imagen personalizada de Docker, los paquetes cran/github necesarios.

El procedimiento recomendado para trabajar con RScriptStep es usar una carpeta independiente para scripts y los archivos dependientes asociados al paso y especificar esa carpeta con el source_directory parámetro . Seguir este procedimiento recomendado tiene dos ventajas. En primer lugar, ayuda a reducir el tamaño de la instantánea creada para el paso porque solo se instantánea lo que se necesita para el paso. En segundo lugar, la salida del paso de una ejecución anterior se puede reutilizar si no hay ningún cambio en que source_directory desencadenaría una nueva carga de la instantánea.

En el ejemplo de código siguiente se muestra cómo usar un RScriptStep en un escenario de entrenamiento de aprendizaje automático.


   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)

Consulte https://aka.ms/pl-first-pipeline para más información sobre cómo crear canalizaciones en general. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection para obtener más información sobre RSection.

Métodos

create_node

Cree un nodo para RScriptStep y agréguelo al grafo especificado.

OBSOLESCENTE. Use en CommandStep su lugar. Para obtener un ejemplo, consulte Ejecución de scripts de R en canalizaciones con CommandStep.

Este método no está pensado para usarse 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 el paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo.

create_node

Cree un nodo para RScriptStep y agréguelo al grafo especificado.

OBSOLESCENTE. Use en CommandStep su lugar. Para obtener un ejemplo, consulte Ejecución de scripts de R en canalizaciones con CommandStep.

Este método no está pensado para usarse 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 el paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo.

create_node(graph, default_datastore, context)

Parámetros

Nombre Description
graph
Requerido

Objeto de grafo al que se va a agregar el nodo.

default_datastore
Requerido

Almacén de datos predeterminado.

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

Contexto del grafo.

Devoluciones

Tipo Description

Nodo creado.