Guides utilisateur pour AI Runtime
Aperçu
Cette fonctionnalité est en Aperçu public.
Migrez les charges de travail de deep learning existantes des clusters Databricks classiques vers AI Runtime, suivez l'utilisation et les coûts des GPU avec la table système d'utilisation facturable, et trouvez des exemples de notebooks ainsi que des correctifs pour les erreurs courantes.
Migration des charges de travail GPU classiques vers le mode serverless
Si vous déplacez un workload de deep learning existant d'un cluster Databricks classique (avec Databricks Runtime ML) vers le serverless (avec AI Runtime), suivez ces étapes :
- Remplacer le code dépendant du cluster. Supprimez toute référence à l'entraînement distribué basé sur Spark (par exemple,
TorchDistributor) et remplacez-les par le décorateur@distributedprovenant deserverless_gpu. - Mettez à jour le chargement des données. Remplacez les chemins d’accès DBFS directs par des chemins d’accès aux volumes Unity Catalog (
/Volumes/...). Remplacez les opérations locales sur les DataFrame Spark par Spark Connect. Pour le streaming de données basées sur des fichiers à partir de volumes, utilisezUCVolumeDatasetdepuisserverless_gpu.data. Voir Charger des données sur AI Runtime. - Réinstallez les dépendances. Ne vous reposez pas sur les bibliothèques préinstallées de Databricks Runtime ML. Ajoutez des commandes
%pip installexplicites pour tous les packages requis. - Mettre à jour les chemins des points de contrôle. Déplacez les points de contrôle depuis DBFS ou le stockage local vers des volumes Unity Catalog (
/Volumes/<catalog>/<schema>/<volume>/...). Pour le checkpointing distribué, utilisezUCVolumeWriteretUCVolumeReaderdepuisserverless_gpu.data, qui mettent en staging les E/S via NVMe local. Voir Model checkpointing. - Mettre à jour la configuration MLflow. Assurez-vous que les noms des expérimentations utilisent des chemins absolus et configurez les noms des exécutions afin qu'ils puissent être facilement redémarrés.
- Testez d’abord de manière interactive. Validez votre charge de travail dans un notebook interactif avant de la planifier en tant que job.
Suivre l'utilisation et les coûts
Vous pouvez surveiller vos dépenses GPU AI Runtime en interrogeant la table système d'utilisation facturable (system.billing.usage). La query suivante renvoie l'utilisation totale pour les workloads GPU serverless :
SELECT
SUM(usage_quantity)
FROM
system.billing.usage
WHERE
product_features.serverless_gpu IS NOT NULL
Pour plus d'informations sur le schéma de la table d'utilisation facturable, consultez la référence de la table système d'utilisation facturable.
Les frais de Runtime IA par heure de GPU sur le SKU d'entraînement de modèle sont aux tarifs suivants :
- H100 à la demande : 7,00 $/heure GPU (US East)
- A10 à la demande : 2,50 $/heure par GPU (États-Unis Est)
Exemples de notebooks
Les catégories de Notebooks d’exemple suivantes sont disponibles pour vous aider à start :
Catégorie | Description |
|---|---|
Affinement de grands modèles de langage, y compris les méthodes efficaces en termes de paramètres (LoRA, QLoRA) | |
Détection d’objets, classification d’images et autres tâches de vision par ordinateur | |
Construction de systèmes de recommandation utilisant des approches modernes de deep learning comme les modèles two-tower | |
Tâches de ML traditionnelles, y compris l’entraînement de modèles XGBoost et les prévisions de séries temporelles | |
Mise à l'échelle de l'entraînement sur plusieurs GPU à l'aide de l'API GPU Serverless |
Pour la liste complète, voir les notebooks d’exemple AI Runtime.
Dépannage
Genie Code peut aider à diagnostiquer et à suggérer des correctifs pour les erreurs d'installation de bibliothèque. Consultez Utiliser Genie Code pour déboguer les erreurs d'environnement de compute.
Pour déboguer de manière interactive sur le compute, utilisez le terminal Web pour exécuter des commandes Shell, inspecter l’utilisation du GPU avec nvidia-smi et gérer les fichiers. Le terminal Web est disponible lorsqu’il est connecté à la version 5 ou supérieure de l’environnement GPU serverless. Voir Exécuter des commandes Shell dans le terminal Web Databricks.
ValueError : la taille de numpy.dtype a changé, ce qui peut indiquer une incompatibilité binaire. 96 attendu depuis l'en-tête C, 88 obtenu depuis PyObject
L'erreur survient généralement lorsqu'il existe une inadéquation entre les versions de NumPy utilisées lors de la compilation d'un package dépendant et la version de NumPy actuellement installée dans l'environnement Runtime. Cette incompatibilité survient souvent en raison de changements dans l'API C de NumPy et est particulièrement notable entre NumPy 1.x et 2.x. Cette erreur indique que le package Python installé dans le notebook a peut-être modifié la version de NumPy.
Solution recommandée :
Vérifiez la version de NumPy dans le runtime et assurez-vous qu'elle est compatible avec vos packages. Consultez les notes de version du compute GPU Serverless pour l'environnement 4 et l'environnement 3 pour obtenir des informations sur les bibliothèques Python préinstallées. Si vous avez une dépendance sur une version différente de NumPy, ajoutez cette dépendance à votre environnement de compute.
PyTorch ne parvient pas à trouver libcudnn lors de l'installation de torch
Lorsque vous installez une version différente de torch, vous pouvez voir l’erreur : ImportError: libcudnn.so.9: cannot open shared object file: No such file or directory. C’est parce que torch recherche uniquement la bibliothèque cuDNN dans le chemin local.
Solution recommandée :
Réinstallez les dépendances en ajoutant --force-reinstall lors de l'installation de torch:
%pip install torch --force-reinstall