Aller au contenu principal

Affichez, gérez et analysez les exécutions d'affinement des modèles 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 afficher, gérer et analyser les exécutions d'affinement du modèle de fondation (qui fait désormais partie de l'entraînement de modèle Databricks) à l'aide d'APIs ou de l'interface utilisateur.

Pour plus d'informations sur la création de runs, consultez Créer un run d'entraînement à l'aide de l'API d'affinement des modèles de fondation (dépréciée) et Créer un run d'entraînement à l'aide de l'interface utilisateur d'affinement des modèles de fondation (dépréciée).

Utilisez les APIs d'affinement de modèle de fondation pour afficher et gérer les exécutions d'entraînement.

Les APIs d'affinement de modèle de fondation fournissent les fonctions suivantes pour gérer vos exécutions d'entraînement.

Obtenir une exécution

Utilisez la fonction get() pour renvoyer une exécution par nom ou un objet d'exécution que vous avez lancé.

Python
from databricks.model_training import foundation_model as fm

fm.get('<your-run-name>')

Liste des exécutions

Utilisez la fonction list() pour voir les exécutions que vous avez lancées. Le tableau suivant répertorie les filtres facultatifs que vous pouvez spécifier.

Filtre facultatif

Définition

finetuning_runs

Une liste d'exécutions à obtenir. default, sélectionne toutes les exécutions.

user_emails

Si les exécutions partagées sont activées pour votre Workspace, vous pouvez filtrer les résultats par l'utilisateur qui a soumis l'exécution d'entraînement. default, aucun filtre utilisateur n'est appliqué.

before

Une date-heure ou une chaîne de caractères de date-heure pour filtrer les exécutions précédentes. default to all runs.

after

Une chaîne de caractères de date-heure ou de date-heure pour filtrer les exécutions après. default to all runs.

Filtre facultatif

Définition

finetuning_runs

Une liste d'exécutions à obtenir. default, sélectionne toutes les exécutions.

user_emails

Si les exécutions partagées sont activées pour votre Workspace, vous pouvez filtrer les résultats par l'utilisateur qui a soumis l'exécution d'entraînement. default, aucun filtre utilisateur n'est appliqué.

before

Une date-heure ou une chaîne de caractères de date-heure pour filtrer les exécutions précédentes. default to all runs.

after

Une chaîne de caractères de date-heure ou de date-heure pour filtrer les exécutions après. default to all runs.

Python
from databricks.model_training import foundation_model as fm

fm.list()

# filtering example
fm.list(before='2023-01-01', limit=50)

Annuler les exécutions d'entraînement

Pour annuler une seule exécution d'entraînement, utilisez la fonction cancel() et passez le nom de l'exécution.

Python
from databricks.model_training import foundation_model as fm

run_to_cancel = '<name-of-run-to-cancel>'
fm.cancel(run_to_cancel)

Pour annuler plusieurs exécutions d'entraînement, transmettez les noms d'exécution spécifiques sous forme de liste.

Python
from databricks.model_training import foundation_model as fm

runs_to_cancel = ['<run_1>, <run_2>, <run_3>']
fm.cancel(runs=runs_to_cancel)

Pour annuler toutes les exécutions d'entraînement dans une expérimentation, saisissez l'ID de l'expérimentation.

Python
from databricks.model_training import foundation_model as fm

experiment_to_cancel = '<experiment-id-to-cancel>'
fm.cancel(experiment_id=experiment_to_cancel)

Vérifier l'état des exécutions de formation

Le tableau suivant répertorie les événements créés par un run d'entraînement. Utilisez la fonction get_events() à tout moment pendant votre exécution pour voir la progression de votre exécution.

remarque

L'affinement de modèles de fondation impose une limite de 10 exécutions actives. Ces exécutions qui sont soit en file d'attente, en cours d'exécution ou en cours de finalisation. Les exécutions ne sont plus considérées comme actives après qu'elles sont à l'état TERMINÉ, ÉCHOUÉ ou ARRÊTÉ.

Type d'événement

Exemple de message d'événement

Définition

CREATED

Exécution créée.

L'exécution d'entraînement a été créée. Si des ressources sont disponibles, l'exécution start. Dans le cas contraire, il entre dans l'état Pending.

STARTED

Exécution démarrée.

Des ressources ont été allouées, et le run a start.

DATA_VALIDATED

Données de formation validées.

Validé que les données d'entraînement sont correctement formatées.

MODEL_INITIALIZED

Model data download et initialisées pour le modèle de base meta-llama/Llama-2-7b-chat-hf.

Les poids du modèle de base ont été téléchargés, et l'entraînement est prêt à commencer.

TRAIN_UPDATED

[epoch=1/1][batch=50/56][ETA=5min] Perte d'entraînement : 1,71

Rapporte le batch, l'époque ou le jeton d'entraînement actuel, le temps estimé pour terminer l'entraînement (sans inclure le temps d'upload du checkpoint) et la perte d'entraînement. Cet événement est mis à jour lorsque chaque batch se termine. Si la configuration d'exécution spécifie max_duration en tok unités, la progression est rapportée en jetons.

