Referencia de YAML de carga de trabajo

Important

Esta característica está en versión preliminar pública.

Esta página describe los campos YAML de la carga de trabajo aceptados por databricks air run. Para la sintaxis y banderas de comandos, véase databricks air run. Para enviar una carga de trabajo, consulta el inicio rápido de la CLI de Databricks para AI Runtime.

Cada carga de trabajo requiere experiment_name, compute, y command.

Example

El siguiente ejemplo muestra una configuración de carga de trabajo de ejemplo:

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: Cadena de caracteres

Required. La experiment_name clave es el nombre del experimento MLflow.

Si no existe un experimento con este nombre, el Runtime de IA lo crea. De lo contrario, el Tiempo de Ejecución de IA añade la nueva partida al experimento existente.

calcular

Tipo: Mapa

Required. El compute objeto define la configuración del acelerador.

Key Tipo Description
accelerator_type string Required. Un tipo de acelerador aceptado por la CLI y disponible en el espacio de trabajo. La coincidencia distingue mayúsculas de minúsculas.
num_accelerators integer Required. Un recuento positivo de aceleradores soportado para el tipo seleccionado.
pool_id string El ID para la capacidad provisionada de la GPU.
priority_class string La prioridad de planificación para cargas de trabajo que utilizan la capacidad provisionada de la GPU. Los valores aceptados son BEST_EFFORT, NORMAL y CRITICAL. Se requiere pool_id.

Los tipos y conteos de aceleradores dependen del espacio de trabajo, la nube y la región. Para la selección y disponibilidad de hardware, consulte Opciones de hardware.

comando

Tipo: Cadena de caracteres

Required. La command clave contiene un comando o script de shell no vacío. Las rutas en el comando se refieren a rutas remotas de archivos en el contenedor de carga de trabajo. Cuando code_source está activado, $CODE_SOURCE_PATH contiene el camino absoluto hacia el código extraído.

environment

Tipo: Mapa

El environment objeto selecciona un entorno gestionado con dependencias opcionales o una imagen personalizada del Catálogo de Unity.

Key Tipo Description
version string o integer Una versión numérica del entorno, como 6, o un identificador de entorno IA de Databricks, como databricks_ai_v6. Un databricks_ai_v identificador requiere la versión 5 o superior. Si se omite, la CLI usa el valor predeterminado actual de la IA en tiempo de ejecución.
dependencies Lista de cadenas Las especificaciones del paquete pasaron al entorno serverless. Por defecto, no hay dependencias adicionales.
unity_catalog_image string Una imagen personalizada en el formato <catalog>.<schema>.<image>:<tag>. Mutuamente excluyente con version y dependencies. Para las instrucciones de configuración, consulta Usar imágenes Docker personalizadas con tiempo de ejecución de IA.

Para orientación sobre cómo seleccionar y ampliar un entorno, consulta Configurar tu entorno.

Ejemplo de entorno gestionado
environment:
  version: 6
  dependencies:
    - torch

Para usar una imagen personalizada en lugar de un entorno gestionado, especifica solo unity_catalog_image:

Ejemplo de imagen personalizada
environment:
  unity_catalog_image: main.ml.training:v1

code_source

Tipo: Mapa

El code_source objeto empaqueta código local para la carga de trabajo.

Key Tipo Description
root_path string Obligatorio cuando code_source se establece. El directorio local para empaquetar. El directorio debe existir cuando la CLI realiza la ejecución.
remote_volume string Una ubicación de volumen del Catálogo de Unity para el archivo subido. Debe comenzar con /Volumes/. Por defecto se asigna a una ubicación de espacio de trabajo.
include_paths Lista de cadenas Caminos para incluir relativos a root_path. Las entradas deben ser no vacías y relativas, y no pueden contener ... Omite la clave para incluir todos los archivos seleccionados. Una lista vacía no es válida.
git object Fija la instantánea del código fuente a una rama o commit local de Git.

Si omites git, la CLI empaqueta el árbol de trabajo, incluyendo archivos no confirmados y no rastreados que no están excluidos por las reglas de ignorancia de Git. Un relativo root_path resuelve desde el directorio que contiene el archivo YAML de la carga de trabajo.

Git (sistema de control de versiones)

