RScriptStep Classe

Nota

Esta é uma classe experimental e pode mudar em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.

Cria um passo do Pipeline do Azure ML que executa o script R.

Crie um passo do Pipeline do Azure ML que execute o script R.

PRETERIDO. Em vez disso, utilize o CommandStep . Para obter um exemplo, veja Como executar scripts R em pipelines com CommandStep.

Herança
azureml.pipeline.core._python_script_step_base._PythonScriptStepBase
RScriptStep

Construtor

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

script_name
str
Necessário

[Obrigatório] O nome de um script R relativo a source_directory.

name
str
Necessário

O nome do passo. Se não for especificado, script_name é utilizado.

arguments
list
Necessário

Argumentos da linha de comandos para o ficheiro de script R. Os argumentos serão transmitidos à computação através do arguments parâmetro em RunConfiguration. Para obter mais detalhes sobre como lidar com argumentos como símbolos especiais, consulte .RunConfiguration

compute_target
Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
Necessário

[Obrigatório] O destino de computação a utilizar. Se não for especificado, o destino do runconfig é utilizado. Este parâmetro pode ser especificado como um objeto de destino de computação ou o nome da cadeia de carateres de um destino de computação na área de trabalho. Opcionalmente, se o destino de computação não estiver disponível no momento da criação do pipeline, poderá especificar uma cadeia de identificação de ("nome de destino de computação", "tipo de destino de computação") para evitar obter o objeto de destino de computação (o tipo AmlCompute é "AmlCompute" e o tipo RemoteCompute é "VirtualMachine").

runconfig
RunConfiguration
Necessário

[Obrigatório] Execute a configuração que encapsula as informações necessárias para submeter uma execução de preparação numa experimentação. Isto é necessário para definir configurações de execução R que podem ser definidas em RSection. A RSection é necessária para este passo.

runconfig_pipeline_params
dict[str, PipelineParameter]
Necessário

Substituições de propriedades de runconfig no runtime através de pares chave-valor cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade.

Valores suportados: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"

outputs
list[Union[PipelineData, OutputDatasetConfig, PipelineOutputAbstractDataset, OutputPortBinding]]
Necessário

Uma lista de enlaces de portas de saída.

params
dict
Necessário

Um dicionário de pares nome-valor registados como variáveis de ambiente com "AML_PARAMETER_".

source_directory
str
Necessário

Uma pasta que contém script R, conda env e outros recursos utilizados no passo.

use_gpu
bool
Necessário

Indica se o ambiente para executar a experimentação deve suportar GPUs. Se For Verdadeiro, será utilizada uma imagem predefinida do Docker baseada em GPU no ambiente. Se For Falso, será utilizada uma imagem baseada na CPU. As imagens do Docker predefinidas (CPU ou GPU) só serão utilizadas se um utilizador não definir parâmetros base_image e base_dockerfile . Esta definição é utilizada apenas em destinos de computação compatíveis com o Docker. Veja https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection para obter mais detalhes sobre base_image.

custom_docker_image
str
Necessário

O nome da imagem do Docker a partir da qual será criada a imagem a utilizar para preparação. Se não for definida, será utilizada uma imagem baseada na CPU predefinida como imagem de base. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize base_image no DockerSection.

cran_packages
list
Necessário

Pacotes CRAN a instalar. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.cran_packages.

github_packages
list
Necessário

Pacotes do GitHub a instalar. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.github_packages.

custom_url_packages
list
Necessário

Pacotes a instalar a partir de URLs locais, de diretórios ou personalizados. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.custom_url_packages.

allow_reuse
bool
Necessário

