Chapitre 1 : Ajustement des instructions
Enseigner aux modèles à suivre les instructions
L'ajustement des instructions entraîne les modèles à suivre efficacement les instructions des utilisateurs.
Qu'est-ce que l'ajustement des instructions ?
Entraînement sur des paires instruction-réponse pour créer des assistants utiles :
{
"instruction": "Écrire un poème sur l'océan",
"response": "Les vagues se brisent sur le rivage..."
}
Exigences du jeu de données
| Qualité | Exigence |
|---|---|
| Diversifié | Couvrir de nombreux types d'instructions |
| Précis | Réponses correctes |
| Utile | Réponses véritablement utiles |
| Sûr | Pas de contenu nuisible |
Jeux de données d'instructions populaires
| Jeu de données | Taille | Qualité |
|---|---|---|
| Dolly 15k | 15K | Élevée |
| OpenAssistant | 161K | Élevée |
| Alpaca | 52K | Moyenne |
| OpenHermes | 1M+ | Élevée |
Exemple d'entraînement
from trl import SFTTrainer
from datasets import load_dataset
dataset = load_dataset("databricks/dolly-15k")
def format_instruction(example):
return {
"text": f"""### Instruction:
{example['instruction']}
### Response:
{example['response']}"""
}
dataset = dataset.map(format_instruction)
trainer = SFTTrainer(
model=model,
train_dataset=dataset,
dataset_text_field="text",
...
)