ScriptRunConfig Clase

Representa la información de configuración para enviar una ejecución de entrenamiento en Azure Machine Learning.

ScriptRunConfig empaqueta junta la información de configuración necesaria para enviar una ejecución en Azure ML, incluidos el script, el destino de proceso, el entorno y cualquier configuración distribuida específica del trabajo.

Una vez configurada y enviada una ejecución de script con submit, se devuelve ScriptRun.

Constructor ScriptRunConfig de clase.

Herencia
azureml._logging.chained_identity.ChainedIdentity
ScriptRunConfig

Constructor

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
Requerido

Directorio local que contiene los archivos de código necesarios para una ejecución.

script
str
Requerido

Ruta de acceso del archivo relativa al source_directory del script que se va a ejecutar.

arguments
list o str
Requerido

Argumentos de línea de comandos opcionales que se pasan al script de entrenamiento. Los argumentos se pasan en pares, por ejemplo: ['–arg1', arg1_val, '–arg2', arg2_val].

run_config
RunConfiguration
Requerido

Configuración de ejecución opcional que se usará.

_telemetry_values
dict
Requerido

Exclusivamente para uso interno.

compute_target
AbstractComputeTarget o str
Requerido

Destino de proceso en el que se realizará el entrenamiento. Puede ser un objeto ComputeTarget, el nombre de un objeto ComputeTarget existente o la cadena "local". Si no se especifica ningún destino de proceso, se usará el equipo local.

environment
Environment
Requerido

El entorno que se usará para la ejecución. Si no se especifica ningún entorno, azureml.core.runconfig.DEFAULT_CPU_IMAGE se usará como imagen de Docker para la ejecución.

distributed_job_config
TensorflowConfiguration, MpiConfiguration o PyTorchConfiguration
Requerido

Para los trabajos que requieren configuraciones adicionales distribuidas específicas del trabajo.

resume_from
DataPath
Requerido

Ruta de acceso de datos que contiene el punto de control o los archivos del modelo desde los que se va a reanudar el experimento.

max_run_duration_seconds
Requerido

Tiempo máximo permitido para la ejecución. El sistema intentará cancelar automáticamente la ejecución si tardó más que este valor. :type max_run_duration_seconds: int

command
list[str] o str
Requerido

Comando que se va a enviar para la ejecución. La propiedad command también se puede usar en lugar de script/arguments. Las propiedades command y script/argument no se pueden usar juntas para enviar una ejecución. Para enviar un archivo de script mediante la propiedad de comando: ['python', 'train.py', '–arg1', arg1_val]. Para ejecutar un comando real - ['ls']

docker_runtime_config
DockerConfiguration
Requerido

Para los trabajos que requieren configuraciones específicas del entorno de ejecución de Docker.

source_directory
str
Requerido

Directorio local que contiene los archivos de código necesarios para una ejecución.

script
str
Requerido

Ruta de acceso del archivo relativa al source_directory del script que se va a ejecutar.

arguments
list[str]
Requerido

Argumentos de línea de comandos opcionales que se pasan al script de entrenamiento. Los argumentos se pasan en pares, por ejemplo: ['–arg1', arg1_val, '–arg2', arg2_val].

run_config
RunConfiguration
Requerido

Configuración de ejecución opcional que se usará.

_telemetry_values
dict
Requerido

Exclusivamente para uso interno.

compute_target
AbstractComputeTarget o str
Requerido

Destino de proceso en el que se realizará el entrenamiento. Puede ser un objeto ComputeTarget, el nombre de un objeto ComputeTarget existente o la cadena "local". Si no se especifica ningún destino de proceso, se usará el equipo local.

environment
Environment
Requerido

El entorno que se usará para la ejecución. Si no se especifica ningún entorno, azureml.core.runconfig.DEFAULT_CPU_IMAGE se usará como imagen de Docker para la ejecución.

distributed_job_config
TensorflowConfiguration o MpiConfiguration o PyTorchConfiguration
Requerido

Para los trabajos que requieren configuraciones adicionales distribuidas específicas del trabajo.

resume_from
DataPath
Requerido

Ruta de acceso de datos que contiene el punto de control o los archivos del modelo desde los que se va a reanudar el experimento.

max_run_duration_seconds
int
Requerido

Tiempo máximo permitido para la ejecución. El sistema intentará cancelar automáticamente la ejecución si tardó más que este valor.

command
list[str] o str
Requerido

Comando que se va a enviar para la ejecución. La propiedad command también se puede usar en lugar de script/arguments. Las propiedades command y script/argument no se pueden usar juntas para enviar una ejecución. Para enviar un archivo de script mediante la propiedad de comando: ['python', 'train.py', '–arg1', arg1_val]. Para ejecutar un comando real - ['ls']

docker_runtime_config
DockerConfiguration
Requerido

Para los trabajos que requieren configuraciones específicas del entorno de ejecución de Docker.

Comentarios

El SDK de Azure Machine Learning proporciona una serie de clases interconectadas, diseñadas para ayudarle a entrenar y comparar modelos de aprendizaje automático relacionados con el problema compartido que están solucionando.

Una clase Experiment actúa como contenedor lógico para estas ejecuciones de entrenamiento. Un objeto ScriptRunConfig se usa para configurar la información necesaria para enviar una ejecución de entrenamiento como parte de un Experimento. Cuando se envía una ejecución mediante un objeto ScriptRunConfig, el método de envío devuelve un objeto de tipo ScriptRun. El objeto ScriptRun devuelto proporciona acceso mediante programación a información sobre la ejecución de entrenamiento. ScriptRun es una clase secundaria de Run.

El concepto clave que se debe recordar es que hay diferentes objetos de configuración que se usan para enviar un experimento, en función del tipo de ejecución que quiera desencadenar. A continuación, el tipo del objeto de configuración informa de qué clase secundaria de ejecución obtiene del método submit. Cuando se pasa un objeto ScriptRunConfig en una llamada al método submit del experimento, se devuelve un objeto ScriptRun. Entre los ejemplos de otros objetos de ejecución devueltos se incluyen AutoMLRun (devuelto para una ejecución de AutoML) y PipelineRun (devuelto para una ejecución de canalización).

En el ejemplo siguiente se muestra cómo enviar un script de entrenamiento en el equipo 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)

En el ejemplo siguiente se muestra cómo enviar un script de entrenamiento en el clúster mediante la propiedad command en lugar de script y 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)

En el ejemplo siguiente se muestra cómo ejecutar un comando en el clúster.


   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 obtener más ejemplos en los que se muestra cómo trabajar con ScriptRunConfig, consulte:

Atributos

MAX_DURATION_SECONDS_DEFAULT

MAX_DURATION_SECONDS_DEFAULT = 2592000