Réglage précis du modèle de base
Important
Cette fonctionnalité est disponible en préversion publique dans les régions suivantes : centralus
, eastus
, eastus2
, northcentralus
et westus
.
Avec l’optimisation fine du modèle Foundation (qui fait désormais partie de l’entraînement de modèle d’IA de Mosaïque), vous pouvez utiliser vos propres données pour personnaliser un modèle de base 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 réglage fin du modèle Foundation pour apprendre à créer une exécution à l’aide de l’API Foundation Model Fine-tuning, puis passer en revue les résultats et déployer le modèle à l’aide de l’interface utilisateur Databricks et du modèle d’IA Mosaïque.
Qu’est-ce que l’optimisation fine du modèle Foundation ?
Le réglage précis du modèle De base vous permet d’utiliser l’API Ou l’interface utilisateur Databricks pour paramétrer ou entraîner davantage un modèle de base.
À l’aide du réglage précis du modèle Foundation, 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 l’optimisation fine du modèle Foundation 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
Foundation Model Fine-tuning 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
, ouwestus
. - API de paramétrage de modèle Foundation installées à l’aide
pip install databricks_genai
de . - 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 Préparer des données pour le réglage fin du modèle Foundation.
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 le réglage précis du modèle Foundation
Le réglage précis du modèle Foundation est accessible à l’aide du databricks_genai
KIT DE développement logiciel (SDK). 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 Créer une exécution d’entraînement à l’aide de l’API De réglage fin du modèle Foundation.
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 d’état disponibles pour la personnalisation à l’aide du réglage précis du modèle Foundation. À mesure que de nouveaux modèles deviennent disponibles, l’accès aux modèles plus anciens de l’API ou de l’interface utilisateur peut être supprimé, les modèles plus anciens peuvent être déconseillés ou les modèles pris en charge mis à jour. Consultez Stratégie de maintenance des modèles d’IA générative.
Le réglage fin du modèle Foundation prend uniquement en charge l’entraînement des modèles pour les espaces de travail Azure à l’aide du stockage derrière Private Link.
- La lecture des données à partir du stockage derrière une liaison privée dans
eastus2
est actuellement prise en charge.
- La lecture des données à partir du stockage derrière une liaison privée dans
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 de plan de données serverless Databricks afin d’utiliser le réglage précis du modèle Foundation. Contactez votre équipe de compte Databricks pour plus d’informations et des solutions personnalisées possibles.