WandBLogger, identifier les métriques que torchtune suit par défaut et enregistrer des points de contrôle de modèle dans W&B Artifacts.

Activer la journalisation W&B
Vous pouvez activer la journalisation W&B de deux façons : redéfinir des arguments au lancement depuis la ligne de commande, ou modifier le fichier de configuration de la recette. Choisissez la méthode la mieux adaptée à votre flux de travail.- Ligne de commande
- Recette
Redéfinissez les arguments de ligne de commande au lancement :
Utiliser le logger de métriques W&B
Activez la journalisation W&B dans le fichier de configuration de la recette en modifiant la sectionmetric_logger. Remplacez la valeur de _component_ par la classe torchtune.utils.metric_logging.WandBLogger. Vous pouvez également transmettre un nom de projet (project) et log_every_n_steps pour personnaliser le comportement de la journalisation.
Vous pouvez aussi transmettre tout autre argument kwargs, comme vous le feriez avec la méthode wandb.init(). Par exemple, si vous travaillez au sein d’une équipe, vous pouvez transmettre l’argument entity à la classe WandBLogger pour indiquer le nom de l’équipe.
- Recipe
- Ligne de commande
Données journalisées
Une fois la journalisation W&B activée, vous pouvez explorer le tableau de bord W&B pour consulter les métriques journalisées. Par défaut, W&B journalise tous les hyperparamètres du fichier de configuration ainsi que les redéfinitions spécifiées au lancement, ce qui vous permet de conserver la configuration de chaque run en regard de ses métriques. W&B enregistre la configuration résolue dans l’onglet Overview. W&B stocke également la configuration au format YAML dans l’onglet Files.
Métriques journalisées
Chaque recette possède sa propre boucle d’entraînement. Consultez chaque recette pour connaître les métriques qu’elle journalise, dont celles-ci par défaut :global_step ne correspond pas au nombre d’étapes d’entraînement. Il correspond à l’étape en cours dans la boucle d’entraînement et tient compte de l’accumulation de gradients. À chaque étape de l’optimiseur, global_step est incrémenté de 1. Par exemple, si le dataloader contient 10 lots, que le nombre d’étapes d’accumulation de gradients est de 2 et que vous lancez l’entraînement sur 3 époques, l’optimiseur effectue 15 étapes : global_step varie donc de 1 à 15.current_epoch sous forme de pourcentage du nombre total d’époques, comme suit :
L’ensemble des métriques journalisées peut varier d’une version de torchtune à l’autre. Pour ajouter une métrique personnalisée, modifiez la recette et appelez la fonction
self._metric_logger.* correspondante.Enregistrer et charger des points de contrôle
Enregistrez les points de contrôle dans W&B Artifacts pour versionner les poids du modèle avec les métriques et la configuration de chaque run. Vous pourrez ainsi reproduire les résultats et comparer les versions du modèle par la suite. La bibliothèque torchtune prend en charge plusieurs formats de points de contrôle. Selon l’origine du modèle que vous utilisez, vous devez utiliser la classe de checkpointer appropriée. Pour enregistrer les points de contrôle du modèle dans W&B Artifacts, il est recommandé de redéfinir les fonctionssave_checkpoint dans la recette correspondante.
L’exemple suivant montre comment redéfinir la fonction save_checkpoint pour enregistrer les points de contrôle du modèle dans W&B Artifacts.