Capítulo 1: Ajuste por instrucciones
Enseñando a los modelos a seguir instrucciones
El ajuste por instrucciones entrena a los modelos para seguir las instrucciones del usuario de manera efectiva.
¿Qué es el ajuste por instrucciones?
Entrenamiento con pares de instrucción-respuesta para crear asistentes útiles:
{
"instruction": "Write a poem about the ocean",
"response": "Waves crash upon the shore..."
}
Requisitos del conjunto de datos
| Calidad | Requisito |
|---|---|
| Diverso | Cubrir muchos tipos de instrucciones |
| Preciso | Respuestas correctas |
| Útil | Respuestas genuinamente útiles |
| Seguro | Sin contenido dañino |
Conjuntos de datos populares de instrucciones
| Conjunto de datos | Tamaño | Calidad |
|---|---|---|
| Dolly 15k | 15K | Alta |
| OpenAssistant | 161K | Alta |
| Alpaca | 52K | Media |
| OpenHermes | 1M+ | Alta |
Ejemplo de entrenamiento
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",
...
)