IA et Machine Learning sur Databricks
Cet article décrit les outils fournis par Azure Databricks pour vous aider à créer et à surveiller les flux de travail IA et ML. Le diagramme montre comment ces composants fonctionnent ensemble pour vous aider à implémenter votre processus de développement et de déploiement de modèle.
Pourquoi utiliser Databricks pour l’apprentissage automatique et le Deep Learning ?
Grâce à Azure Databricks, vous pouvez implémenter le cycle de vie ML complet sur une plateforme unique avec une gouvernance de bout en bout tout au long du pipeline ML. Azure Databricks inclut les outils intégrés suivants pour prendre en charge les flux de travail ML :
- Unity Catalog pour la gouvernance, la découverte, le contrôle de version et le contrôle d’accès pour les données, les fonctionnalités, les modèles et les fonctions.
- Lakehouse Monitoring pour la surveillance des données.
- Ingénierie et mise en service des caractéristiques.
- Prise en charge du cycle de vie du modèle :
- Databricks AutoML pour l’entraînement automatisé des modèles.
- MLflow pour le suivi du développement de modèles.
- Unity Catalog pour la gestion des modèles.
- Mise en service de modèle Databricks pour la mise en service de modèles à faible latence et à haute disponibilité. Cela inclut le déploiement de grands modèles de langage (LLM) avec :
- Des API Foundation Model qui vous permettent d’accéder aux modèles ouverts de pointe et de les interroger à partir d’un point de terminaison de service.
- Des modèles externes qui vous permettent d’accéder à des modèles hébergés en dehors de Databricks.
- Lakehouse Monitoring pour suivre la qualité et la dérive des prédictions de modèle.
- Databricks Workflows pour les flux de travail automatisés et les pipelines ETL prêts pour la production.
- Les dossiers Databricks Git pour la gestion du code et l’intégration Git.
Deep Learning sur Databricks
La configuration d’une infrastructure pour les applications de Deep Learning peut être difficile.
Databricks Runtime pour Machine Learning s’en charge pour vous et propose des clusters avec des versions compatibles intégrées des bibliothèques de Deep Learning les plus courantes, telles que TensorFlow, PyTorch et Keras, ainsi que des bibliothèques de prise en charge telles que Petastorm, Hyperopt et Horovod. Les clusters Databricks Runtime ML incluent également la prise en charge GPU préconfigurée avec des pilotes et des bibliothèques de prise en charge. Il prend également en charge les bibliothèques telles que Ray pour paralléliser le traitement de calcul pour la mise à l’échelle des flux de travail ML et des applications IA.
Les clusters Databricks Runtime ML incluent également la prise en charge GPU préconfigurée avec des pilotes et des bibliothèques de prise en charge. Databricks Model Service permet la création de points de terminaison GPU évolutifs pour les modèles Deep Learning sans configuration supplémentaire.
Pour les applications de machine learning, Databricks recommande l’utilisation d’un cluster exécutant Databricks Runtime pour le machine learning. Consultez Créer un cluster à l’aide de Databricks Runtime ML.
Pour commencer à utiliser le Deep Learning sur Databricks, consultez :
- Bonnes pratiques pour le Deep Learning dans Azure Databricks
- Deep Learning sur Databricks
- Solutions de référence pour le Deep Learning
Modèles de langage volumineux (LLM) et IA générative sur Databricks
Databricks Runtime pour Machine Learning inclut des bibliothèques, telles que Hugging Face Transformers et LangChain, qui vous permettent d’intégrer des modèles pré-entraînés existants ou d’autres bibliothèques open source dans votre flux de travail. L’intégration Databricks MLflow facilite l’utilisation du service de suivi MLflow avec des pipelines de transformateur, des modèles et des composants de traitement. En outre, vous pouvez intégrer des modèles ou des solutions OpenAI de partenaires tels que John Snow Labs dans vos flux de travail Azure Databricks.
Avec Azure Databricks, vous pouvez personnaliser un LLM sur vos données pour votre tâche spécifique. Grâce à la prise en charge d’outils open source, tels que Hugging Face et DeepSpeed, vous pouvez utiliser efficacement un LLM de base et l’entraîner avec vos propres données pour en améliorer la précision pour votre domaine et votre charge de travail spécifiques. Vous pouvez ensuite tirer profit du LLM personnalisé dans vos applications d’IA générative.
De plus, Databricks fournit des API Foundation Model et des modèles externes qui vous permettent d’accéder à des modèles ouverts de pointe et de les interroger à partir d’un point de terminaison de service. En utilisant l’API Foundation Model, les développeurs peuvent créer avec rapidité et simplicité des applications qui tirent profit d’un modèle d’IA générative de grande qualité sans conserver leur propre modèle de déploiement.
Pour les utilisateurs SQL, Databricks fournit des fonctions IA que les analystes de données SQL peuvent utiliser pour accéder aux modèles LLM, y compris à partir d’OpenAI, directement dans leurs pipelines de données et flux de travail. Consultez Functions de l’IA sur Azure Databricks.
Databricks Runtime pour le Machine Learning
Databricks Runtime for Machine Learning (Databricks Runtime ML) automatise la création d'un cluster avec une infrastructure d'apprentissage automatique et d'apprentissage profond prédéfinie comprenant les bibliothèques ML et DL les plus courantes. Pour obtenir la liste complète des bibliothèques incluses dans chaque version de Databricks Runtime ML, consultez les notes de publication.
Pour accéder aux données dans Unity Catalog pour les flux de travail Machine Learning, le mode d’accès du cluster doit être un utilisateur unique (affecté). Les clusters partagés ne sont pas compatibles avec Databricks Runtime pour le Machine Learning. De plus, Databricks Runtime ML n’est pas pris en charge sur les clusters TableACL ou les clusters dont spark.databricks.pyspark.enableProcessIsolation config
est défini sur true
.
Créer un cluster à l'aide de Databricks Runtime ML
Lorsque vous créez un cluster, sélectionnez une version de Databricks Runtime ML dans le menu déroulant Version Databricks Runtime. Les runtimes de ML UC et GPU sont disponibles.
Si vous sélectionnez un cluster dans le menu déroulant du notebook, la version de Databricks Runtime s’affiche à droite du nom du cluster :
Si vous sélectionnez un runtime ML avec GPU, vous êtes invité à sélectionner un Type de pilote et un Type de Workercompatibles. Les types d’instance incompatibles sont grisés dans les menus déroulants. Les types d’instances avec GPU sont répertoriés sous l’étiquette Accéléré GPU.
Remarque
Pour accéder aux données dans Unity Catalog pour les flux de travail Machine Learning, le mode d’accès du cluster doit être un utilisateur unique (affecté). Les clusters partagés ne sont pas compatibles avec Databricks Runtime pour le Machine Learning.
Bibliothèques incluses dans Databricks Runtime ML
Databricks Runtime ML comprend une variété de bibliothèques ML populaires. Les bibliothèques sont mises à jour avec chaque version pour inclure de nouvelles fonctionnalités et des correctifs.
Databricks a désigné un sous-ensemble des bibliothèques prises en charge en tant que bibliothèques de niveau supérieur. Pour ces bibliothèques, Databricks offre une cadence de mise à jour plus rapide, en mettant à jour les versions les plus récentes des packages avec chaque version du runtime (conflits de dépendances). Databricks fournit également une prise en charge avancée, des tests et des optimisations incorporées pour les bibliothèques de niveau supérieur.
Pour obtenir la liste complète des bibliothèques de niveau supérieur et des autres bibliothèques fournies, consultez les notes de publication de Databricks Runtime ML.
Étapes suivantes
Pour commencer, consultez :
Pour obtenir un flux de travail MLOps recommandé sur Databricks Machine Learning, consultez :
Pour en savoir plus sur les principales fonctionnalités de Databricks Machine Learning, consultez :