Módulo 25: Fine-tuning: cuándo y cómo
50 prompts organizados por 15 profesiones. Cada uno probado, estructurado y listo para copiar. Haz click en cualquier prompt para copiarlo.
Fine-tuning: cuándo vale la pena y cuándo no
Fine-tuning es entrenar un modelo existente con tus propios datos para que se especialice en tu dominio. Suena genial. Pero el 80% de las veces NO es lo que necesitas. Antes de fine-tunear, prueba RAG + prompt engineering.
Punto clave
Fine-tuning tiene sentido cuando: (1) necesitas un formato de output muy específico y consistente, (2) tienes >1000 ejemplos de calidad, (3) prompt engineering ya no mejora los resultados. Si no cumples los 3, no lo hagas.
LoRA: fine-tuning eficiente
LoRA (Low-Rank Adaptation) permite fine-tunear modelos grandes con poca memoria. En vez de modificar todos los pesos, modifica solo matrices de bajo rango. Resultado: fine-tuning con una GPU consumer.
# Con Hugging Face + PEFT
from peft import LoraConfig, get_peft_model
config = LoraConfig(r=16, lora_alpha=32, target_modules=["q_proj", "v_proj"])
model = get_peft_model(base_model, config)
# Entrena con tu dataset (formato ChatML)
Dataset: calidad > cantidad
- Mínimo 500-1000 ejemplos de alta calidad
- Formato ChatML: system + user + assistant
- Diversidad: cubrir edge cases, no solo el caso feliz
- Limpieza: eliminar duplicados, inconsistencias, errores
Cuándo SÍ fine-tunear
- Clasificación con categorías propias (no estándar)
- Generación de código en un DSL interno
- Tono/estilo muy específico y consistente
- Reducir costes: modelo pequeño fine-tuneado vs modelo grande genérico
Cuándo NO
- Tienes menos de 500 ejemplos de calidad
- El problema se resuelve con mejor prompt + RAG
- Necesitas actualizar los datos frecuentemente (RAG es mejor)
- No tienes forma de evaluar si el fine-tuning mejoró algo