Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Usa questo riferimento per personalizzare un ai_runtime_taskDichiarative Automation Bundles. Per esempi eseguibili che pianificano un carico di lavoro GPU e aggiungono compiti di pre-elaborazione, inizia con Schedule i carichi di lavoro GPU e compiti di composizione.
Per i campi di attività e le loro definizioni, consulta il riferimento al task di esecuzione AI. Imposta tentativi di attività, timeout, permessi e environment_key sul compito o lavoro circostante.
Invia il tuo codice di formazione
Il bundle sincronizza i file come command.sh quelli durante il deployment. Un carico di lavoro solo a comandi può indicare command_path e ${workspace.file_path}/command.sh omettere code_source_path.
Per una directory separata di codice di addestramento, imposta code_source_path su un artefatto confezionato o su un percorso di workspace o volume.
Confeziona una directory locale
Dichiara un tgz artefatto su cui confezionare il tuo codice databricks bundle deploy. Questo frammento di configurazione impacchetterebbe src/ e indirizza il compito all'archivio risultante:
artifacts:
code:
type: tgz
path: .
include: [src]
files:
- source: ./dist/code.tgz
resources:
jobs:
train:
tasks:
- task_key: train
ai_runtime_task:
code_source_path: ./dist/code.tgz
L'esecuzione estrae l'archivio e lo imposta CODE_SOURCE_PATH nella sua directory di codice di primo livello. Con path: . e include: [src], l'archivio contiene src/train.py e CODE_SOURCE_PATH è /databricks/code_source/src. Dopo aver cambiato in quella directory, esegui python train.py:
#!/usr/bin/env bash
set -euo pipefail
cd "$CODE_SOURCE_PATH"
python train.py
Per le impostazioni degli artefatti, inclusi path, include, git, e files, si veda il riferimento agli artefatti del bundle.
Usa il codice caricato
Imposta code_source_path su un /Workspace/… percorso o /Volumes/… per un archivio di codice già caricato. Il bundle utilizza quel percorso senza impacchettare la tua directory locale.
Configurare calcolo e ambienti
Impostato accelerator_count su un multiplo delle GPU per nodo codificato in accelerator_type. Ad esempio, GPU_8xH100 con accelerator_count: 16 esecuzioni su due nodi.
Vedi Opzioni hardware per la guida hardware.
Per un carico di lavoro multi-nodo, AI Runtime esegue il comando su ogni nodo. L'ambiente del task include NUM_NODES, WORLD_SIZE, LOCAL_WORLD_SIZE, MASTER_ADDR, e MASTER_PORT. Leggi queste variabili nel tuo comando di addestramento distribuito.
Dichiara le dipendenze nel blocco del environments lavoro e seleziona l'ambiente con il environment_keyblocco . Il seguente frammento di configurazione installa PyTorch nell'ambiente di addestramento:
resources:
jobs:
train:
tasks:
- task_key: train
environment_key: training
environments:
- environment_key: training
spec:
environment_version: '6'
dependencies:
- torch
Da usare environment_version per un ambiente standard. Per utilizzare un ambiente di IA Databricks, imposta base_environment invece, ad esempio workspace-base-environments/databricks_ai_v6. Vedi Configurare l'ambiente.
Per un'immagine Docker personalizzata, imposta docker_image_url su ai_runtime_task e segue Usa immagini Docker personalizzate con la CLI legacy di Python.
Trasmettere configurazione e dati ai task
Definisci una voce a livello environment_variables di lavoro e selezionala insieme ai environment_variables_keydati . Inserisci valori variables semplici e usali {{secrets/scope/key}} come riferimento segreto. Questa configurazione richiede l'anteprima delle variabili ambientali descritta in Configura le variabili dell'ambiente per i lavori serverless.
Per far passare i parametri attraverso HYPERPARAMETERS_PATH, salva un hyperparameters.yaml file accanto allo script citato da command_path. Il bundle sincronizza entrambi i file e il runtime si imposta HYPERPARAMETERS_PATH nel file dei parametri per il comando di allenamento. Per la conversione da un carico di lavoro esistente YAML, vedi Converti un carico di lavoro AI Runtime in un bundle.
Note
An ai_runtime_task non supporta i valori dei compiti del lavoro (dbutils.jobs.taskValues{{tasks.<task_key>.values.<name>}}o ). Per passare dati tra i compiti, scrivili in una posizione condivisa, come un volume Unity Catalog, e usa lo stesso percorso in entrambi i compiti.