Utiliser la CLI Databricks avec AI Runtime
Aperçu
Les commandes CLI de Databricks pour AI Runtime sont en aperçu public. Un administrateur workspace doit activer l'aperçu de AI Runtime avant que vous puissiez soumettre des charges de travail. Consultez la rubrique Exigences.
La CLI databricks air exécute des workloads GPU à nœud unique et à plusieurs nœuds sur AI Runtime, la plateforme de compute GPU serverless à la demande. Définissez le compute, l’environnement et la commande d’un workload dans un fichier YAML, puis soumettez-le avec databricks air run.
AI Runtime gère le provisionnement des GPU et la configuration de l’environnement, et fournit l’état d’exécution, les logs, les métriques système et le suivi MLflow. Le workflow YAML et CLI fonctionne naturellement avec les agents de codage, qui peuvent définir, soumettre et surveiller des Workloads.
Utilisez la CLI pour :
- Développez et itérez sur des applications Python à partir de votre environnement local.
- Définissez des charges de travail répétables à nœud unique ou à plusieurs nœuds dans des fichiers YAML que vous pouvez contrôler à la source.
- Soumettez et gérez les charges de travail à partir d'un terminal ou d'un flux de travail de développement automatisé.
Typical workloads include LLM affinement and post-training, distributed training, batch inference, Ray applications, and hyperparameter search.
Pour soumettre une charge de travail, suivez le quickstart.
Les commandes de la CLI Databricks pour AI Runtime respectent les mêmes normes de conformité que les charges de travail AI Runtime. Pour consulter les normes et exceptions prises en charge, consultez le profil de sécurité de la conformité.
The databricks air commands and workload configuration differ from the legacy Python-based air CLI in the databricks-air package. See Python CLI migration.
Explorer des exemples exécutables
L’ AI Runtime Cookbook contient des workloads Databricks CLI exécutables pour l’entraînement de modèles, l’affinement, l’inférence par batch, Ray et la recherche d’hyperparamètres. Chaque recette comprend un fichier YAML de workload, le code source et les instructions pour l’exécuter.
Fonctionnement d'une charge de travail
Vous fournissez un fichier YAML de charge de travail, le code de l’application si nécessaire et la commande qui start votre application. Lorsque vous soumettez une charge de travail :
- La définition du workload est validée par rapport au schéma pris en charge et aux contraintes de configuration.
- Si
code_sourceest configuré, le code sélectionné est package sous forme d'instantané et upload. - Le compute GPU et l’environnement demandés sont préparés sur chaque nœud.
- La commande fournie dans le fichier YAML du workload s'exécute sur chaque nœud.
La soumission renvoie un ID d’exécution de job qui identifie le workload. Utilisez-le pour vérifier le statut, inspecter les logs et la configuration, ou annuler le workload. Vous pouvez également consulter la page des exécutions de Jobs et l’Experimentation MLflow pour obtenir des détails sur l’exécution, les métriques système, les logs et les artefacts.
Ce flux de travail fournit un provisionnement GPU géré, une configuration d'environnement reproductible et une observabilité intégrée sans nécessiter de configurer ou de maintenir une infrastructure GPU.
Workload configuration
Un fichier YAML de workload décrit les composants suivants :
- Experimentation : l'expérimentation et l'exécution MLflow qui suivent le workload.
- Environnement : l'environnement géré, les dépendances ou l'image Docker personnalisée à utiliser.
- Compute : le type d’accélérateur et le nombre d’accélérateurs à provisionner.
- Code source : un instantané facultatif du code d'application à mettre à disposition de la charge de travail.
- Command : The shell command that starts your application.
- Runtime settings : Options such as retries, timeouts, environment variables, secrets, and permissions.
Pour les champs de configuration et les exemples, voir la référence Workload YAML.
upload du code d'application
Utilisez code_source pour upload[er] des fichiers d'application avec une charge de travail. AI Runtime rend le répertoire upload disponible sur chaque nœud et définit $CODE_SOURCE_PATH sur son emplacement. Par exemple, la commande suivante exécute train.py à partir du répertoire upload :
command: python "$CODE_SOURCE_PATH/train.py"
Vous pouvez upload l’arborescence de travail actuelle ou sélectionner une Branch ou un commit Git. Pour obtenir un exemple complet, consultez le quickstart.
Develop and manage workloads
Le développement suit généralement ce processus :
- Développez localement le code de l'application et le fichier YAML de la charge de travail.
- Validez le YAML localement avec
databricks air run --file <file> --dry-run. - Soumettez la charge de travail avec
databricks air run --file <file>. Ajoutez--watchpour Stream les logs jusqu'à ce que l'exécution se termine. - Utilisez
databricks air get,databricks air list, etdatabricks air logspour inspecter les charges de travail et les logs. - Arrêtez éventuellement un workload en cours d’exécution avec
databricks air cancel.
Pour toutes les commandes et tous les indicateurs, consultez le groupe de commandesair.
Pour les exécutions planifiées, les workflows multi-tâches ou la promotion entre environnements, vous pouvez utiliser databricks air convert-to-dabs comme point de départ pour un bundle. See Schedule GPU workloads and compose tasks.
Suivre les charges de travail avec MLflow
Chaque charge de travail soumise est représentée par une exécution de Job Databricks et suivie via une Experimentation MLflow :
- Databricks job run : affiche le statut du workload, les tentatives d’exécution et le résultat sur la page des exécutions de Jobs.
- Experimentation MLflow : contient les exécutions MLflow avec les métriques système capturées automatiquement, la configuration du workload et les logs. Votre application peut également utiliser les APIs MLflow pour consigner des parameter personnalisés, des métriques et des artefacts.
Utilisez l’identifiant d’exécution du Job avec des commandes telles que databricks air get, databricks air logs et databricks air cancel. Voir le suivi des Experimentation et l’observabilité.
Exécuter des charges de travail sur un nœud unique et distribuées
AI Runtime exécute la commande configurée une fois sur chaque nœud provisionné. Pour un workload distribué, il fournit des variables de coordination telles que NUM_NODES, NODE_RANK, LOCAL_WORLD_SIZE, MASTER_ADDR et MASTER_PORT.
Ce modèle d’exécution est indépendant du framework. Votre commande doit start et configurer le framework distribué, par exemple en appelant torchrun, un script d’amorçage Ray, ou un autre lanceur de framework. Pour les charges de travail complètes, consultez le manuel AI Runtime.
Utiliser un agent d’IA
La databricks-ai-runtime agent skill fournit des instructions qui aident les agents d'IA, tels que Claude Code, Cursor et Codex, à travailler avec AI Runtime via la CLI Databricks. Utilisez-le pour créer le fichier YAML du workload, soumettre des jobs d'entraînement GPU, vérifier l'état d'exécution, Stream des logs en streaming et annuler des exécutions. Il comprend également des conseils pour les images Docker personnalisées.
After installing the Databricks CLI and configuring authentication, run the following command:
databricks aitools install --skills-only --skills databricks-ai-runtime
Suivez les instructions pour choisir votre agent IA et votre périmètre d'installation. Pour connaître les options d'installation, consultez le groupe de commandesaitools.