Partager via


Afficher, gérer et analyser les exécutions Mosaic AI Model Training

Important

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

Cet article explique comment afficher, gérer et analyser les exécutions Mosaic AI Model Training (anciennement Foundation Model Training) à l’aide d’API ou de l’interface utilisateur.

Pour plus d’informations sur la création d’exécutions, consultez les articles Créer une exécution d’apprentissage à l’aide de l’API Mosaic AI Model Training et Créer une exécution d’apprentissage à l’aide de l’interface utilisateur Mosaic AI Model Training.

Utiliser les API Mosaic AI Model Training pour afficher et gérer les exécutions d’apprentissage

Les API Mosaic AI Model Training fournissent les fonctions suivantes pour gérer vos exécutions d’apprentissage.

Obtention d'une exécution

Utilisez la fonction get() pour retourner une exécution par son nom ou l’objet d’exécution que vous avez lancé.

from databricks.model_training import foundation_model as fm

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

Listes d’exécutions

Utilisez la fonction list() pour afficher 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 Liste des exécutions à obtenir. Par défaut, sélection de toutes les exécutions.
user_emails Si les exécutions partagées sont activées pour votre espace de travail, vous pouvez filtrer les résultats par l’utilisateur qui a envoyé l’exécution d’apprentissage. Par défaut, aucun filtre utilisateur.
before Chaîne datetime ou datetime à filtrer avant. Par défaut, toutes les exécutions sont effectuées.
after Chaîne datetime ou datetime à filtrer après. Par défaut, toutes les exécutions sont effectuées.
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’apprentissage

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

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, transférez les noms d’exécution spécifiques sous forme de liste.

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érience, transférez l’identifiant de l’expérience.

from databricks.model_training import foundation_model as fm

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

Passer en revue l’état des exécutions d’apprentissage

Le tableau suivant répertorie les événements créés par une exécution d’apprentissage. Utilisez la fonction get_events() à tout moment pendant votre exécution pour voir la progression de votre exécution.

Remarque

L’entraînement de modèle Mosaic AI applique une limite de 10 exécutions actives. Ces exécutions sont en file d’attente, en cours d’exécution ou terminées. Les exécutions ne sont plus considérées comme actives une fois qu’elles sont dans l’état TERMINÉ, ÉCHEC ou ARRÊTÉ.

Type d’événement Exemple de message d’événement Définition
CREATED Exécution créée. L’exécution d’apprentissage a été créée. Si les ressources sont disponibles, l’exécution démarre. Sinon, elle entre dans l’état Pending.
STARTED Exécution démarrée. Les ressources ont été allouées et l’exécution a démarré.
DATA_VALIDATED Données d’apprentissage validées. A validé que les données d’apprentissage sont correctement mises en forme.
MODEL_INITIALIZED Données de modèle téléchargées 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’apprentissage : 1.71 Signale le lot d’apprentissage, l’époque ou le jeton actuels, l’heure estimée de la fin de l’apprentissage (sans inclure le temps de chargement du point de contrôle) et la perte d’apprentissage. Cet événement est mis à jour lorsque chaque lot se termine. Si la configuration d’exécution spécifie max_duration dans tok unités, la progression est signalée dans les jetons.
TRAIN_FINISHED L’apprentissage est terminé. L’apprentissage est terminé. Le chargement de point de contrôle commence.
COMPLETED Exécution terminée. Poids finaux chargés. Le point de contrôle a été chargé et l’exécution a été terminée.
CANCELED Exécution annulée. L’exécution est annulée si fm.cancel() est appelé dessus.
FAILED Un ou plusieurs exemples de jeux de données d’apprentissage ont des clés inconnues. Consultez la documentation relative aux formats de données pris en charge. Échec de l’exécution. Vérifiez event_message pour obtenir des informations exploitables ou contactez le support technique.
from databricks.model_training import foundation_model as fm

fm.get_events()

Utiliser l’interface utilisateur pour afficher et gérer les exécutions

Pour afficher les exécutions dans l’interface utilisateur :

  1. Cliquez sur Expériences dans la barre de navigation à gauche pour afficher la page Expériences.

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

    page d’expérience

  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 métriques au graphique

  4. Des informations d’exécution supplémentaires sont disponibles sous l’onglet Graphique :

    onglet graphique

  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’exécution

Points de contrôle

Pour accéder au dossier de point de contrôle, cliquez sur l’onglet Artifacts sur l’écran d’exécution. Ouvrez le nom de l’expérience, puis ouvrez le dossier des points de contrôle. Ces points de contrôle d’artefact ne sont pas identiques au modèle inscrit à la fin d’une exécution de formation.

dossier de point de contrôle sous l’onglet Artifacts

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 de modèle à chaque point de contrôle Composer. Les points de contrôle Composer sont enregistrés régulièrement par le biais d’une formation, ceux-ci sont utilisés pour reprendre une exécution de formation d’optimisation et pour l’optimisation continue. Ce point de contrôle est celui que vous transmettez en tant que custom_weights_path pour démarrer une autre exécution de formation à partir de ces pondérations. Consultez Générer sur les pondérations de modèle personnalisées.
  • Dans le dossier huggingface, les points de contrôle Hugging Face sont également enregistrés régulièrement par le biais d’une formation. Après avoir téléchargé le contenu dans ce dossier, vous pouvez charger ces points de contrôle comme vous le feriez avec n’importe quel autre point de contrôle Hugging Face à l’aide de AutoModelForCausalLM.from_pretrained(<downloaded folder>).
  • 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 la formation.

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