Qué es fine-tuning
Fine-tuning es el proceso de ajustar un LLM pre-entrenado con datos específicos para que rinda mejor en una tarea o dominio concreto.
Imagina un LLM general (GPT-4) como un profesional polivalente. Fine-tuning lo convierte en un especialista de un dominio.
Cómo funciona
- Empiezas con un modelo base pre-entrenado (Llama, GPT, Mistral)
- Preparas un dataset de ejemplos específicos a tu tarea (1.000-100.000 ejemplos)
- Entrenas el modelo con esos ejemplos (días/semanas, depende del tamaño)
- Obtienes un modelo especializado que rinde mejor en tu tarea concreta
Ejemplos de uso
Chatbot con estilo específico
Fine-tune con miles de conversaciones de tu equipo de soporte → chatbot que responde con tu tono de marca.
Clasificación de tickets
Fine-tune con tickets clasificados manualmente → modelo que clasifica automáticamente nuevos tickets.
Generación de informes médicos/legales
Fine-tune con informes profesionales → modelo que genera borradores con vocabulario y estructura apropiada.
Code completion específico
Fine-tune con tu codebase → autocompletado que conoce tu stack y convenciones.
Fine-tuning vs RAG
| Aspecto | Fine-tuning | RAG |
|---|---|---|
| Adapta a estilo/formato | ✓ Excelente | ✗ No |
| Información actualizada | ✗ Difícil (re-entrenar) | ✓ Cambia documentos |
| Coste inicial | Alto (días de entrenamiento) | Bajo (días de setup) |
| Mantenimiento | Re-entrenar para nuevos datos | Cambiar/añadir documentos |
| Latencia | Igual o mejor que base | Algo más alta (búsqueda + LLM) |
| Hallucinations | Mejora algo | Reduce mucho |
| Tamaño de datos requeridos | 1.000-100.000+ ejemplos | Cualquier cantidad |
Cuándo usar fine-tuning
- Necesitas un estilo/tono muy específico
- La tarea es muy repetitiva y bien definida
- Quieres bajar coste por inferencia a largo plazo (modelo más pequeño puede igualar a uno grande tras fine-tune)
- Tienes muchos ejemplos de calidad
Cuándo usar RAG en su lugar
- Tu info cambia frecuentemente
- Necesitas citar fuentes
- Quieres reducir hallucinations sobre datos factuales
- No tienes miles de ejemplos formateados perfectamente
Costes
Fine-tuning GPT
OpenAI ofrece fine-tuning de GPT-4o-mini, GPT-3.5-turbo:
- Coste entrenamiento: 2-8$ por millón de tokens del training data
- Coste inferencia post fine-tune: 1,5-3x mayor que el modelo base
Total ejemplo:
- 10.000 ejemplos × 500 tokens cada uno = 5M tokens
- Coste training: ~20$
- Coste inferencia: +1,5x
Fine-tuning open source (Llama, Mistral)
- Hardware: GPUs (rental ~1-4$/hora en RunPod, ~2-10$/hora en AWS p4)
- Tiempo: 4-48 horas según modelo y datos
- Coste total típico: 20-300$ por entrenamiento
Vs RAG
RAG: setup inicial 50-200€ + 0,05-0,30€ por consulta. Más previsible.
Limitaciones
Calidad del dataset es crítica
Si tus ejemplos son mediocres, el modelo aprende mediocridad. Garbage in, garbage out.
Catastrophic forgetting
Fine-tuning puede hacer que el modelo “olvide” parte de su conocimiento general. Si fine-tunes para legal español, puede que se vuelva peor en matemáticas.
Coste de actualizar
Cada vez que tus datos cambian sustancialmente, re-entrenar. RAG es más ágil.
Vendor lock-in
Si fine-tunes sobre OpenAI GPT, dependes de OpenAI. Cambiar a Claude requiere re-entrenar.
Mejores prácticas
Empezar con RAG
Si nunca has hecho IA en producción, empieza con RAG. Más simple, más barato, más flexible.
Considerar fine-tuning solo cuando RAG no basta
Si tras meses con RAG ves que necesitas:
- Cambiar drásticamente el tono
- Reducir mucho latencia
- Bajar coste a escala alta
Entonces evalúa fine-tuning.
Combinar ambos
En sistemas avanzados: fine-tune para tono/formato + RAG para datos factuales. Lo mejor de los dos.
Para una pyme española
99% de las pymes no necesitan fine-tuning. RAG con un buen LLM general (Claude 4.7, GPT-5, Gemini 2.5) cubre todos los casos típicos: atención al cliente, cualificación de leads, soporte interno.
Fine-tuning solo merece la pena para:
- Empresas con volumen muy alto de inferencias (>1M/mes)
- Casos muy especializados donde el modelo general no rinde
- Apps comerciales basadas en IA como producto principal