ScriptRunConfig Klasa

Reprezentuje informacje o konfiguracji do przesyłania przebiegu trenowania w usłudze Azure Machine Learning.

SkryptRunConfig pakuje razem informacje o konfiguracji potrzebne do przesłania przebiegu w usłudze Azure ML, w tym skrypt, docelowy obiekt obliczeniowy, środowisko i wszelkie konfiguracje specyficzne dla zadania rozproszonego.

Po skonfigurowaniu i przesłaniu skryptu submitScriptRun za pomocą polecenia zwracany jest element .

Klasa ScriptRunConfig, konstruktor.

Dziedziczenie
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)

Parametry

source_directory
str
Wymagane

Katalog lokalny zawierający pliki kodu potrzebne do uruchomienia.

script
str
Wymagane

Ścieżka pliku względem source_directory skryptu do uruchomienia.

arguments
list lub str
Wymagane

Opcjonalne argumenty wiersza polecenia do przekazania do skryptu trenowania. Argumenty są przekazywane w parach, na przykład ['–arg1', arg1_val, '–arg2', arg2_val].

run_config
RunConfiguration
Wymagane

Opcjonalna konfiguracja uruchamiania do użycia.

_telemetry_values
dict
Wymagane

Tylko do użytku wewnętrznego.

compute_target
AbstractComputeTarget lub str
Wymagane

Docelowy obiekt obliczeniowy, w którym nastąpi trenowanie. Może to być obiekt ComputeTarget, nazwa istniejącego obiektu ComputeTarget lub ciąg "local". Jeśli nie określono docelowego obiektu obliczeniowego, zostanie użyta maszyna lokalna.

environment
Environment
Wymagane

Środowisko do użycia na potrzeby przebiegu. Jeśli środowisko nie zostanie określone, azureml.core.runconfig.DEFAULT_CPU_IMAGE będzie używany jako obraz platformy Docker dla przebiegu.

distributed_job_config
TensorflowConfiguration, MpiConfiguration lub PyTorchConfiguration
Wymagane

W przypadku zadań wymagających dodatkowych konfiguracji specyficznych dla zadań rozproszonych.

resume_from
DataPath
Wymagane

Ścieżka DataPath zawierająca pliki punktu kontrolnego lub modelu, z których ma być wznowione eksperyment.

max_run_duration_seconds
Wymagane

Maksymalny dozwolony czas dla przebiegu. System podejmie próbę automatycznego anulowania przebiegu, jeśli trwało to dłużej niż ta wartość. :type max_run_duration_seconds: int

command
list[str] lub str
Wymagane

Polecenie, które ma zostać przesłane do uruchomienia. Właściwość polecenia może być również używana zamiast skryptów/argumentów. Właściwości polecenia i skryptu/argumentu nie mogą być używane razem do przesyłania przebiegu. Aby przesłać plik skryptu przy użyciu właściwości polecenia ['python', 'train.py', '-arg1', arg1_val] Aby uruchomić rzeczywiste polecenie — ['ls']

docker_runtime_config
DockerConfiguration
Wymagane

W przypadku zadań wymagających konfiguracji specyficznych dla środowiska uruchomieniowego platformy Docker.

source_directory
str
Wymagane

Katalog lokalny zawierający pliki kodu potrzebne do uruchomienia.

script
str
Wymagane

Ścieżka pliku względem source_directory skryptu do uruchomienia.

arguments
list[str]
Wymagane

Opcjonalne argumenty wiersza polecenia do przekazania do skryptu trenowania. Argumenty są przekazywane w parach, na przykład ['–arg1', arg1_val, '–arg2', arg2_val].

run_config
RunConfiguration
Wymagane

Opcjonalna konfiguracja uruchamiania do użycia.

_telemetry_values
dict
Wymagane

Tylko do użytku wewnętrznego.

compute_target
AbstractComputeTarget lub str
Wymagane

