Riferimento YAML del carico di lavoro

Questa pagina descrive i campi YAML del carico di lavoro accettati da databricks air run. Per la sintassi dei comandi e le bandiere, vedi databricks air run. Per inviare un carico di lavoro, consulta AI Runtime quickstart.

Ogni carico di lavoro richiede experiment_name, compute, e command.

Example

Il seguente esempio mostra una configurazione di esempio del carico di lavoro:

experiment_name: my-training
compute:
  accelerator_type: GPU_1xA10
  num_accelerators: 1
environment:
  version: 6
  dependencies:
    - torch
code_source:
  root_path: .
command: python $CODE_SOURCE_PATH/train.py

experiment_name

Tipo: Stringa

Required. La experiment_name chiave è il nome dell'esperimento MLflow.

Se un esperimento con questo nome non esiste, il runtime AI lo crea. Altrimenti, AI Runtime aggiunge la nuova run all'esperimento esistente.

compute

Tipo: Mappa

Required. L'oggetto compute definisce la configurazione dell'acceleratore.

Key Type Description
accelerator_type string Required. Un tipo di acceleratore accettato dalla CLI e disponibile nello spazio di lavoro. La corrispondenza fa distinzione tra maiuscole e minuscole.
num_accelerators integer Required. Un conteggio positivo degli acceleratori supportato per il tipo di acceleratore selezionato.
pool_id string L'ID per la capacità GPU provisionata.
priority_class string La priorità di pianificazione per i carichi di lavoro che utilizzano la capacità GPU provisionata. I valori accettati sono BEST_EFFORT, NORMAL e CRITICAL. Richiede pool_id.

I tipi e i conteggi degli acceleratori dipendono dallo spazio di lavoro, dal cloud e dalla regione. Per la selezione e disponibilità dell'hardware, vedi Hardware.

command

Tipo: Stringa

Required. La command chiave contiene un comando o uno script shell non vuoto. I percorsi nel comando si riferiscono ai percorsi file remoti nel contenitore del carico di lavoro. Quando code_source è impostato, $CODE_SOURCE_PATH contiene il percorso assoluto verso il codice estratto.

environment

Tipo: Mappa

L'oggetto environment seleziona un ambiente gestito con dipendenze opzionali opzionali o un'immagine personalizzata del Catalogo Unity.

Key Type Description
version stringa o integer Una versione numerica dell'ambiente, come 6, o un identificatore di ambiente Databricks AI, come databricks_ai_v6. Un databricks_ai_v identificatore richiede la versione 5 o superiore. Se omessa, la CLI utilizza l'attuale impostazione predefinita del runtime IA.
dependencies Elenco di stringhe Le specifiche del pacchetto sono passate all'ambiente serverless. Non viene impostato di default nessuna dipendenza aggiuntiva.
unity_catalog_image string Un'immagine personalizzata nel formato <catalog>.<schema>.<image>:<tag>. Si escludono a vicenda con version e dependencies. Per le istruzioni di configurazione, vedi Usa immagini Docker personalizzate con AI Runtime.

Per indicazioni su come selezionare ed estendere un ambiente, vedi Configura il tuo ambiente.

Esempio di ambiente gestito
environment:
  version: 6
  dependencies:
    - torch

Per utilizzare un'immagine personalizzata invece di un ambiente gestito, specifica solo unity_catalog_image:

Esempio di immagine personalizzata
environment:
  unity_catalog_image: main.ml.training:v1

code_source

Tipo: Mappa

L'oggetto code_source impacchetta codice locale per il carico di lavoro.

Key Type Description
root_path string Obbligatorio quando code_source è impostato. La directory locale da confezionare. La directory deve esistere quando la CLI effettua l'esecuzione.
remote_volume string Una posizione del volume del Catalogo Unity per l'archivio caricato. Deve iniziare con /Volumes/. Di default è una posizione di spazio di lavoro.
include_paths Elenco di stringhe Sentieri da includere rispetto a root_path. Le voci devono essere non vuote e relative, e non possono contenere ... Ometti la chiave per includere tutti i file selezionati. Una lista vuota non è valida.
git object Fissa lo snapshot sorgente del codice a un branch o commit Git locale.

Se ometti git, la CLI impacchettisce l'albero di lavoro, includendo file non commessi e non tracciati che non sono esclusi dalle regole di ignoranza di Git. Un relativo root_path risolve dalla directory che contiene il file YAML del carico di lavoro.

Git

Tipo: Mappa

L'oggetto git supporta le chiavi seguenti:

