Referência de Carga de Trabalho YAML
Visualização
Este recurso está em Pré-visualização Pública.
Esta página descreve os campos YAML de carga de trabalho aceitos por databricks air run. Para ver a sintaxe de comandos e sinalizadores, consulte databricks air execução. Para enviar uma carga de trabalho, consulte Início rápido da CLI do Databricks para AI Runtime.
Cada carga de trabalho requer experiment_name, compute e command.
Exemplo
O exemplo a seguir mostra uma configuração de carga de trabalho de exemplo:
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: string
Obrigatório. A key experiment_name é o nome da experiência do MLflow.
compute
Type: Map
Obrigatório. O objeto compute define a configuração do acelerador.
Chave | Tipo | Descrição |
|---|---|---|
| string | Obrigatório. Um tipo de acelerador aceito pela CLI e disponível no workspace. A correspondência diferencia maiúsculas de minúsculas. |
| inteiro | Obrigatório. Uma contagem de aceleradores positiva com suporte para o tipo de acelerador selecionado. |
| string | O ID para a capacidade de GPU provisionada. |
| string | A prioridade de agendamento para cargas de trabalho que usam capacidade de GPU provisionada. Os valores aceitos são |
Os tipos e as contagens de aceleradores dependem do workspace, da cloud e da região. Para seleção e disponibilidade de hardware, consulte Opções de hardware.
comando
Tipo: string
Obrigatório. A key command contém um comando ou script de shell não vazio. Os caminhos no comando referem-se a caminhos de arquivo remotos no contêiner da carga de trabalho. Quando code_source é definido, $CODE_SOURCE_PATH contém o caminho absoluto para o código extraído.
environment
Type: Map
O objeto environment seleciona um ambiente gerenciado com dependências opcionais ou uma imagem personalizada do Unity Catalog.
Chave | Tipo | Descrição |
|---|---|---|
| string ou integer | Uma versão do ambiente numérica, como |
| lista de strings | Especificações de pacote passadas para o ambiente serverless. O valor default é nenhuma dependência adicional. |
| string | Uma imagem personalizada no formato |
Para obter orientações sobre como selecionar e estender um ambiente, consulte Configurar seu ambiente.
Exemplo de ambiente gerenciado
environment:
version: 6
dependencies:
- torch
Para usar uma imagem personalizada em vez de um ambiente gerenciado, especifique apenas unity_catalog_image:
Exemplo de imagem personalizada
environment:
unity_catalog_image: main.ml.training:v1
code_source
Type: Map
O objeto code_source empacota o código local para a carga de trabalho.
Chave | Tipo | Descrição |
|---|---|---|
| string | Obrigatório quando |
| string | Um local de volume do Unity Catalog para o arquivo compactado feito upload. Deve começar com |
| lista de strings | Caminhos para incluir em relação a |
| objeto | pin o Snapshot da origem do código a uma branch ou a um commit local do Git. |
Se você omitir git, a CLI pacote a árvore de trabalho, incluindo arquivos não confirmados e não rastreados que não são excluídos pelas regras de ignore do Git. Um root_path relativo é resolvido a partir do diretório que contém o arquivo YAML da carga de trabalho.
git
Type: Map
O objeto git dá suporte às seguintes keys:
Chave | Tipo | Descrição |
|---|---|---|
| string | Obrigatório quando |
| string | Obrigatório quando |
Exemplo
O exemplo a seguir faz um pacote de caminhos selecionados do Branch main local:
code_source:
root_path: ./src
include_paths:
- training
- configs
git:
branch: main
env_variables
Tipo: mapa de strings
A key env_variables contém nomes de variáveis de ambiente simples e valores de strings. Um nome também não pode aparecer em secrets.
Exemplo
env_variables:
BATCH_SIZE: '32'
LEARNING_RATE: '0.001'
idempotency_token
Tipo: string
A key idempotency_token identifica envios repetidos. Um envio repetido com o mesmo token retorna a execução existente. A CLI gera um UUID quando essa key é omitida. O flag de comando --idempotency-key tem precedência.
max_retries
Tipo: Integer
A key max_retries especifica o número de novas tentativas após a tentativa inicial. O valor deve ser não negativo. default: 3.
mlflow_artifact_location
Tipo: string
A key mlflow_artifact_location contém um URI dbfs:/ ou um caminho /Volumes/.
mlflow_experiment_directory
Tipo: string
A key mlflow_experiment_directory contém o diretório do workspace para o experimento. O caminho deve começar com /Workspace.
mlflow_run_name
Tipo: string
A key mlflow_run_name contém o nome da execução.
parâmetros
Type: Map
A key parameters contém valores aninhados de formato livre. A CLI serializa os valores para hyperparameters.yaml com os outros artefatos de inicialização.
Exemplo
parameters:
learning_rate: 0.001
model:
hidden_size: 1024
permissões
Tipo: Lista de mapas
A key permissions contém concessões aplicadas após o envio. Se uma concessão falhar, a execução permanece criada e a CLI exibe um aviso.
Cada concessão dá suporte às seguintes key:
Chave | Tipo | Descrição |
|---|---|---|
| string | Obrigatório. Um nível de permissão, como |
| string | O email do usuário. Especifique exatamente um de |
| string | O nome do grupo. Especifique exatamente um de |
| string | O nome do service principal. Especifique exatamente um de |
Exemplo
permissions:
- user_name: trainer@example.com
level: CAN_MANAGE
- group_name: training-team
level: CAN_VIEW
segredos
Tipo: mapa de strings
A key secrets contém nomes de variável de ambiente mapeados para referências de segredo exatamente no formato scope/key. O escopo e a key devem não estar vazios. Um nome também não pode aparecer em env_variables.
Exemplo
secrets:
HF_TOKEN: my-scope/hf-token
Para obter informações sobre como criar e gerenciar segredos, consulte Secret management.
timeout_minutes
Tipo: Integer
A key timeout_minutes define o limite de tempo real para a execução completa, incluindo novas tentativas. O valor deve ser positivo. Quando omitido, a carga de trabalho usa o default do AI Runtime.
usage_policy_id
Tipo: string
A key usage_policy_id contém o UUID canônico de uma política de uso Serverless existente. Mutuamente exclusivo com usage_policy_name.
usage_policy_name
Tipo: string
A key usage_policy_name contém o nome de uma política de uso Serverless existente. Mutuamente exclusivo com usage_policy_id.
Para obter informações sobre como criar políticas de uso, consulte Atribuir uso com políticas de uso serverless.