ScriptRunConfig Klass

Representerar konfigurationsinformation för att skicka en träningskörning i Azure Machine Learning.

Ett ScriptRunConfig-paket kombinerar den konfigurationsinformation som behövs för att skicka en körning i Azure ML, inklusive skriptet, beräkningsmålet, miljön och eventuella distribuerade jobbspecifika konfigurationer.

När ett skript har konfigurerats och skickats med submitreturneras en ScriptRun .

Class ScriptRunConfig-konstruktor.

Arv
azureml._logging.chained_identity.ChainedIdentity
ScriptRunConfig

Konstruktor

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)

Parametrar

source_directory
str
Obligatorisk

En lokal katalog som innehåller kodfiler som behövs för en körning.

script
str
Obligatorisk

Filsökvägen i förhållande till source_directory för skriptet som ska köras.

arguments
list eller str
Obligatorisk

Valfria kommandoradsargument som ska skickas till träningsskriptet. Argument skickas i par, till exempel ["-arg1", arg1_val, "-arg2", arg2_val].

run_config
RunConfiguration
Obligatorisk

Valfri körningskonfiguration som ska användas.

_telemetry_values
dict
Obligatorisk

Endast internt bruk.

compute_target
AbstractComputeTarget eller str
Obligatorisk

Beräkningsmålet där träningen ska ske. Detta kan antingen vara ett ComputeTarget-objekt, namnet på en befintlig ComputeTarget eller strängen "local". Om inget beräkningsmål anges används den lokala datorn.

environment
Environment
Obligatorisk

Miljön som ska användas för körningen. Om ingen miljö anges används azureml.core.runconfig.DEFAULT_CPU_IMAGE som Docker-avbildning för körningen.

distributed_job_config
TensorflowConfiguration, MpiConfiguration eller PyTorchConfiguration
Obligatorisk

För jobb som kräver ytterligare distribuerade jobbspecifika konfigurationer.

resume_from
DataPath
Obligatorisk

DataPath som innehåller kontrollpunkten eller modellfilerna som experimentet ska återupptas från.

max_run_duration_seconds
Obligatorisk

Den maximala tid som tillåts för körningen. Systemet försöker automatiskt avbryta körningen om det tog längre tid än det här värdet. :type max_run_duration_seconds: int

command
list[str] eller str
Obligatorisk

Kommandot som ska skickas för körningen. Kommandoegenskapen kan också användas i stället för skript/argument. Egenskaper för både kommando och skript/argument kan inte användas tillsammans för att skicka en körning. Skicka en skriptfil med hjälp av kommandoegenskapen ['python', 'train.py', '-arg1', arg1_val] Köra ett faktiskt kommando - ['ls']

docker_runtime_config
DockerConfiguration
Obligatorisk

För jobb som kräver Docker-körningsspecifika konfigurationer.

source_directory
str
Obligatorisk

En lokal katalog som innehåller kodfiler som behövs för en körning.

script
str
Obligatorisk

Filsökvägen i förhållande till source_directory för skriptet som ska köras.

arguments
list[str]
Obligatorisk

Valfria kommandoradsargument som ska skickas till träningsskriptet. Argument skickas i par, till exempel ["-arg1", arg1_val, "-arg2", arg2_val].

run_config
RunConfiguration
Obligatorisk

Valfri körningskonfiguration som ska användas.

_telemetry_values
dict
Obligatorisk

Endast internt bruk.

compute_target
AbstractComputeTarget eller str
Obligatorisk

Beräkningsmålet där träningen ska ske. Detta kan antingen vara ett ComputeTarget-objekt, namnet på en befintlig ComputeTarget eller strängen "local". Om inget beräkningsmål anges används den lokala datorn.

environment
Environment
Obligatorisk

Miljön som ska användas för körningen. Om ingen miljö anges används azureml.core.runconfig.DEFAULT_CPU_IMAGE som Docker-avbildning för körningen.

distributed_job_config
TensorflowConfiguration eller MpiConfiguration eller PyTorchConfiguration
Obligatorisk

För jobb som kräver ytterligare distribuerade jobbspecifika konfigurationer.

resume_from
DataPath
Obligatorisk

DataPath som innehåller kontrollpunkten eller modellfilerna som experimentet ska återupptas från.

max_run_duration_seconds
int
Obligatorisk

Den maximala tid som tillåts för körningen. Systemet försöker automatiskt avbryta körningen om det tog längre tid än det här värdet.

command
list[str] eller str
Obligatorisk

Kommandot som ska skickas för körningen. Kommandoegenskapen kan också användas i stället för skript/argument. Egenskaper för både kommando och skript/argument kan inte användas tillsammans för att skicka en körning. Skicka en skriptfil med hjälp av kommandoegenskapen ['python', 'train.py', '-arg1', arg1_val] Köra ett faktiskt kommando - ['ls']

docker_runtime_config
DockerConfiguration
Obligatorisk

För jobb som kräver Docker-körningsspecifika konfigurationer.

Kommentarer

Azure Machine Learning SDK ger dig en serie sammankopplade klasser som är utformade för att hjälpa dig att träna och jämföra maskininlärningsmodeller som är relaterade till det delade problem som de löser.

En Experiment fungerar som en logisk container för dessa träningskörningar. Ett ScriptRunConfig-objekt används för att konfigurera den information som krävs för att skicka en träningskörning som en del av ett experiment. När en körning skickas med hjälp av ett ScriptRunConfig-objekt returnerar submit-metoden ett objekt av typen ScriptRun. Sedan returneras ScriptRun-objektet ger dig programmatisk åtkomst till information om träningskörningen. ScriptRun är en underordnad klass till Run.

Det viktigaste konceptet att komma ihåg är att det finns olika konfigurationsobjekt som används för att skicka ett experiment, baserat på vilken typ av körning du vill utlösa. Typen av konfigurationsobjekt informerar sedan vilken underordnad klass av Kör du får tillbaka från sändningsmetoden. När du skickar ett ScriptRunConfig-objekt i ett anrop till experimentets sändningsmetod får du tillbaka ett ScriptRun-objekt. Exempel på andra körningsobjekt som returneras är AutoMLRun (returneras för en AutoML-körning) och PipelineRun (returneras för en pipelinekörning).

Följande exempel visar hur du skickar ett träningsskript på den lokala datorn.


   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)

I följande exempel visas hur du skickar ett träningsskript i klustret med hjälp av kommandoegenskapen i stället för skript och argument.


   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)

Följande exempel visar hur du kör ett kommando i klustret.


   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)

Fler exempel som visar hur du arbetar med ScriptRunConfig finns i:

Attribut

MAX_DURATION_SECONDS_DEFAULT

MAX_DURATION_SECONDS_DEFAULT = 2592000