Key Type Description
branch string Richiesto quando commit viene omesso. Impacchettisce il HEAD locale della filiale. I file selezionati non possono contenere modifiche non confermate.
commit string Richiesto quando branch viene omesso. Impacchettisce un commit dallo store oggetti Git locale. Si escludono con branch a vicenda.
Example

I seguenti esempi di pacchetti hanno selezionato percorsi dal ramo locale main :

code_source:
  root_path: ./src
  include_paths:
    - training
    - configs
  git:
    branch: main

env_variables

Tipo: Mappa delle stringhe

La env_variables chiave contiene nomi semplici delle variabili ambientali e valori delle stringhe. Un nome non può comparire anche in secrets.

Example
env_variables:
  BATCH_SIZE: '32'
  LEARNING_RATE: '0.001'

idempotency_token

Tipo: Stringa

La idempotency_token chiave identifica le ripetute presentazioni. Una sottomissione ripetuta con lo stesso gettone restituisce la sequenza esistente. La CLI genera un UUID quando questa chiave viene omessa. La --idempotency-key bandiera di comando ha la precedenza.

max_retries

Tipo: Intero

La max_retries chiave specifica il numero di tentativi dopo il primo tentativo. Il valore deve essere non negativo. Impostazione predefinita: 3.

mlflow_artifact_location

Tipo: Stringa

La mlflow_artifact_location chiave contiene un dbfs:/ URI o /Volumes/ un percorso. Se ometti questa chiave, un nuovo esperimento utilizza la posizione DBFS predefinita, e un esperimento esistente utilizza la posizione dell'artefatto configurato. Per un esperimento esistente, il valore deve corrispondere alla posizione dell'artefatto dell'esperimento.

mlflow_experiment_directory

Tipo: Stringa

La mlflow_experiment_directory chiave contiene la directory dello spazio di lavoro per l'esperimento. Il percorso deve iniziare con /Workspace.

mlflow_run_name

Tipo: Stringa

La mlflow_run_name chiave contiene il nome della corsa. Se ometti questa chiave, il nome della run si riporta di default al valore di experiment_name.

parameters

Tipo: Mappa

La parameters chiave contiene valori annidati liberi. La CLI serializza i valori con hyperparameters.yaml gli altri artefatti di lancio.

Example
parameters:
  learning_rate: 0.001
  model:
    hidden_size: 1024

permissions

Tipo: Elenco delle mappe

La permissions chiave contiene i finanziamenti applicati dopo la presentazione. Se un finanziamento fallisce, la run rimane creata e il CLI stampa un avviso.

Ogni sovvenzione supporta le seguenti chiavi:

Key Type Description
level string Required. Un livello di permesso, come CAN_VIEW o CAN_MANAGE. Lo spazio di lavoro convalida il valore.
user_name string Indirizzo di posta elettronica dell'utente. Specifica esattamente uno di user_name, group_name, o service_principal_name per ogni finanziamento.
group_name string Nome del gruppo. Specifica esattamente uno di user_name, group_name, o service_principal_name per ogni finanziamento.
service_principal_name string Nome dell'entità servizio. Specifica esattamente uno di user_name, group_name, o service_principal_name per ogni finanziamento.
Example
permissions:
  - user_name: trainer@example.com
    level: CAN_MANAGE
  - group_name: training-team
    level: CAN_VIEW

secrets

Tipo: Mappa delle stringhe

La secrets chiave contiene i nomi delle variabili dell'ambiente mappati a riferimenti segreti nel formato esatto scope/key . L'ambito e la chiave devono essere non vuoti. Un nome non può comparire anche in env_variables.

Example
secrets:
  HF_TOKEN: my-scope/hf-token

Per informazioni sulla creazione e gestione dei segreti, vedi Gestione dei segreti.

timeout_minutes

Tipo: Intero

La timeout_minutes chiave stabilisce il limite dell'orologio a parete per l'intera corsa, compresi i tentativi di ritentazione. Il valore deve essere positivo. Se omesso, il carico di lavoro utilizza il default di esecuzione AI.

usage_policy_id

Tipo: Stringa

La usage_policy_id chiave contiene l'UUID canonico di una politica di utilizzo serverless esistente. Si escludono con usage_policy_name a vicenda.

usage_policy_name

Tipo: Stringa

La usage_policy_name chiave contiene il nome di una politica di utilizzo serverless esistente. Si escludono con usage_policy_id a vicenda.

Per informazioni sulla creazione di politiche di utilizzo, vedi Utilizzo degli attributi con politiche di utilizzo serverless.

Risorse aggiuntive