Tipo: Mapa

El git objeto admite las siguientes claves:

Key Tipo Description
branch string Es obligatorio cuando commit se omite. Empaqueta el HEAD local de la sucursal. Los archivos seleccionados no pueden contener cambios no comprometidos.
commit string Es obligatorio cuando branch se omite. Empaqueta un commit desde el almacén local de objetos Git. Mutuamente excluyente con branch.
Example

Los siguientes ejemplos empaquetan rutas seleccionadas de la rama local main :

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

env_variables

Tipo: Mapa de cadenas

La env_variables clave contiene nombres simples de variables de entorno y valores de cadena. Un nombre también no puede aparecer en secrets.

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

idempotency_token

Tipo: Cadena de caracteres

La idempotency_token clave identifica las presentaciones repetidas. Una presentación repetida con el mismo token devuelve la secuencia existente. La CLI genera un UUID cuando se omite esta clave. La --idempotency-key bandera de mando tiene prioridad.

max_retries

Tipo: Entero

La max_retries clave especifica el número de intentos tras el intento inicial. El valor debe ser no negativo. Valor predeterminado: 3.

mlflow_artifact_location

Tipo: Cadena de caracteres

La mlflow_artifact_location clave contiene un dbfs:/ URI o /Volumes/ camino. Si omites esta clave, un nuevo experimento usa la ubicación predeterminada del DBFS, y un experimento existente usa su ubicación de artefacto configurada. Para un experimento existente, el valor debe coincidir con la ubicación del artefacto del experimento.

mlflow_experiment_directory

Tipo: Cadena de caracteres

La mlflow_experiment_directory clave contiene el directorio del espacio de trabajo del experimento. El camino debe comenzar con /Workspace.

mlflow_run_name

Tipo: Cadena de caracteres

La mlflow_run_name clave contiene el nombre de la carrera. Si omites esta clave, el nombre de la secuencia pasa a ser el valor de experiment_name.

parameters

Tipo: Mapa

La parameters clave contiene valores anidados de forma libre. La CLI serializa los valores junto hyperparameters.yaml con los otros artefactos de lanzamiento.

Example
parameters:
  learning_rate: 0.001
  model:
    hidden_size: 1024

permissions

Tipo: Lista de mapas

La permissions clave contiene las subvenciones solicitadas tras la presentación. Si una subvención fracasa, la ejecución permanece creada y el CLI imprime una advertencia.

Cada subvención apoya las siguientes claves:

Key Tipo Description
level string Required. Un nivel de permiso, como CAN_VIEW o CAN_MANAGE. El espacio de trabajo valida el valor.
user_name string Correo electrónico del usuario. Especifica exactamente uno de user_name, group_name, o service_principal_name para cada subvención.
group_name string Nombre del grupo. Especifica exactamente uno de user_name, group_name, o service_principal_name para cada subvención.
service_principal_name string Nombre de la entidad de seguridad de servicio. Especifica exactamente uno de user_name, group_name, o service_principal_name para cada subvención.
Example
permissions:
  - user_name: trainer@example.com
    level: CAN_MANAGE
  - group_name: training-team
    level: CAN_VIEW

secrets

Tipo: Mapa de cadenas

La secrets clave contiene nombres de variables de entorno asignados a referencias secretas en el formato exacto scope/key . El alcance y la clave deben estar no vacíos. Un nombre también no puede aparecer en env_variables.

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

Para información sobre cómo crear y gestionar secretos, véase Gestión de secretos.

timeout_minutes

Tipo: Entero

La timeout_minutes tecla establece el límite del reloj de pared para toda la carrera, incluyendo los intentos. El valor debe ser positivo. Si se omite, la carga de trabajo utiliza el valor predeterminado de tiempo de ejecución de IA.

usage_policy_id

Tipo: Cadena de caracteres

La usage_policy_id clave contiene el UUID canónico de una política de uso serverless existente. Mutuamente excluyente con usage_policy_name.

usage_policy_name

Tipo: Cadena de caracteres

La usage_policy_name clave contiene el nombre de una política de uso serverless existente. Mutuamente excluyente con usage_policy_id.

Para información sobre cómo crear políticas de uso, véase Uso de atributos con políticas de uso sin servidor.

Recursos adicionales