Partager via


Mosaic AI Model Training pour les modèles de base

Important

Cette fonctionnalité est disponible en préversion publique dans les régions suivantes : centralus, eastus, eastus2, northcentralus et westus.

Grâce à Mosaic AI Model Training (anciennement Foundation Model Training), vous pouvez utiliser vos propres données pour personnaliser un modèle de fondation afin d’optimiser ses performances pour votre application spécifique. En menant un paramètre complet d’ajustement ou d’apprentissage continu d’un modèle de fondation vous permet d’effectuer l’apprentissage de votre modèle en utilisant beaucoup moins de données, de temps et de ressources de calcul que lors de la formation d’un modèle à partir de zéro.

Avec Databricks, tout est réuni dans une seule plateforme : vos propres données à utiliser pour l’entraînement, le modèle de base pour entraîner, les points de contrôle enregistrés dans MLflow et le modèle inscrit dans le catalogue Unity prêt à être déployé.

Consultez le tutoriel  : Créer et déployer une exécution de Mosaic AI Model Training pour apprendre à créer une exécution à l’aide de l’API Mosaic AI Model Training, puis à examiner les résultats et à déployer le modèle à l’aide de l’interface utilisateur Databricks et de Mosaic AI Model Serving.

Qu’est-ce que Mosaic AI Model Training ?

Mosaic AI Model Training vous permet d’utiliser l’API ou l’interface utilisateur Databricks pour adapter ou entraîner davantage un modèle de fondation.

Grâce à Mosaic AI Model Training, vous pouvez :

  • Entraîner un modèle avec vos données personnalisées, avec les points de contrôle enregistrés dans MLflow. Vous disposez d’un contrôle complet du modèle entraîné.
  • Inscrire automatiquement le modèle dans le catalogue Unity, ce qui permet un déploiement facile avec le service de modèle.
  • Entraîner davantage un modèle propriétaire complet en chargeant les poids d’un modèle précédemment entraîné.

Databricks vous recommande d’essayer Mosaic AI Model Training si :

  • Vous avez essayé quelques apprentissages et vous souhaitez obtenir de meilleurs résultats.
  • Vous avez essayé l’ingénierie rapide sur un modèle existant et vous souhaitez obtenir de meilleurs résultats.
  • Vous souhaitez posséder entièrement un modèle personnalisé pour la confidentialité des données.
  • Vous êtes sensible à la latence ou aux coûts et souhaitez utiliser un modèle plus petit et moins cher avec vos données spécifiques à des tâches.

Tâches prises en charge

Mosaic AI Model Training prend en charge les cas d’usage suivants :

  • Saisie semi-automatique de conversation : tâche recommandée. Entraînez votre modèle sur les journaux de conversation entre un utilisateur et un assistant IA. Ce format peut être utilisé pour les journaux de conversation réels ainsi que comme format standard pour répondre aux questions et texte conversationnel. Le texte est automatiquement mis en forme dans le format approprié pour le modèle spécifique. Consultez les exemple de modèles de conversation dans la documentation HuggingFace pour plus d’informations sur le templating.
  • L’ajustement supervisé : entraînez votre modèle sur des données de réponse d’invite structurées. Utilisez ceci pour adapter votre modèle à une nouvelle tâche, modifier son style de réponse ou ajouter des fonctionnalités de suivi des instructions. Cette tâche n’applique pas automatiquement de mise en forme à vos données et n’est recommandée que lorsque la mise en forme des données personnalisées est nécessaire.
  • Préentraînement continu : entraînez votre modèle avec des données de texte supplémentaires. Utilisez ceci pour ajouter de nouvelles connaissances à un modèle ou concentrer un modèle sur un domaine spécifique.

Exigences

  • Un espace de travail Databricks dans l’une des régions Azure suivantes : centralus, eastus, eastus2, northcentralus, ou westus.
  • API Mosaic AI Model Training installées à l’aide de pip install databricks_genai.
  • Databricks Runtime 12.2 LTS ML ou version ultérieure si vos données se situent dans une table Delta.

Pour plus d’informations sur les formats de données d’entrée requis, consultez l’article Préparer des données pour Mosaic AI Model Training.

Taille de données recommandée pour l’entraînement du modèle

Databricks recommande initialement l’entraînement à l’aide d’une à quatre époques. Après avoir évalué votre modèle affiné, si vous souhaitez que les sorties du modèle soient plus similaires à vos données d’entraînement, vous pouvez commencer à poursuivre l’entraînement à l’aide d’une à deux époques supplémentaires.

Si les performances du modèle diminuent considérablement sur les tâches non représentées dans vos données affinées ou si le modèle semble générer des copies exactes de vos données affinées, Databricks recommande de réduire le nombre d’époques d’entraînement.

Pour une optimisation et une saisie semi-automatique des conversations supervisées, vous devez fournir suffisamment de jetons pour au moins une longueur de contexte complète du modèle. Par exemple, 4 096 jetons pour meta-llama/Llama-2-7b-chat-hf ou 32 768 jetons pour mistralai/Mistral-7B-v0.1.

Pour un préentraînement continu, Databricks recommande un minimum de 1,5 million de jetons pour obtenir un modèle de qualité supérieure qui apprend vos données personnalisées.

Modèles pris en charge

Le tableau suivant répertorie les modèles pris en charge. Pour les derniers modèles pris en charge et leurs longueurs de contexte associées, utilisez la fonction get_models().


from databricks.model_training import foundation_model

foundation_model.get_models()

Important

Meta Llama 3.2 est concédé sous Licence de la communauté LLAMA 3.2, Copyright © Meta Platforms, Inc. Tous droits réservés. Les clients sont responsables de leur conformité aux conditions de cette licence et de la Politique d’utilisation acceptable de Llama 3.2.

