For the complete documentation index, see llms.txt. This page is also available as Markdown.

🏁Ajustement fin à partir du dernier point de contrôle

La création de points de contrôle vous permet d'enregistrer la progression de votre ajustement fin afin de pouvoir le mettre en pause puis le reprendre.

Vous devez modifier le Trainer d'abord pour ajouter save_strategy et save_steps. Ci-dessous, un point de contrôle est enregistré toutes les 50 étapes dans le dossier outputs.

trainer = SFTTrainer(
    ....
    args = TrainingArguments(
        ....
        output_dir = "outputs",
        save_strategy = "steps",
        save_steps = 50,
    ),
)

Puis, dans le trainer, faites :

trainer_stats = trainer.train(resume_from_checkpoint = True)

Ce qui commencera à partir du dernier point de contrôle et poursuivra l'entraînement.

Intégration Wandb

# Installer la bibliothèque
!pip install wandb --upgrade

# Configuration de Wandb
!wandb login <token>

import os

os.environ["WANDB_PROJECT"] = "<name>"
os.environ["WANDB_LOG_MODEL"] = "checkpoint"

Puis, dans TrainingArguments() définissez

Pour entraîner le modèle, faites trainer.train(); pour reprendre l'entraînement, faites

Comment puis-je faire de l'arrêt anticipé ?

Si vous souhaitez arrêter ou mettre en pause l'exécution du fine-tuning / entraînement parce que la perte de validation ne diminue pas, vous pouvez utiliser l'arrêt anticipé, qui stoppe le processus d'entraînement. Utilisez EarlyStoppingCallback.

Comme d'habitude, configurez votre trainer et votre ensemble de données de validation. Ce qui suit est utilisé pour arrêter l'exécution de l'entraînement si le eval_loss (la perte de validation) ne diminue pas après environ 3 étapes.

Nous ajoutons ensuite le callback, qui peut également être personnalisé :

Puis entraînez le modèle comme d'habitude via trainer.train() .

Mis à jour

Ce contenu vous a-t-il été utile ?