Docelowy obiekt obliczeniowy, w którym nastąpi trenowanie. Może to być obiekt ComputeTarget, nazwa istniejącego obiektu ComputeTarget lub ciąg "local". Jeśli nie określono docelowego obiektu obliczeniowego, zostanie użyta maszyna lokalna.

environment
Environment
Wymagane

Środowisko do użycia na potrzeby przebiegu. Jeśli środowisko nie zostanie określone, azureml.core.runconfig.DEFAULT_CPU_IMAGE będzie używany jako obraz platformy Docker dla przebiegu.

distributed_job_config
TensorflowConfiguration lub MpiConfiguration lub PyTorchConfiguration
Wymagane

W przypadku zadań wymagających dodatkowych konfiguracji specyficznych dla zadań rozproszonych.

resume_from
DataPath
Wymagane

Ścieżka DataPath zawierająca pliki punktu kontrolnego lub modelu, z których ma być wznowione eksperyment.

max_run_duration_seconds
int
Wymagane

Maksymalny dozwolony czas dla przebiegu. System podejmie próbę automatycznego anulowania przebiegu, jeśli trwało to dłużej niż ta wartość.

command
list[str] lub str
Wymagane

Polecenie, które ma zostać przesłane do uruchomienia. Właściwość polecenia może być również używana zamiast skryptów/argumentów. Właściwości polecenia i skryptu/argumentu nie mogą być używane razem do przesyłania przebiegu. Aby przesłać plik skryptu przy użyciu właściwości polecenia ['python', 'train.py', '-arg1', arg1_val] Aby uruchomić rzeczywiste polecenie — ['ls']

docker_runtime_config
DockerConfiguration
Wymagane

W przypadku zadań wymagających konfiguracji specyficznych dla środowiska uruchomieniowego platformy Docker.

Uwagi

Zestaw SDK usługi Azure Machine Learning udostępnia serię wzajemnie połączonych klas, które ułatwiają trenowanie i porównywanie modeli uczenia maszynowego, które są związane z udostępnionym problemem, który rozwiązuje.

Element Experiment działa jako kontener logiczny dla tych przebiegów trenowania. Obiekt ScriptRunConfig służy do konfigurowania informacji niezbędnych do przesłania przebiegu trenowania w ramach eksperymentu. Po przesłaniu przebiegu przy użyciu obiektu ScriptRunConfig metoda submit zwraca obiekt typu ScriptRun. Następnie zwrócony obiekt ScriptRun zapewnia programowy dostęp do informacji o przebiegu trenowania. ScriptRun to klasa podrzędna klasy Run.

Kluczową koncepcją do zapamiętania jest to, że istnieją różne obiekty konfiguracji używane do przesyłania eksperymentu na podstawie rodzaju przebiegu, który chcesz wyzwolić. Typ obiektu konfiguracji informuje następnie o klasie podrzędnej Przebiegu, która zostanie przywrócona z metody submit. Po przekazaniu obiektu ScriptRunConfig w wywołaniu metody submit eksperymentu jest zwracany obiekt ScriptRun. Przykłady innych zwróconych obiektów przebiegu to ( AutoMLRun zwracane dla przebiegu rozwiązania AutoML) i PipelineRun (zwracane w przypadku uruchomienia potoku).

Poniższy przykład pokazuje, jak przesłać skrypt szkoleniowy na maszynie lokalnej.


   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)

W poniższym przykładzie pokazano, jak przesłać skrypt trenowania w klastrze przy użyciu właściwości polecenia zamiast skryptu i argumentów.


   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)

Poniższy przykład pokazuje, jak uruchomić polecenie w klastrze.


   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)

Aby uzyskać więcej przykładów pokazujących sposób pracy z elementem ScriptRunConfig, zobacz:

Atrybuty

MAX_DURATION_SECONDS_DEFAULT

MAX_DURATION_SECONDS_DEFAULT = 2592000