Aller au contenu principal

Didacticiel : Créer et déployer un run d'affinement de modèle de fondation (obsolète)

important

L'affinement des modèles de fondation est obsolète et devrait être supprimé le 14 août 2026. Les exécutions d'affinement existantes continuent de fonctionner et peuvent être réentraînées, mais les nouvelles installations du package databricks_genai et de l'interface utilisateur d'affinement du modèle de fondation seront bloquées après cette date.

Databricks vous recommande de migrer vers AI Runtime, qui fournit un environnement serverless, basé sur un GPU, pour l'entraînement et l'affinement des modèles de base.

info

Aperçu

Cette fonctionnalité est en Aperçu public dans us-east-1 et us-west-2.

Cet article décrit comment créer et configurer une exécution à l'aide de l'API Foundation Model affinement (désormais partie de Databricks Model Training), puis examiner les résultats et déployer le modèle à l'aide de l'interface utilisateur de Databricks et de Model Serving.

Exigences

Étape 1 : Préparez vos données pour l’entraînement

Consultez Préparer les données pour l'affinement des modèles de fondation (déprécié).

Étape 2 : Installez le SDK databricks_genai

Utilisez ce qui suit pour installer le SDK databricks_genai.

Python
%pip install databricks_genai

Ensuite, importez la bibliothèque foundation_model :

Python
dbutils.library.restartPython()
from databricks.model_training import foundation_model as fm

Étape 3 : Créer un run d'entraînement

Créez un run d'entraînement en utilisant la fonction d'affinement de modèle de fondation create(). Les paramètres suivants sont requis :

  • model: le modèle que vous souhaitez entraîner.
  • train_data_path: l'emplacement du dataset d'entraînement.
  • register_to: le catalogue et le schéma Unity Catalog où vous souhaitez que les points de contrôle soient enregistrés.

Par exemple :

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

run

Étape 4 : Affichez le statut d'une exécution

Le temps nécessaire pour terminer une exécution d'entraînement dépend du nombre de jetons, du modèle et de la disponibilité des GPU. Pour un entraînement plus rapide, Databricks vous recommande d'utiliser le compute réservé. Contactez l'équipe de votre compte Databricks pour plus de détails.

Après avoir lancé votre exécution, vous pouvez surveiller son statut à l'aide de get_events().

Python
run.get_events()

Étape 5 : Afficher les métriques et les sorties

Suivez ces étapes pour afficher les résultats dans l'interface utilisateur de Databricks :

  1. Dans le Workspace Databricks, cliquez sur Expérimentations dans la barre de navigation de gauche.
  2. Sélectionnez votre experimentation dans la liste.
  3. Passez en revue les graphiques de mesures dans la tab Charts. Les métriques d'entraînement sont générées pour chaque exécution d'entraînement et les métriques d'évaluation ne sont générées que si un chemin de données d'évaluation est fourni.
    1. La métrique d'entraînement principale qui indique la progression est la perte. La perte d'évaluation peut être utilisée pour voir si votre modèle surajuste vos données d'entraînement. Cependant, il ne faut pas se fier entièrement à la perte, car dans les tâches d'entraînement basées sur des instructions, la perte d'évaluation peut sembler être un surajustement tandis que le modèle continue de s'améliorer.

    2. Plus la précision est élevée, meilleur est votre modèle, mais gardez à l'esprit qu'une précision proche de 100 % pourrait indiquer un surapprentissage.

    3. Les métriques suivantes apparaissent dans MLflow après votre exécution :

      • LanguageCrossEntropy calcule l'entropie croisée sur les sorties de la modélisation linguistique. Un score inférieur est meilleur.
      • LanguagePerplexity mesure la capacité d'un modèle de langage à prédire le mot ou le caractère suivant dans un bloc de texte en fonction des mots ou caractères précédents. Un score inférieur est meilleur.
      • TokenAccuracy calcule la précision au niveau des jetons pour la modélisation linguistique. Un score plus élevé est meilleur.
    4. Dans cette tab, vous pouvez également consulter le résultat de vos invites d'évaluation si vous les avez spécifiées.

Étape 6 : évaluer plusieurs modèles personnalisés avec Agent Evaluation avant le déploiement

Consultez Agent Evaluation (MLflow 2).

Étape 7 : Déployer votre modèle

L'exécution d'entraînement enregistre automatiquement votre modèle dans Unity Catalog une fois terminée. Le modèle est enregistré en fonction de ce que vous avez spécifié dans le champ register_to de la méthode d'exécution create().

Pour déployer le modèle pour le service, suivez ces étapes :

  1. Accédez au modèle dans Unity Catalog.
  2. Cliquez sur Déployer ce modèle .
  3. Cliquez sur Créer un Endpoint de service .
  4. Dans le champ Nom , indiquez un nom pour votre endpoint.
  5. Cliquez sur Créer .

Ressources supplémentaires