Indica se o passo deve reutilizar os resultados anteriores ao executar novamente com as mesmas definições. A reutilização está ativada por predefinição. Se o conteúdo do passo (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados, o resultado da execução anterior deste passo será reutilizado. Ao reutilizar o passo, em vez de submeter a tarefa para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer passos subsequentes. Se utilizar conjuntos de dados do Azure Machine Learning como entradas, a reutilização é determinada se a definição do conjunto de dados foi alterada e não se os dados subjacentes foram alterados.

version
str
Necessário

Uma etiqueta de versão opcional para denotar uma alteração na funcionalidade do passo.

script_name
str
Necessário

[Obrigatório] O nome de um script R relativo a source_directory.

name
str
Necessário

O nome do passo. Se não for especificado, script_name é utilizado.

arguments
list
Necessário

Argumentos da linha de comandos para o ficheiro de script R. Os argumentos serão transmitidos à computação através do arguments parâmetro em RunConfiguration. Para obter mais detalhes sobre como lidar com argumentos como símbolos especiais, consulte .RunConfiguration

compute_target
Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
Necessário

[Obrigatório] O destino de computação a utilizar. Se não for especificado, o destino do runconfig será utilizado. Este parâmetro pode ser especificado como um objeto de destino de computação ou o nome da cadeia de carateres de um destino de computação na área de trabalho. Opcionalmente, se o destino de computação não estiver disponível no momento da criação do pipeline, poderá especificar uma cadeia de identificação de ("nome de destino de computação", "tipo de destino de computação") para evitar obter o objeto de destino de computação (o tipo AmlCompute é "AmlCompute" e o tipo RemoteCompute é "VirtualMachine").

runconfig
RunConfiguration
Necessário

[Obrigatório] Execute a configuração que encapsula as informações necessárias para submeter uma execução de preparação numa experimentação. Isto é necessário para definir configurações de execução R que podem ser definidas em RSection. A RSection é necessária para este passo.

runconfig_pipeline_params
dict[str, PipelineParameter]
Necessário

Substituições de propriedades de runconfig no runtime através de pares chave-valor cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade.

Valores suportados: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"

outputs
list[Union[PipelineData, PipelineOutputAbstractDataset, OutputPortBinding]]
Necessário

Uma lista de enlaces de portas de saída.

params
dict
Necessário

Um dicionário de pares nome-valor registados como variáveis de ambiente com "AML_PARAMETER_".

source_directory
str
Necessário

Uma pasta que contém script R, conda env e outros recursos utilizados no passo.

use_gpu
bool
Necessário

Indica se o ambiente para executar a experimentação deve suportar GPUs. Se For Verdadeiro, será utilizada uma imagem predefinida do Docker baseada em GPU no ambiente. Se For Falso, será utilizada uma imagem baseada na CPU. As imagens do Docker predefinidas (CPU ou GPU) só serão utilizadas se um utilizador não definir parâmetros base_image e base_dockerfile . Esta definição é utilizada apenas em destinos de computação compatíveis com o Docker. Veja https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection para obter mais detalhes sobre base_image.

custom_docker_image
str
Necessário

O nome da imagem do Docker a partir da qual será criada a imagem a utilizar para preparação. Se não for definida, será utilizada uma imagem baseada na CPU predefinida como imagem de base. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize base_image no DockerSection.

cran_packages
list
Necessário

Pacotes CRAN a instalar. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.cran_packages.

github_packages
list
Necessário

Pacotes do GitHub a instalar. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.github_packages.

custom_url_packages
list
Necessário

Pacotes a instalar a partir de URLs locais, de diretórios ou personalizados. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.custom_url_packages.

allow_reuse
bool
Necessário

Indica se o passo deve reutilizar os resultados anteriores ao executar novamente com as mesmas definições. A reutilização está ativada por predefinição. Se o conteúdo do passo (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados, o resultado da execução anterior deste passo será reutilizado. Ao reutilizar o passo, em vez de submeter a tarefa para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer passos subsequentes. Se utilizar conjuntos de dados do Azure Machine Learning como entradas, a reutilização é determinada se a definição do conjunto de dados foi alterada e não se os dados subjacentes foram alterados.

version
str
Necessário

Uma etiqueta de versão opcional para denotar uma alteração na funcionalidade do passo.

Observações

Um RScriptStep é um passo básico incorporado para executar script R num destino de computação. Utiliza o nome do script e outros parâmetros opcionais, como argumentos, o destino de computação, as entradas e as saídas. Deve utilizar um RunConfiguration para especificar os requisitos do RScriptStep, como imagem personalizada do docker, pacotes cran/github necessários.

A melhor prática para trabalhar com RScriptStep é utilizar uma pasta separada para scripts e quaisquer ficheiros dependentes associados ao passo e especificar essa pasta com o source_directory parâmetro . Seguir esta melhor prática tem duas vantagens. Em primeiro lugar, ajuda a reduzir o tamanho do instantâneo criado para o passo, porque apenas o que é necessário para o passo é instantâneo. Em segundo lugar, o resultado do passo de uma execução anterior pode ser reutilizado se não existirem alterações no source_directory que acionem um novo carregamento do instantâneo.

O exemplo de código seguinte mostra como utilizar um RScriptStep num cenário de preparação de 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)

Veja https://aka.ms/pl-first-pipeline para obter mais detalhes sobre como criar pipelines em geral. Veja https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection para obter mais detalhes sobre RSection.

Métodos

create_node

Crie um nó para RScriptStep e adicione-o ao gráfico especificado.

PRETERIDO. Em vez disso, utilize o CommandStep . Para obter um exemplo, veja Como executar scripts R em pipelines com CommandStep.

Este método não se destina a ser utilizado diretamente. Quando um pipeline é instanciado com este passo, o Azure ML transmite automaticamente os parâmetros necessários através deste método para que esse passo possa ser adicionado a um gráfico de pipeline que representa o fluxo de trabalho.

create_node

Crie um nó para RScriptStep e adicione-o ao gráfico especificado.

PRETERIDO. Em vez disso, utilize o CommandStep . Para obter um exemplo, veja Como executar scripts R em pipelines com CommandStep.

Este método não se destina a ser utilizado diretamente. Quando um pipeline é instanciado com este passo, o Azure ML transmite automaticamente os parâmetros necessários através deste método para que esse passo possa ser adicionado a um gráfico de pipeline que representa o fluxo de trabalho.

create_node(graph, default_datastore, context)

Parâmetros

graph
Graph
Necessário

O objeto de gráfico ao que adicionar o nó.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Necessário

O arquivo de dados predefinido.

context
<xref:azureml.pipeline.core._GraphContext>
Necessário

O contexto do gráfico.

Devoluções

O nó criado.

Tipo de retorno