Delen via


ScriptRunConfig Klas

Vertegenwoordigt configuratiegegevens voor het verzenden van een trainingsuitvoering in Azure Machine Learning.

Een ScriptRunConfig-pakket bevat de configuratiegegevens die nodig zijn voor het verzenden van een uitvoering in Azure ML, met inbegrip van het script, het rekendoel, de omgeving en eventuele gedistribueerde taakspecifieke configuraties.

Zodra een script is geconfigureerd en verzonden met de submitscriptuitvoering, wordt er een ScriptRun geretourneerd.

Klasse ScriptRunConfig-constructor.

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)

Parameters

Name Description
source_directory
Vereist
str

Een lokale map met codebestanden die nodig zijn voor een uitvoering.

script
Vereist
str

Het bestandspad ten opzichte van de source_directory van het script dat moet worden uitgevoerd.

arguments
Vereist
list of str

Optionele opdrachtregelargumenten om door te geven aan het trainingsscript. Argumenten worden doorgegeven in paren, bijvoorbeeld ['–arg1', arg1_val, '–arg2', arg2_val].

run_config
Vereist

Optionele uitvoeringsconfiguratie die moet worden gebruikt.

_telemetry_values
Vereist

Alleen intern gebruik.

compute_target
Vereist

Het rekendoel waar de training plaatsvindt. Dit kan een ComputeTarget-object zijn, de naam van een bestaande ComputeTarget of de tekenreeks 'lokaal'. Als er geen rekendoel is opgegeven, wordt uw lokale computer gebruikt.

environment
Vereist

De omgeving die moet worden gebruikt voor de uitvoering. Als er geen omgeving is opgegeven, wordt azureml.core.runconfig.DEFAULT_CPU_IMAGE gebruikt als docker-installatiekopieën voor de uitvoering.

distributed_job_config
Vereist

Voor taken waarvoor aanvullende gedistribueerde taakspecifieke configuraties zijn vereist.

resume_from
Vereist

Het DataPath met de controlepunt- of modelbestanden van waaruit het experiment moet worden hervat.

max_run_duration_seconds
Vereist

De maximale tijd die is toegestaan voor de uitvoering. Het systeem probeert de uitvoering automatisch te annuleren als het langer duurde dan deze waarde. :type max_run_duration_seconds: int

command
Vereist
list[str] of str

De opdracht die moet worden verzonden voor de uitvoering. De opdrachteigenschap kan ook worden gebruikt in plaats van script/argumenten. Eigenschappen van zowel opdrachten als scripts/argumenten kunnen niet samen worden gebruikt om een uitvoering te verzenden. Een scriptbestand verzenden met behulp van de opdrachteigenschap ['python', 'train.py', '–arg1', arg1_val] Een werkelijke opdracht uitvoeren - ['ls']

docker_runtime_config
Vereist

Voor taken waarvoor docker runtime-specifieke configuraties zijn vereist.

source_directory
Vereist
str

Een lokale map met codebestanden die nodig zijn voor een uitvoering.

script
Vereist
str

Het bestandspad ten opzichte van de source_directory van het script dat moet worden uitgevoerd.

arguments
Vereist

Optionele opdrachtregelargumenten om door te geven aan het trainingsscript. Argumenten worden doorgegeven in paren, bijvoorbeeld ['–arg1', arg1_val, '–arg2', arg2_val].

run_config
Vereist

Optionele uitvoeringsconfiguratie die moet worden gebruikt.

_telemetry_values
Vereist

Alleen intern gebruik.

compute_target
Vereist

Het rekendoel waar de training plaatsvindt. Dit kan een ComputeTarget-object zijn, de naam van een bestaande ComputeTarget of de tekenreeks 'lokaal'. Als er geen rekendoel is opgegeven, wordt uw lokale computer gebruikt.

environment
Vereist

De omgeving die moet worden gebruikt voor de uitvoering. Als er geen omgeving is opgegeven, wordt azureml.core.runconfig.DEFAULT_CPU_IMAGE gebruikt als docker-installatiekopieën voor de uitvoering.

distributed_job_config
Vereist

Voor taken waarvoor aanvullende gedistribueerde taakspecifieke configuraties zijn vereist.

resume_from
Vereist

Het DataPath met de controlepunt- of modelbestanden van waaruit het experiment moet worden hervat.

max_run_duration_seconds
Vereist
int

De maximale tijd die is toegestaan voor de uitvoering. Het systeem probeert de uitvoering automatisch te annuleren als het langer duurde dan deze waarde.

command
Vereist
list[str] of str

De opdracht die moet worden verzonden voor de uitvoering. De opdrachteigenschap kan ook worden gebruikt in plaats van script/argumenten. Eigenschappen van zowel opdrachten als scripts/argumenten kunnen niet samen worden gebruikt om een uitvoering te verzenden. Een scriptbestand verzenden met behulp van de opdrachteigenschap ['python', 'train.py', '–arg1', arg1_val] Een werkelijke opdracht uitvoeren - ['ls']

docker_runtime_config
Vereist

Voor taken waarvoor docker runtime-specifieke configuraties zijn vereist.

Opmerkingen

De Azure Machine Learning SDK biedt u een reeks onderling verbonden klassen die zijn ontworpen om u te helpen machine learning-modellen te trainen en te vergelijken die zijn gerelateerd aan het gedeelde probleem dat ze oplossen.

Een Experiment fungeert als een logische container voor deze trainingsuitvoeringen. Een ScriptRunConfig-object wordt gebruikt om de informatie te configureren die nodig is voor het verzenden van een trainingsuitvoering als onderdeel van een experiment. Wanneer een uitvoering wordt verzonden met behulp van een ScriptRunConfig-object, retourneert de verzendmethode een object van het type ScriptRun. Vervolgens geeft het geretourneerde ScriptRun-object u programmatische toegang tot informatie over de trainingsuitvoering. ScriptRun is een onderliggende klasse van Run.

Het belangrijkste concept om te onthouden is dat er verschillende configuratieobjecten zijn die worden gebruikt om een experiment in te dienen, op basis van het type uitvoering dat u wilt activeren. Het type van het configuratieobject informeert vervolgens welke onderliggende klasse Run u krijgt van de verzendmethode. Wanneer u een ScriptRunConfig-object doorgeeft in een aanroep naar de verzendmethode van Experiment, krijgt u een ScriptRun-object terug. Voorbeelden van andere geretourneerde uitvoeringsobjecten zijn AutoMLRun (geretourneerd voor een AutoML-uitvoering) en PipelineRun (geretourneerd voor een pijplijnuitvoering).

In het volgende voorbeeld ziet u hoe u een trainingsscript verzendt op uw lokale computer.


   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)

In het volgende voorbeeld ziet u hoe u een trainingsscript op uw cluster verzendt met behulp van de opdrachteigenschap in plaats van script en argumenten.


   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)

In het volgende voorbeeld ziet u hoe u een opdracht uitvoert op uw 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)

Zie voor meer voorbeelden die laten zien hoe u met ScriptRunConfig werkt:

Kenmerken

MAX_DURATION_SECONDS_DEFAULT

MAX_DURATION_SECONDS_DEFAULT = 2592000