Meta Llama 3.1 est concédé sous Licence de la communauté LLAMA 3.1, Copyright © Meta Platforms, Inc. Tous droits réservés. Les clients sont tenus de d’assurer de leur conformité vis-à-vis des licences de modèle applicables.

Llama 3 est concédé sous licence de la communauté LLAMA 3, Copyright © Meta Platforms, Inc. Tous droits réservés. Les clients sont tenus de d’assurer de leur conformité vis-à-vis des licences de modèle applicables.

Les modèles Llama 2 et Code Llama sont considérés sous licence de la communauté LLAMA 2, Copyright © Meta Platforms, Inc. Tous droits réservés. Les clients sont tenus de d’assurer de leur conformité vis-à-vis des licences de modèle applicables.

DBRX est fourni sous la licence Databricks Open Model, Copyright © Databricks, Inc. Tous droits réservés. Les clients sont responsables de la conformité aux licences de modèles applicables, notamment aux règles de bon usage Databricks.

Modèle Longueur maximale du contexte Notes
databricks/dbrx-base 32 768
databricks/dbrx-instruct 32 768
meta-llama/Llama-3.2-1B 131 072
meta-llama/Llama-3.2-1B-Instruct 131 072
meta-llama/Llama-3.2-3B 131 072
meta-llama/Llama-3.2-3B-Instruct 131 072
meta-llama/Meta-Llama-3.1-405B 131 072
meta-llama/Meta-Llama-3.1-405B-Instruct 131 072
meta-llama/Meta-Llama-3.1-70B 131 072
meta-llama/Meta-Llama-3.1-70B-Instruct 131 072
meta-llama/Meta-Llama-3.1-8B 131 072
meta-llama/Meta-Llama-3.1-8B-Instruct 131 072
meta-llama/Meta-Llama-3-70B 8192 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
meta-llama/Meta-Llama-3-70B-Instruct 8192 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
meta-llama/Meta-Llama-3-8B 8192 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
meta-llama/Meta-Llama-3-8B-Instruct 8192 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
meta-llama/Llama-2-7b-hf 4096 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
meta-llama/Llama-2-13b-hf 4096 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
meta-llama/Llama-2-70b-hf 4096 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
meta-llama/Llama-2-7b-chat-hf 4096 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
meta-llama/Llama-2-13b-chat-hf 4096 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
meta-llama/Llama-2-70b-chat-hf 4096 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
codellama/CodeLlama-7b-hf 16384 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
codellama/CodeLlama-13b-hf 16384 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
codellama/CodeLlama-34b-hf 16384 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
codellama/CodeLlama-7b-Instruct-hf 16384 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
codellama/CodeLlama-13b-Instruct-hf 16384 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
codellama/CodeLlama-34b-Instruct-hf 16384 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
codellama/CodeLlama-7b-Python-hf 16384 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
codellama/CodeLlama-13b-Python-hf 16384 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
codellama/CodeLlama-34b-Python-hf 16384 Après le 13 décembre 2024, ce modèle ne sera plus pris en charge. Consultez Modèles hors service pour connaître l’alternative recommandée.
mistralai/Mistral-7B-v0.1 32 768
mistralai/Mistral-7B-Instruct-v0.2 32 768
mistralai/Mixtral-8x7B-v0.1 32 768

Utiliser Mosaic AI Model Training

Mosaic AI Model Training est accessible à l’aide du SDK databricks_genai. L’exemple suivant crée et lance une exécution d’entraînement qui utilise des données à partir de volumes de catalogue Unity. Pour plus d’informations sur la configuration, consultez l’article Créer une exécution d’apprentissage en utilisant l’API Mosaic AI Model Training.

from databricks.model_training import foundation_model as fm

model = 'meta-llama/Meta-Llama-3.1-8B-Instruct'
# UC Volume with JSONL formatted data
train_data_path = 'dbfs:/Volumes/main/mydirectory/ift/train.jsonl'
register_to = 'main.mydirectory'
run = fm.create(
  model=model,
  train_data_path=train_data_path,
  register_to=register_to,
)

Consultez le notebook de démonstration Optimisation des instructions : Reconnaissance d’entité nommée pour obtenir un exemple d’optimisation des instructions qui décrit la préparation des données, l’optimisation de la configuration d’exécution de formation et le déploiement.

Limites

  • Les jeux de données volumineux (de plus de 10 milliards de jetons) ne sont pas pris en charge pour des raisons de disponibilité du calcul.

  • Pour le préentraînement continu, les charges de travail sont limitées aux fichiers de 60 à 256 Mo. Les fichiers supérieurs à 1 Go peuvent entraîner des temps de traitement plus longs.

  • Databricks s’efforce de rendre les derniers modèles de pointe disponibles à la personnalisation avec Mosaic AI Model Training. À mesure que nous mettons à disposition de nouveaux modèles, nous pouvons supprimer la possibilité d’accéder à des modèles plus anciens de l’API et/ou de l’interface utilisateur, déprécier les modèles plus anciens ou mettre à jour les modèles pris en charge. Consultez Stratégie de maintenance des modèles d’IA générative.

  • La formation de modèle Mosaic AI prend uniquement en charge la formation de modèle pour les espaces de travail Azure à l’aide du stockage derrière une liaison privée.

    • La lecture des données à partir du stockage derrière une liaison privée dans eastus2 est actuellement prise en charge.
  • Si vous avez activé des pare-feu sur le compte Azure Data Lake Storage qui stocke vos données dans Unity Catalog, vous devez autoriser le trafic à partir des clusters du plan de données Databricks Serverless afin d’utiliser la formation de modèle Mosaic AI. Contactez votre équipe de compte Databricks pour plus d’informations et des solutions personnalisées possibles.