Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Převeďte existující AI Runtime workload YAML do Declarative Automation Bundles, aby se spravoval jako perzistentní úloha, přidejte plán a zkombinujte jej s úlohami předzpracování. Použijte databricks air convert-to-dabs k vygenerování bundle, nebo použijte mapování polí na této stránce pro ruční převod.
Requirements
- Existující workload YAML a jeho tréninkový kód.
- Nejnovější Databricks CLI. Aktualizujte existující instalaci před konverzí.
- Pro nasazení a spuštění generované úlohy je potřeba pracovní prostor, který splňuje požadavky AI Runtime, a CLI k němu musí být autentizováno. Podívejte se na Plánování úloh GPU a vytváření úloh.
Automaticky převést pracovní zatížení
Pokud už spouštíte workload s databricks air run --file train.yaml, převeďte jeho workload YAML pomocí databricks air convert-to-dabs.
Začněte s vaším existujícím workloadem v YAML a kódu. Například může
train.yamlukazovat na tréninkový skript vsrc/:experiment_name: my-training environment: dependencies: - torch compute: num_accelerators: 1 accelerator_type: GPU_1xA10 code_source: root_path: src command: python $CODE_SOURCE_PATH/train.pyZ adresáře obsahujícího
train.yaml, proveďte konverzi:databricks air convert-to-dabs train.yamlPříkaz vytvoří adresáře
databricks.ymlagenerated_artifacts/vedle YAML. Konfiguraci překládá lokálně. Balíček nahraje kód, když ho nasadíte. Pro další rozvržení adresářů a možnosti přepsání viz Cesty převodníků a generované soubory.Ověřte, nasaďte a spusťte generovanou úlohu:
databricks bundle validate databricks bundle deploy databricks bundle run my-training --no-wait
Převodník vytvoří úkol s jedním úkolem GPU. Pro přidání plánu a úloh předzpracování do databricks.yml, postupujte podle Plánování úloh GPU a vytváření úloh. Nasazená úloha přetrvává mezi jednotlivými běhy. Použij databricks bundle destroy, až skončíš, a odeber ho.
Cesty ke konvertorům a generované soubory
databricks air convert-to-dabs train.yaml ve výchozím nastavení zapisuje bundle do adresáře vstupního souboru YAML. Vyřeší relativní code_source.root_path vzhledem k adresáři souboru YAML.
Pro zdrojový kód musí být adresář zdroje po vyhodnocení striktně uvnitř výstupního adresáře balíčku. S výchozím výstupním umístěním se root_path: . přeloží na kořen balíčku a je odmítnuto. Buď použijte zdrojový podadresář, například src, nebo vyberte výstupní adresář, který obsahuje zdrojový adresář.
Například pokud /project/training/train.yaml používá root_path: ., následující příkaz zapisuje bundle do /project a balí /project/training:
databricks air convert-to-dabs /project/training/train.yaml --output-dir /project
--output-dir mění místo, kde se bundle zapisuje. Nekopíruje ani nepřesouvá zdrojový kód. Následující databricks bundle příkazy spusťte z adresáře výstupů.
Pokud už generované soubory existují, konverze se zastaví. Použijte --force k jejich přepsání. Toto nahradí vygenerovanou konfiguraci balíčku, včetně jakýchkoli ručních úprav tohoto souboru.
Převodník zapisuje následující soubory:
-
databricks.yml: konfiguraci balíčku, včetně úlohy GPU a kódového artefaktu. -
generated_artifacts/command.sh: příkazový skript. -
generated_artifacts/training_config.yaml: konfigurace pracovní zátěže. -
generated_artifacts/hyperparameters.yaml: zapsáno, kdyžparametersje nastaveno. -
generated_artifacts/env_vars.jsonagenerated_artifacts/secret_env_vars.json: zapisuje se, když jsou nastaveny proměnné prostředí nebo tajné klíče.
Udržujte vygenerované soubory pohromadě. Balíček je nahrává během nasazení. Když je hyperparameters.yaml přítomen vedle command.sh, runtime nastaví HYPERPARAMETERS_PATH na tento soubor.
Přiřaďte pole pracovní zátěže ručně
Při ručním převodu z AI Runtime workload YAML do balíčku použijte následující mapování. Pro automatický převod postupujte podle článku Automatický převod úlohy. Definice polí úloh naleznete v referenci k úloze AI Runtime.
| Pole YAML workloadu | Nastavení balíčku |
|---|---|
experiment_name |
ai_runtime_task.experiment |
command |
Přesuňte příkaz do shell skriptu a odkazujte na něj pomocí ai_runtime_task.deployments[].command_path. |
compute.accelerator_type |
ai_runtime_task.deployments[].compute.accelerator_type |
compute.num_accelerators |
ai_runtime_task.deployments[].compute.accelerator_count |
code_source |
Zabalte kód s artefaktem tgz a odkazujte na něj pomocí ai_runtime_task.code_source_path, nebo použijte nahraný pracovní prostor či cestu k svazku. |
environment.dependencies |
Práce je environments[].spec.dependencies. |
environment.version |
environments[].spec.environment_version pro standardní prostředí nebo environments[].spec.base_environment pro AI-prostředí Databricks. |
environment.docker_image.url |
ai_runtime_task.docker_image_url |
env_variables, secrets |
Úloha má environment_variables a úkol má environment_variables_key. |
parameters |
Soubor hyperparameters.yaml vedle skriptu, na který odkazuje command_path. Runtime nastaví HYPERPARAMETERS_PATH na tento soubor. |
max_retries |
Úkolu max_retries. |
timeout_minutes |
Úkolem je timeout_seconds, tedy vynásobit minuty 60. |
mlflow_run_name |
ai_runtime_task.mlflow_run |
mlflow_experiment_directory |
ai_runtime_task.mlflow_experiment_directory |
mlflow_artifact_location |
ai_runtime_task.mlflow_artifact_location |