ScriptRunConfig Classe

Representa informações de configuração para enviar uma execução de treinamento no Azure Machine Learning.

Um ScriptRunConfig empacota as informações de configuração necessárias para enviar uma execução no Azure Machine Learning, incluindo o script, o destino de computação, o ambiente e as configurações específicas a um trabalho distribuído.

Quando uma execução de script é configurada e enviada com o submit, um ScriptRun é retornado.

Construtor ScriptRunConfig de classe.

Herança
azureml._logging.chained_identity.ChainedIdentity
ScriptRunConfig

Construtor

ScriptRunConfig(source_directory, script=None, arguments=None, run_config=None, _telemetry_values=None, compute_target=None, environment=None, distributed_job_config=None, resume_from=None, max_run_duration_seconds=2592000, command=None, docker_runtime_config=None)

Parâmetros

source_directory
str
Obrigatório

Um diretório local que contém arquivos de código necessários para uma execução.

script
str
Obrigatório

O caminho do arquivo relativo à source_directory do script a ser executado.

arguments
list ou str
Obrigatório

Argumentos de linha de comando opcionais a serem passados para o script de treinamento. Os argumentos são passados em pares, por exemplo, [' – arg1 ', arg1_val, ' – arg2 ', arg2_val].

run_config
RunConfiguration
Obrigatório

Configuração de execução opcional para usar.

_telemetry_values
dict
Obrigatório

Somente para uso interno.

compute_target
AbstractComputeTarget ou str
Obrigatório

O destino de computação onde o treinamento ocorrerá. Pode ser um objeto ComputeTarget, o nome de um ComputeTarget existente ou a cadeia de caracteres "local". Se nenhum destino de computação for especificado, o computador local será usado.

environment
Environment
Obrigatório

O ambiente a ser usado para a execução. Se nenhum ambiente for especificado, azureml.core.runconfig.DEFAULT_CPU_IMAGE será usado como a imagem do Docker para a execução.

distributed_job_config
TensorflowConfiguration, MpiConfiguration ou PyTorchConfiguration
Obrigatório

Para trabalhos que exigem configurações adicionais específicas a um trabalho distribuído.

resume_from
DataPath
Obrigatório

O DataPath que contém o ponto de verificação ou os arquivos de modelo dos quais retomar o experimento.

max_run_duration_seconds
Obrigatório

O tempo máximo permitido para a execução. O sistema tentará cancelar automaticamente a execução, se demorar mais do que esse valor. :type max_run_duration_seconds: int

command
list[str] ou str
Obrigatório

O comando a ser enviado para a execução. A propriedade command também pode ser usada em vez de script/arguments. As propriedades command e script/arguments não podem ser usadas juntas para enviar uma execução. Para enviar um arquivo de script usando a propriedade command – ['python', 'train.py', '–arg1', arg1_val] Para executar um comando propriamente dito – ['ls']

docker_runtime_config
DockerConfiguration
Obrigatório

Para trabalhos que exigem configurações específicas a um runtime do Docker.

source_directory
str
Obrigatório

Um diretório local que contém arquivos de código necessários para uma execução.

script
str
Obrigatório

O caminho do arquivo relativo à source_directory do script a ser executado.

arguments
list[str]
Obrigatório

Argumentos de linha de comando opcionais a serem passados para o script de treinamento. Os argumentos são passados em pares, por exemplo, [' – arg1 ', arg1_val, ' – arg2 ', arg2_val].

run_config
RunConfiguration
Obrigatório

Configuração de execução opcional para usar.

_telemetry_values
dict
Obrigatório

Somente para uso interno.

compute_target
AbstractComputeTarget ou str
Obrigatório

O destino de computação onde o treinamento ocorrerá. Pode ser um objeto ComputeTarget, o nome de um ComputeTarget existente ou a cadeia de caracteres "local". Se nenhum destino de computação for especificado, o computador local será usado.

environment
Environment
Obrigatório

O ambiente a ser usado para a execução. Se nenhum ambiente for especificado, azureml.core.runconfig.DEFAULT_CPU_IMAGE será usado como a imagem do Docker para a execução.

distributed_job_config
TensorflowConfiguration ou MpiConfiguration ou PyTorchConfiguration
Obrigatório