TRAIN_FINISHED

Entraînement terminé.

La formation est terminée. L'upload des points de contrôle commence.

COMPLETED

Exécution terminée. Poids finaux importés.

Le point de contrôle a été upload, et l'exécution est terminée.

CANCELED

L'exécution a été annulée.

L’exécution est annulée si fm.cancel() est appelée.

FAILED

Un ou plusieurs échantillons de dataset d'entraînement ont des clés inconnues. Veuillez consulter la documentation pour les formats de données pris en charge.

L'exécution a échoué. Consultez event_message pour des détails exploitables, ou contactez le support.

Type d'événement

Exemple de message d'événement

Définition

CREATED

Exécution créée.

L'exécution d'entraînement a été créée. Si des ressources sont disponibles, l'exécution start. Dans le cas contraire, il entre dans l'état Pending.

STARTED

Exécution démarrée.

Des ressources ont été allouées, et le run a start.

DATA_VALIDATED

Données de formation validées.

Validé que les données d'entraînement sont correctement formatées.

MODEL_INITIALIZED

Model data download et initialisées pour le modèle de base meta-llama/Llama-2-7b-chat-hf.

Les poids du modèle de base ont été téléchargés, et l'entraînement est prêt à commencer.

TRAIN_UPDATED

[epoch=1/1][batch=50/56][ETA=5min] Perte d'entraînement : 1,71

Rapporte le batch, l'époque ou le jeton d'entraînement actuel, le temps estimé pour terminer l'entraînement (sans inclure le temps d'upload du checkpoint) et la perte d'entraînement. Cet événement est mis à jour lorsque chaque batch se termine. Si la configuration d'exécution spécifie max_duration en tok unités, la progression est rapportée en jetons.

TRAIN_FINISHED

Entraînement terminé.

La formation est terminée. L'upload des points de contrôle commence.

COMPLETED

Exécution terminée. Poids finaux importés.

Le point de contrôle a été upload, et l'exécution est terminée.

CANCELED

L'exécution a été annulée.

L’exécution est annulée si fm.cancel() est appelée.

FAILED

Un ou plusieurs échantillons de dataset d'entraînement ont des clés inconnues. Veuillez consulter la documentation pour les formats de données pris en charge.

L'exécution a échoué. Consultez event_message pour des détails exploitables, ou contactez le support.

Python
from databricks.model_training import foundation_model as fm

fm.get_events()

Utilisez l'UI pour afficher et gérer les exécutions

Pour afficher les exécutions dans l'UI :

  1. Cliquez sur Expérimentations dans la barre de navigation de gauche pour afficher la page des Expérimentations.

  2. Dans le tableau, cliquez sur le nom de votre expérimentation pour afficher la page de l'expérimentation. La page d'Experimentation répertorie toutes les exécutions associées à l'Experimentation.

    page Expérimentation

  3. Pour afficher des informations ou des métriques supplémentaires dans le tableau, cliquez sur Signe Plus et sélectionnez les éléments à afficher dans le menu :

    Ajouter des mesures au graphique

  4. Des informations supplémentaires sur l'exécution sont disponibles dans l'onglet tab :

    💹

  5. Vous pouvez également cliquer sur le nom de l'exécution pour afficher l'écran d'exécution. Cet écran vous donne accès à des détails supplémentaires sur l'exécution.

    page d&#39;exécution

Points de contrôle

Pour accéder au dossier de point de contrôle, cliquez sur l'onglet **tab** sur l'écran d'exécution. Ouvrez le nom de l'expérimentation, puis ouvrez le dossier checkpoints . Ces points de contrôle d'artefacts ne sont pas les mêmes que le modèle enregistré à la fin d'une exécution d'entraînement.

dossier checkpoint sur la tab Artefacts

Il y a quelques répertoires dans ce dossier :

  • Les dossiers d'époque (nommés ep<n>-xxx) contiennent les pondérations et les états du modèle à chaque point de contrôle. Les points de contrôle sont enregistrés périodiquement tout au long de l'entraînement ; ceux-ci sont utilisés pour reprendre une exécution d'entraînement d'affinement et pour un affinement continu. Ce point de contrôle est celui que vous transmettez en tant que custom_weights_path pour start une autre exécution d'entraînement à partir de ces pondérations, consultez Créer sur des pondérations de modèle personnalisées.
  • Le checkpoints/latest-sharded-rank0.symlink est un fichier qui contient le chemin d'accès au dernier point de contrôle, que vous pouvez utiliser pour reprendre l'entraînement.

Vous pouvez également obtenir les points de contrôle d'une exécution après leur enregistrement à l'aide de get_checkpoints(run). Cette fonction prend l'objet d'exécution comme entrée. Si les points de contrôle n'existent pas encore, vous êtes invité à réessayer après l'enregistrement des points de contrôle.