RunConfiguration Třída
Představuje konfiguraci pro spuštění experimentů, jejichž cílem jsou různé cílové výpočetní objekty ve službě Azure Machine Learning.
Objekt RunConfiguration zapouzdřuje informace potřebné k odeslání trénovacího spuštění v experimentu. Obvykle nevytvoříte objekt RunConfiguration přímo, ale získáte ho z metody, která ho Experiment vrátí, jako submit je například metoda třídy .
RunConfiguration je základní konfigurace prostředí, která se používá také v jiných typech kroků konfigurace, které závisí na tom, jaký druh spuštění spouštíte. Například při nastavování můžete přistupovat k objektu PythonScriptStepRunConfiguration kroku a konfigurovat závislosti Conda nebo přistupovat k vlastnostem prostředí pro spuštění.
Příklady konfigurací spuštění najdete v tématu Výběr a použití cílového výpočetního objektu k trénování modelu.
Inicializujte RunConfiguration s výchozím nastavením.
- Dědičnost
-
azureml._base_sdk_common.abstract_run_config_element._AbstractRunConfigElementRunConfiguration
Konstruktor
RunConfiguration(script=None, arguments=None, framework=None, communicator=None, conda_dependencies=None, _history_enabled=None, _path=None, _name=None, command=None)
Parametry
- script
- str
Relativní cesta k souboru skriptu Jazyka Python. Cesta k souboru je relativní vzhledem ke zdrojovému adresáři předaného do submit.
Argumenty příkazového řádku pro soubor skriptu Jazyka Python.
- framework
- str
Cílová architektura použitá v běhu. Podporované architektury jsou Python, PySpark, TensorFlow a PyTorch.
- communicator
- str
Komunikátor použitý při spuštění. Podporované komunikátory jsou None, ParameterServer, OpenMpi a IntelMpi. Mějte na paměti, že OpenMpi vyžaduje vlastní image s nainstalovaným OpenMpi. Pro clustery AmlCompute použijte ParametrServer nebo OpenMpi. Pro distribuované trénovací úlohy používejte IntelMpi.
- conda_dependencies
- CondaDependencies
Když ponecháte výchozí hodnotu False, systém vytvoří prostředí Pythonu, které zahrnuje balíčky zadané v conda_dependencies
.
Při nastavení true je možné zadat existující prostředí Pythonu pomocí nastavení python_interpreter.
Příkaz, který se má odeslat ke spuštění. Vlastnost příkazu lze také použít místo skriptů/argumentů. Vlastnosti příkazu i skriptu nebo argumentu nelze použít společně k odeslání spuštění. Odeslání souboru skriptu pomocí vlastnosti příkazu – ['python', 'train.py', '-arg1', arg1_val] Spuštění skutečného příkazu – ['ls']
- _history_enabled
- _path
- _name
Poznámky
Systémy strojového učení obvykle vytváříme k řešení konkrétního problému. Může nás například zajímat nalezení nejlepšího modelu, který řadí webové stránky, které můžou být obsluhovány jako výsledky hledání odpovídající dotazu. Naše hledání nejlepšího modelu strojového učení může vyžadovat, abychom vyzkoušeli různé algoritmy nebo zvážili různá nastavení parametrů atd.
V sadě Azure Machine Learning SDK používáme koncept experimentu k zachycení toho, že různé trénovací běhy souvisejí s problémem, který se snaží vyřešit. Potom Experiment funguje jako logický kontejner pro tyto trénovací běhy, což usnadňuje sledování průběhu trénovacích běhů, přímé porovnání dvou trénovacích běhů atd.
RunConfiguration zapouzdřuje nastavení spouštěcího prostředí potřebná k odeslání trénovacího běhu v experimentu. Zaznamenává sdílenou strukturu trénovacích běhů, které jsou navrženy tak, aby řešily stejný problém strojového učení, a také rozdíly v konfiguračních parametrech (např. rychlost učení, ztrátová funkce atd.), které od sebe odlišují odlišné trénovací běhy.
V typických scénářích trénování se RunConfiguration používá k vytvoření objektu ScriptRunConfig , který zabalí objekt RunConfiguration a spouštěcí skript pro trénování.
Konfigurace RunConfiguration zahrnuje:
Sdružování zdrojového adresáře experimentu včetně odeslaného skriptu
Nastavení argumentů příkazového řádku pro odeslaný skript.
Konfigurace cesty pro interpret Pythonu
Získejte konfiguraci Conda pro pro správu závislostí aplikací. Proces odeslání úlohy může použít konfiguraci ke zřízení dočasného prostředí Conda a spuštění aplikace v rámci. Dočasná prostředí se ukládají do mezipaměti a znovu se používají v následných spuštěních.
Volitelné použití Dockeru a vlastních základních imagí
Volitelná volba odeslání experimentu do několika typů výpočetních prostředků Azure.
Volitelná volba konfigurace materializace vstupů a nahrávání výstupů.
Upřesňující nastavení modulu runtime pro běžné moduly runtime, jako jsou spark a tensorflow.
Následující příklad ukazuje, jak odeslat trénovací skript na místním počítači.
from azureml.core import ScriptRunConfig, RunConfiguration, Experiment
# create or load an experiment
experiment = Experiment(workspace, "MyExperiment")
# run a trial from the train.py code in your current directory
config = ScriptRunConfig(source_directory='.', script='train.py',
run_config=RunConfiguration())
run = experiment.submit(config)
Následující příklad ukazuje, jak odeslat trénovací skript do clusteru pomocí vlastnosti command místo skriptu a 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)
Následující ukázka ukazuje, jak spustit příkaz v clusteru.
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)
Proměnné
- environment
- Environment
Definice prostředí. Toto pole konfiguruje prostředí Pythonu. Můžete ho nakonfigurovat tak, aby používal stávající prostředí Pythonu, nebo ho můžete nakonfigurovat pro nastavení dočasného prostředí pro experiment. Definice také zodpovídá za nastavení požadovaných závislostí aplikace.
- max_run_duration_seconds
- int
Maximální povolená doba spuštění. Systém se pokusí automaticky zrušit spuštění, pokud trvalo déle, než je tato hodnota.
- node_count
- int
Počet uzlů, které se mají použít pro úlohu.
- priority
- int
Priorita úlohy pro zásady plánování.
- history
- HistoryConfiguration
Část konfigurace slouží k zakázání a povolení funkcí protokolování historie experimentů.
- spark
- SparkConfiguration
Pokud je platforma nastavená na PySpark, použije se část konfigurace Sparku k nastavení výchozího SparkConf pro odeslanou úlohu.
- hdi
- HdiConfiguration
Oddíl konfigurace HDI se projeví pouze v případech, kdy je cíl nastavený na výpočetní prostředky Azure HDI. Konfigurace HDI slouží k nastavení režimu nasazení YARN. Výchozím režimem nasazení je cluster.
- docker
- DockerConfiguration
Část konfigurace Dockeru slouží k nastavení proměnných pro prostředí Dockeru.
- tensorflow
- TensorflowConfiguration
Oddíl konfigurace použitý ke konfiguraci distribuovaných parametrů TensorFlow.
Tento parametr se projeví pouze v framework
případě, že parametr je nastavený na TensorFlow a parametr communicator
na ParameterServer. AmlCompute je jediným podporovaným výpočetním prostředím pro tuto konfiguraci.
- mpi
- MpiConfiguration
Oddíl konfigurace použitý ke konfiguraci distribuovaných parametrů úlohy MPI.
Tento parametr se projeví pouze v případě, že framework
je parametr nastavený na Python a parametr communicator
na OpenMpi nebo IntelMpi. AmlCompute je jediným podporovaným typem výpočetních prostředků pro tuto konfiguraci.
- pytorch
- PyTorchConfiguration
Oddíl konfigurace použitý ke konfiguraci distribuovaných parametrů úlohy PyTorch.
Tento parametr se projeví pouze v framework
případě, že je parametr nastavený na PyTorch a parametr communicator
na Nccl nebo Gloo. AmlCompute je jediným podporovaným typem výpočetních prostředků pro tuto konfiguraci.
- paralleltask
- ParallelTaskConfiguration
Oddíl konfigurace, který se používá ke konfiguraci parametrů distribuované úlohy paralelního zpracování.
Tento parametr se projeví jenom v framework
případě, že parametr je nastavený na Python a parametr na communicator
ParallelTask. AmlCompute je jediným podporovaným typem výpočetních prostředků pro tuto konfiguraci.
- data_references
- dict[str, DataReferenceConfiguration]
Všechny zdroje dat jsou k dispozici pro spuštění během provádění na základě každé konfigurace. Pro každou položku slovníku je klíč název zdroje dat a hodnota je DataReferenceConfiguration.
- datacaches
- <xref:buildin.list>[DatacacheConfiguration]
Všechna data pro zpřístupnění mezipaměti datacache pro spuštění během provádění.
- output_data
- OutputData
Všechny výstupy, které by se měly nahrát a sledovat pro toto spuštění.
- source_directory_data_store
- str
Záložní úložiště dat pro sdílenou složku projektu.
- amlcompute
- AmlComputeConfiguration
Podrobnosti o cílovém výpočetním objektu, který se má vytvořit během experimentu. Konfigurace se projeví pouze v případech, kdy je cílovým výpočetním objektem AmlCompute.
- kubernetescompute
- KubernetesComputeConfiguration
Podrobnosti o cílovém výpočetním objektu, který se použije během experimentu. Konfigurace se projeví pouze v případech, kdy je cílovým výpočetním objektem KubernetesCompute.
- services
- dict[str, ApplicationEndpointConfiguration]
Koncové body pro interakci s výpočetním prostředkem. Povolené koncové body jsou Porty Jupyter, JupyterLab, VS Code, Tensorboard, SSH a Custom.
Metody
delete |
Odstraňte konfigurační soubor spuštění. Vyvolá , UserErrorException pokud nebyl nalezen konfigurační soubor. |
load |
Načtěte dříve uložený konfigurační soubor spuštění ze souboru na disku. Pokud Pokud |
save |
Uložte RunConfiguration do souboru na disku. Vyvolá UserErrorException se, když:
Pokud Pokud Tato metoda je užitečná při ruční úpravě konfigurace nebo při sdílení konfigurace s rozhraním příkazového řádku. |
delete
Odstraňte konfigurační soubor spuštění.
Vyvolá , UserErrorException pokud nebyl nalezen konfigurační soubor.
static delete(path, name)
Parametry
- path
- str
Uživatel vybral kořenový adresář pro konfigurace spuštění. Obvykle je to úložiště Git nebo kořenový adresář projektu Pythonu. Konfigurace se odstraní z podadresář s názvem .azureml.
Výjimky
load
Načtěte dříve uložený konfigurační soubor spuštění ze souboru na disku.
Pokud path
odkazuje na soubor, runConfiguration se načte z daného souboru.
Pokud path
odkazuje na adresář, který by měl být adresářem projektu, pak se runConfiguration načte z <path>/.azureml/<name> nebo <path>/aml_config/<name>.
static load(path, name=None)
Parametry
- path
- str
Uživatel vybral kořenový adresář pro konfigurace spuštění. Obvykle je to úložiště Git nebo kořenový adresář projektu Pythonu. Kvůli zpětné kompatibilitě se konfigurace načte také z podadresář .azureml nebo aml_config. Pokud soubor není v těchto adresářích, načte se ze zadané cesty.
Návraty
Spuštění objektu konfigurace.
Návratový typ
Výjimky
save
Uložte RunConfiguration do souboru na disku.
Vyvolá UserErrorException se, když:
RunConfiguration se nedá uložit se zadaným názvem.
Nebyl zadán žádný
name
parametr.Parametr
path
je neplatný.
Pokud path
je formát <dir_path>/<file_name>, kde <dir_path> je platný adresář, uloží se RunConfiguration na <dir_path>/<file_name>.
Pokud path
odkazuje na adresář, který by měl být adresářem projektu, uloží se RunConfiguration na <path>/.azureml/<name> nebo <path>/aml_config/<name>.
Tato metoda je užitečná při ruční úpravě konfigurace nebo při sdílení konfigurace s rozhraním příkazového řádku.
save(path=None, name=None, separate_environment_yaml=False)
Parametry
- separate_environment_yaml
- bool
Určuje, jestli se má uložit konfigurace prostředí Conda. Pokud má hodnotu True, konfigurace prostředí Conda se uloží do souboru YAML s názvem environment.yml.
- path
- str
Uživatel vybral kořenový adresář pro konfigurace spuštění. Obvykle je to úložiště Git nebo kořenový adresář projektu Pythonu. Konfigurace se uloží do podadresář s názvem .azureml.
Návratový typ
Výjimky
Atributy
auto_prepare_environment
auto_prepare_environment
Získejte parametr . Toto je zastaralé a nepoužité nastavení.
environment_variables
target
Získejte cílový výpočetní objekt, na kterém je naplánované spuštění úlohy.
Výchozí cíl je "místní" odkazující na místní počítač. Dostupné cílové cloudové výpočetní objekty najdete pomocí funkce compute_targets.
Návraty
Název cíle
Návratový typ
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro