Referência YAML de Carga de Trabalho

Importante

Este recurso está no Public Preview.

Esta página descreve os campos YAML da carga de trabalho aceites por databricks air run. Para sintaxe de comandos e flags, veja databricks air run. Para submeter uma carga de trabalho, consulte o quickstart da CLI do Databricks para AI Runtime.

Cada carga de trabalho requer experiment_name, compute, e command.

Example

O exemplo seguinte mostra uma configuração de carga de trabalho exemplar:

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: Cadeia

Required. A experiment_name chave é o nome do experimento MLflow.

Se não existir um experimento com este nome, o AI Runtime cria-o. Caso contrário, o AI Runtime adiciona a nova corrida ao experimento existente.

Calcular

Tipo: Mapa

Required. O compute objeto define a configuração do acelerador.

Key Tipo Description
accelerator_type cadeia (de caracteres) Required. Um tipo de acelerador aceite pelo CLI e disponível no espaço de trabalho. A correspondência é sensível a maiúsculas e minúsculas.
num_accelerators número inteiro Required. Uma contagem positiva de aceleradores suportada para o tipo de acelerador selecionado.
pool_id cadeia (de caracteres) O ID para capacidade da GPU provisionada.
priority_class cadeia (de caracteres) A prioridade de agendamento para cargas de trabalho que utilizam capacidade de GPU provisionada. Os valores aceites são BEST_EFFORT, NORMAL, e CRITICAL. Requer pool_id.

Os tipos e contagens de aceleradores dependem do espaço de trabalho, da cloud e da região. Para seleção e disponibilidade de hardware, consulte Opções de hardware.

command

Tipo: Cadeia

Required. A command chave contém um comando ou script shell não vazio. Os caminhos no comando referem-se a caminhos de ficheiros remotos no contentor da carga de trabalho. Quando code_source está definido, $CODE_SOURCE_PATH contém o caminho absoluto para o código extraído.

ambiente

Tipo: Mapa

O environment objeto seleciona um ambiente gerido com dependências opcionais ou uma imagem personalizada do Catálogo Unity.

Key Tipo Description
version Cadeia ou inteiro Uma versão numérica do ambiente, como 6, ou um identificador de ambiente IA Databricks, como databricks_ai_v6. Um databricks_ai_v identificador requer a versão 5 ou superior. Se for omitido, a CLI usa o atual padrão de tempo de execução da IA.
dependencies Lista de cadeias de caracteres As especificações dos pacotes passaram para o ambiente serverless. Por defeito, não há dependências adicionais.
unity_catalog_image cadeia (de caracteres) Uma imagem personalizada no formato <catalog>.<schema>.<image>:<tag>. É mutuamente exclusivo com version e dependencies. Para instruções de configuração, consulte Usar imagens Docker personalizadas com AI Runtime.

Para orientações sobre como selecionar e expandir um ambiente, consulte Configurar o seu ambiente.

Exemplo de ambiente gerido
environment:
  version: 6
  dependencies:
    - torch

Para usar uma imagem personalizada em vez de um ambiente gerido, especifique apenas unity_catalog_image:

Exemplo de imagem personalizada
environment:
  unity_catalog_image: main.ml.training:v1

code_source

Tipo: Mapa

O code_source objeto empacota código local para a carga de trabalho.

Key Tipo Description
root_path cadeia (de caracteres) É obrigatório quando code_source está definido. O diretório local a pagar. O diretório deve existir quando a CLI faz a execução.
remote_volume cadeia (de caracteres) Uma localização de volume do Unity Catalog para o arquivo carregado. Deve começar com /Volumes/. Por defeito, a localização do espaço de trabalho.
include_paths Lista de cadeias de caracteres Caminhos a incluir relativamente a root_path. As entradas devem ser não vazias e relativas, e não podem conter ... Omita a chave para incluir todos os ficheiros selecionados. Uma lista vazia não é válida.
git objecto Fixa o snapshot de código-fonte a um branch ou commit Git local.

Se omitires git, a CLI empacota a árvore de trabalho, incluindo ficheiros não comprometidos e não rastreados que não são excluídos pelas regras de ignorar do Git. Um relativo root_path resolve a partir do diretório que contém o ficheiro YAML da carga de trabalho.

Git

Tipo: Mapa

O git objeto suporta as seguintes teclas:

Key Tipo Description
branch cadeia (de caracteres) É obrigatório quando commit é omitido. Empacota o HEAD local da filial. Ficheiros selecionados não podem conter alterações não comprometidas.
commit cadeia (de caracteres) É obrigatório quando branch é omitido. Empacota um commit a partir do armazenamento local de objetos Git. Mutuamente exclusivo com branch.
Example

Os seguintes exemplos de pacotes selecionaram caminhos do ramo local main :

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

env_variables

Tipo: Mapa das cordas

A env_variables chave contém nomes simples de variáveis de ambiente e valores de cadeia. Um nome também não pode aparecer em secrets.

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

idempotency_token

Tipo: Cadeia

A idempotency_token chave identifica submissões repetidas. Uma submissão repetida com o mesmo token devolve a sequência existente. A CLI gera um UUID quando esta chave é omitida. A --idempotency-key bandeira de comando tem prioridade.

max_retries

Tipo: Integer

A max_retries chave especifica o número de tentativas após a tentativa inicial. O valor deve ser não negativo. Padrão: 3.

mlflow_artifact_location

Tipo: Cadeia

A mlflow_artifact_location chave contém um dbfs:/ URI ou /Volumes/ caminho. Se omitires esta chave, um novo experimento usa a localização padrão do DBFS, e um experimento existente usa a localização do artefacto configurado. Para um experimento existente, o valor deve corresponder à localização do artefacto do experimento.

mlflow_experiment_directory

Tipo: Cadeia

A mlflow_experiment_directory chave contém o diretório de espaço de trabalho do experimento. O caminho deve começar com /Workspace.

mlflow_run_name

Tipo: Cadeia

A mlflow_run_name chave contém o nome da corrida. Se omitir esta chave, o nome da sequência passa por defeito ao valor de experiment_name.

parameters

Tipo: Mapa

A parameters chave contém valores aninhados de forma livre. A CLI serializa os valores com hyperparameters.yaml os outros artefactos de lançamento.

Example
parameters:
  learning_rate: 0.001
  model:
    hidden_size: 1024

permissões

Tipo: Lista de mapas

A permissions chave contém subsídios aplicados após a submissão. Se uma subvenção falhar, a corrida mantém-se criada e o CLI imprime um aviso.

Cada bolsa suporta as seguintes chaves:

Key Tipo Description
level cadeia (de caracteres) Required. Um nível de permissão, como CAN_VIEW ou CAN_MANAGE. O espaço de trabalho valida o valor.
user_name cadeia (de caracteres) O e-mail do usuário. Especifique exatamente um de user_name, group_name, ou service_principal_name para cada subsídio.
group_name cadeia (de caracteres) O nome do grupo. Especifique exatamente um de user_name, group_name, ou service_principal_name para cada subsídio.
service_principal_name cadeia (de caracteres) O nome da entidade de serviço. Especifique exatamente um de user_name, group_name, ou service_principal_name para cada subsídio.
Example
permissions:
  - user_name: trainer@example.com
    level: CAN_MANAGE
  - group_name: training-team
    level: CAN_VIEW

secrets

Tipo: Mapa das cordas

A secrets chave contém nomes de variáveis de ambiente mapeados para referências secretas no formato exato scope/key . O âmbito e a chave devem ser não vazios. Um nome também não pode aparecer em env_variables.

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

Para informações sobre como criar e gerir segredos, consulte Gestão de segredos.

timeout_minutes

Tipo: Integer

A timeout_minutes chave define o limite do relógio de parede para toda a corrida, incluindo tentativas. O valor deve ser positivo. Se for omitido, a carga de trabalho usa o padrão de execução da IA.

usage_policy_id

Tipo: Cadeia

A usage_policy_id chave contém o UUID canónico de uma política de uso serverless existente. Mutuamente exclusivo com usage_policy_name.

usage_policy_name

Tipo: Cadeia

A usage_policy_name chave contém o nome de uma política de utilização serverless existente. Mutuamente exclusivo com usage_policy_id.

Para informações sobre a criação de políticas de uso, consulte Utilização de atributos com políticas de uso serverless.

Recursos adicionais