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 :
Cliquez sur Expériences dans la barre de navigation à gauche pour afficher la page Expériences.
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.
Pour afficher des informations ou des métriques supplémentaires dans le tableau, cliquez sur et sélectionnez les éléments à afficher dans le menu :
Des informations d’exécution supplémentaires sont disponibles sous l’onglet Graphique :
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.
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.
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 quecustom_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 deAutoModelForCausalLM.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.