Para trabalhos que exigem configurações adicionais específicas a um trabalho distribuído.

resume_from
DataPath
Obrigatório

O DataPath que contém o ponto de verificação ou os arquivos de modelo dos quais retomar o experimento.

max_run_duration_seconds
int
Obrigatório

O tempo máximo permitido para a execução. O sistema tentará cancelar automaticamente a execução, se demorar mais do que esse valor.

command
list[str] ou str
Obrigatório

O comando a ser enviado para a execução. A propriedade command também pode ser usada em vez de script/arguments. As propriedades command e script/arguments não podem ser usadas juntas para enviar uma execução. Para enviar um arquivo de script usando a propriedade command – ['python', 'train.py', '–arg1', arg1_val] Para executar um comando propriamente dito – ['ls']

docker_runtime_config
DockerConfiguration
Obrigatório

Para trabalhos que exigem configurações específicas a um runtime do Docker.

Comentários

O SDK do Azure Machine Learning fornece uma série de classes interconectadas, que são projetadas para ajudar você a treinar e a comparar os modelos de machine learning relacionados pelo problema compartilhado que estão resolvendo.

Um Experiment atua como um contêiner lógico para essas execuções de treinamento. Um objeto ScriptRunConfig é usado para configurar as informações necessárias para enviar uma execução de treinamento como parte de um experimento. Quando uma execução é enviada usando um objeto ScriptRunConfig, o método submit retorna um objeto do tipo ScriptRun. O objeto ScriptRun retornado fornece acesso programático a informações sobre a execução do treinamento. ScriptRun é uma classe filho de Run.

O principal conceito a ser lembrado é que há diferentes objetos de configuração que são usados para enviar um experimento, com base no tipo de execução que você deseja disparar. O tipo do objeto de configuração então informa qual classe filho de execução você obtém de volta do método submit. Ao passar um objeto ScriptRunConfig em uma chamada para o método submit do experimento, você obtém um objeto ScriptRun. Exemplos de outros objetos de execução retornados incluem AutoMLRun (retornados para uma execução de ML automatizado) e PipelineRun (retornado para uma execução de pipeline).

O exemplo a seguir mostra como enviar um script de treinamento no computador local.


   from azureml.core import ScriptRunConfig, Experiment

   # create or load an experiment
   experiment = Experiment(workspace, 'MyExperiment')
   # create or retrieve a compute target
   cluster = workspace.compute_targets['MyCluster']
   # create or retrieve an environment
   env = Environment.get(ws, name='MyEnvironment')
   # configure and submit your training run
   config = ScriptRunConfig(source_directory='.',
                            script='train.py',
                            arguments=['--arg1', arg1_val, '--arg2', arg2_val],
                            compute_target=cluster,
                            environment=env)
   script_run = experiment.submit(config)

O exemplo a seguir mostra como enviar um script de treinamento no cluster usando a propriedade command em vez de script e arguments.


   from azureml.core import ScriptRunConfig, Experiment
   # create or load an experiment
   experiment = Experiment(workspace, 'MyExperiment')
   # create or retrieve a compute target
   cluster = workspace.compute_targets['MyCluster']
   # create or retrieve an environment
   env = Environment.get(ws, name='MyEnvironment')
   # configure and submit your training run
   config = ScriptRunConfig(source_directory='.',
                            command=['python', 'train.py', '--arg1', arg1_val],
                            compute_target=cluster,
                            environment=env)
   script_run = experiment.submit(config)

O exemplo a seguir mostra como executar um comando no cluster.


   from azureml.core import ScriptRunConfig, Experiment
   # create or load an experiment
   experiment = Experiment(workspace, 'MyExperiment')
   # create or retrieve a compute target
   cluster = workspace.compute_targets['MyCluster']
   # create or retrieve an environment
   env = Environment.get(ws, name='MyEnvironment')
   # configure and submit your training run
   config = ScriptRunConfig(source_directory='.',
                            command=['ls', '-l'],
                            compute_target=cluster,
                            environment=env)
   script_run = experiment.submit(config)

Para obter mais exemplos mostrando como trabalhar com ScriptRunConfig, confira:

Atributos

MAX_DURATION_SECONDS_DEFAULT

MAX_DURATION_SECONDS_DEFAULT = 2592000