En este artículo
- Cuándo si necesitas fine-tuning
- Cuándo NO necesitas fine-tuning
- Fine-tuning vs RAG vs prompting
- Arbol de decisión: RAG vs fine-tuning
- Análisis de costes
- Preparacion del dataset
- El proceso paso a paso
- Plataformas de fine-tuning
- Metodología de evaluación
- Mantenimiento post-deploy
- Preguntas frecuentes
- Siguiente paso
Analogia: un LLM base es un medico generalista. Con fine-tuning, lo conviertes en cardiologo. No le ensenas medicina desde cero, le especializas.
Resumen rápido
Guía completa de fine-tuning de modelos LLM: que es, cuando tiene sentido, cuando es mejor RAG o prompting, costes reales y proceso paso a paso.
Cuándo si necesitas fine-tuning
Estilo y tono consistente: quieres que el modelo escriba siempre en tu voz de marca, con tu estructura y vocabulario. Ejemplo: un chatbot de soporte que responda exactamente como tu equipo.
Formato de output específico: necesitas que el modelo siempre genere JSON con un schema concreto, o que clasifique en categorías predefinidas con precision del 95%+.
Dominio técnico muy especializado: terminologia legal de un pais específico, nomenclatura medica, jerga industrial. Cuando el system prompt no es suficiente para ensenar el dominio.
Latencia y coste en producción: un modelo fine-tuned pequeno (7B parámetros) puede ser más rápido y barato que un modelo grande (70B) con un prompt largo.
Comportamiento que no se puede describir con reglas: a veces el output deseado es difícil de especificar con instrucciones explicitas, pero fácil de demostrar con ejemplos. El fine-tuning aprende patrones implicitos que un prompt no puede capturar.
Cuándo NO necesitas fine-tuning
Si un buen prompt lo resuelve: antes de fine-tunear, prueba con un prompt detallado, few-shot examples y un system prompt bien disenado. El 70% de los casos donde alguien cree necesitar fine-tuning se resuelven con mejor prompting.
Si necesitas datos actualizados: fine-tuning es estatico. Si tus datos cambian semanalmente, RAG es mejor opcion.
Si tienes pocos datos: con menos de 100 ejemplos de calidad, el fine-tuning no mejora significativamente. Con menos de 50, puede empeorar.
Si no puedes evaluar: sin metricas claras para medir si el modelo mejoro, no sabes si el fine-tuning funciono. Necesitas un dataset de evaluación antes de empezar.
La regla de oro
Intenta resolver tu problema en este orden: 1) mejor prompt, 2) RAG, 3) fine-tuning. Solo pasa al siguiente paso cuando el anterior no alcanza. El 80% de los casos se quedan en los pasos 1 o 2.
Fine-tuning vs RAG vs prompting
Prompting: coste cero, implementación inmediata, ideal para el 70% de casos. Limitado por la ventana de contexto y la capacidad del modelo base. Lee sobre few-shot learning para maximizarlo.
RAG: coste bajo (vector DB + embeddings), ideal para Q&A sobre documentos, datos que cambian y necesidad de citar fuentes. No modifica el modelo.
Fine-tuning: coste medio-alto (datos + entrenamiento + evaluación), ideal para estilo, formato y dominios especializados. Modifica el modelo.
RAG + Fine-tuning: la combinacion más potente. El modelo fine-tuned entiende tu dominio, y RAG le da acceso a datos actualizados. Coste alto, solo para producción seria.
Arbol de decisión: RAG vs fine-tuning
Usa este arbol para decidir que necesitas en tu caso concreto:
Pregunta 1: Tus datos cambian frecuentemente?
- Si cambian semanalmente o más: RAG. Fine-tuning quedaria desactualizado.
- Si son relativamente estaticos (cambian cada 3-6 meses): fine-tuning es viable.
Pregunta 2: Necesitas citar fuentes exactas?
- Si necesitas que el modelo diga "segun el documento X, página Y": RAG. Fine-tuning no cita fuentes, internaliza conocimiento.
- Si solo necesitas que el modelo "sepa" sobre tu dominio sin citar: fine-tuning.
Pregunta 3: Tu problema es de estilo/formato o de conocimiento?
- Estilo (tono de marca, formato JSON específico, estructura de respuesta): fine-tuning.
- Conocimiento (responder preguntas sobre tus documentos): RAG.
- Ambos: RAG + fine-tuning.
Pregunta 4: Cuantas queries diarias tendras?
- Menos de 100/día: usa API (OpenAI, Anthropic) con buen prompting. El coste no justifica fine-tuning.
- 100-10.000/día: fine-tuning de modelo pequeno reduce coste por query significativamente.
- Más de 10.000/día: fine-tuning + self-hosting es la opcion más económica a largo plazo.
Pregunta 5: Tienes los datos?
- Menos de 100 pares de alta calidad: prompting + RAG. No hagas fine-tuning.
- 100-500 pares: fine-tuning con LoRA (bajo riesgo, bajo coste, mejora moderada).
- 500-5.000 pares: fine-tuning completo o QLoRA. Mejora significativa esperada.
- Más de 5.000 pares: considerar full fine-tuning o continual pre-training.
Análisis de costes
El coste real de fine-tuning no es solo el entrenamiento. Hay costes ocultos que debes considerar:
Costes de entrenamiento (one-time):
- OpenAI GPT-4o mini: ~3 USD/M tokens entrenamiento. Dataset de 1.000 ejemplos: 5-20 USD. Re-entrenar mensualmente: 60-240 USD/ano.
- Together AI: desde 0,50 USD/hora GPU. Modelo 7B, 1.000 ejemplos: 2-4 USD. Modelo 70B: 16-48 USD.
- Self-hosted (RTX 4090): hardware ~1.600 EUR (amortizable). Electricidad: ~0,30 EUR/hora. Fine-tuning 7B: 1-2 horas. Coste marginal: <1 EUR.
- Google Colab Pro: 10 USD/mes. Suficiente para fine-tuning de modelos hasta 13B con QLoRA.
Costes de inferencia (ongoing):
- OpenAI fine-tuned GPT-4o mini: ~12 USD/M tokens output (2x el modelo base). A 1.000 queries/día de 500 tokens: ~180 USD/mes.
- Self-hosted 7B (vLLM en A100): ~2 USD/hora servidor. A 1.000 queries/día: ~60 USD/mes. A 10.000 queries/día: sigue siendo ~60 USD/mes (el servidor maneja el volumen).
- Self-hosted 7B (RTX 4090 propia): solo electricidad. ~30 EUR/mes 24/7.
Costes ocultos (no ignorar):
- Preparacion de datos: el mayor coste real. 20-100 horas de trabajo humano para crear y curar 1.000 ejemplos de calidad.
- Evaluación: crear dataset de test, ejecutar evals, analizar resultados. 10-20 horas por iteracion.
- Iteracion: rara vez funciona al primer intento. Presupuesta 3-5 iteraciones.
- Mantenimiento: model drift, datos nuevos, re-entrenamiento periodico. 5-10 horas/mes ongoing.
Preparacion del dataset
La calidad del dataset determina el 80% del resultado. Un dataset mediocre produce un modelo mediocre, sin importar cuantas epochs entrenes.
Principios de un buen dataset:
- Representativo: los ejemplos deben cubrir la diversidad de inputs que el modelo vera en producción. Si tu modelo clasificara emails en 10 categorías, necesitas ejemplos de las 10.
- Consistente: si dos ejemplos similares tienen outputs diferentes, el modelo no sabra cual imitar. Revisa inconsistencias antes de entrenar.
- De alta calidad: cada ejemplo debe ser la respuesta "perfecta" que quieres que el modelo produzca. No entrenes con respuestas "aceptables".
- Diverso: varia la longitud, complejidad y vocabulario de los inputs. Si todos tus ejemplos son de 3 lineas, el modelo no sabra manejar inputs de 30.
Cómo generar datos de entrenamiento con IA:
# 1. Genera ejemplos sinteticos con un modelo potente
# Usa Claude/GPT-4 para generar pares input/output
# 2. Filtra manualmente (CRITICO)
# Revisa cada ejemplo. Descarta los malos.
# Ratio tipico: genera 3x, queda 1x tras filtrar.
# 3. Formato JSONL para fine-tuning (ChatML)
{"messages": [
{"role": "system", "content": "Eres un clasificador de tickets de soporte..."},
{"role": "user", "content": "Mi factura no coincide con lo acordado"},
{"role": "assistant", "content": "categoria: facturación\nprioridad: media\nsentimiento: negativo"}
]}
# 4. Divide: 80% train, 10% validation, 10% test
# NUNCA evalues con datos de entrenamiento
Anti-patron: datos sinteticos sin filtrar
Generar 5.000 ejemplos con GPT-4 y usarlos directamente es un error comun. El modelo grande produce outputs correctos el 85% del tiempo. Ese 15% de ruido contamina tu fine-tuning. Siempre filtra manualmente o con un pipeline de validación automática.
El proceso paso a paso
1. Preparar datos: necesitas pares de entrada/salida en formato JSONL. Mínimo 100 ejemplos de calidad, ideal 500-5.000. Cada ejemplo debe ser representativo de lo que quieres que el modelo haga.
# Formato JSONL para fine-tuning (ChatML)
{"messages": [
{"role": "system", "content": "Eres un asistente legal espanol..."},
{"role": "user", "content": "Que plazo tengo para recurrir...?"},
{"role": "assistant", "content": "Segun el art. 46 LJCA..."}
]}
{"messages": [
{"role": "system", "content": "Eres un asistente legal espanol..."},
{"role": "user", "content": "Necesito abogado para...?"},
{"role": "assistant", "content": "En jurisdiccion contenciosa..."}
]}
2. Dividir dataset: 80% entrenamiento, 10% validación, 10% test. Nunca evalues con datos de entrenamiento.
3. Entrenar: sube los datos a la plataforma, configura hiperparametros (epochs, learning rate) y lanza el entrenamiento.
4. Evaluar: compara el modelo fine-tuned contra el base en tu dataset de test. Si no mejora significativamente, el fine-tuning no merecio la pena.
5. Iterar: mejora los datos (más ejemplos, mejor calidad), ajusta hiperparametros y reentrena.
Plataformas de fine-tuning
OpenAI Fine-tuning: el más simple. Dashboard web, API, soporte GPT-4o mini y GPT-4o. Precio: desde 3 USD/M tokens de entrenamiento. Ventaja: no necesitas GPUs. Desventaja: modelo cerrado, dependencia del proveedor, no puedes self-hostear el resultado.
Together AI: plataforma cloud para fine-tuning de modelos open-weight (Llama, Mistral, Qwen). Desde 0,50 USD/hora GPU. Ventaja: puedes descargar el modelo resultante y self-hostear. Incluye evaluación integrada.
Hugging Face + AutoTrain: interfaz visual para fine-tuning de modelos open-weight. Gratis en tu hardware. AutoTrain simplifica la configuración: sube tu JSONL, elige modelo, clic. Resultado: modelo descargable.
Unsloth: libreria Python que acelera fine-tuning 2-5x con menos memoria. Ideal para hardware limitado. Soporta QLoRA en GPUs de 16-24 GB. Open source, gratis.
Axolotl: framework completo de fine-tuning con soporte para LoRA, QLoRA y full fine-tuning. Más configurable que Unsloth, requiere más conocimiento técnico. Ideal para equipos de ML.
Google Vertex AI: fine-tuning de Gemini y modelos open-weight en la nube de Google. Integración con BigQuery para datos. Precio competitivo para volumen alto.
Comparativa rápida:
- Quiero algo simple, no me importa vendor lock-in: OpenAI
- Quiero control, modelo open-weight, cloud: Together AI
- Quiero gratis, tengo GPU propia: Unsloth / Axolotl
- Quiero interfaz visual sin código: HuggingFace AutoTrain
Metodología de evaluación
Sin evaluación rigurosa, no sabes si tu fine-tuning funciono. Metodología recomendada:
1. Metricas cuantitativas:
- Accuracy / F1-score: para clasificación. Compara modelo base vs fine-tuned en tu test set.
- BLEU / ROUGE: para generación de texto. Compara output generado vs referencia humana.
- Exact match: para formatos estructurados (JSON). El output cumple el schema si/no?
- Loss en validación: si sube mientras baja en train, estas overfitting. Para.
2. Evaluación humana (A/B test):
- Presenta 50 outputs del modelo base y 50 del fine-tuned (anonimizados, orden aleatorio).
- Un evaluador humano elige cual es mejor en cada par.
- Si el fine-tuned no gana en al menos 60% de los casos, el fine-tuning no anade valor suficiente.
3. Evaluación con LLM como juez:
- Usa un modelo potente (Claude, GPT-4) para evaluar outputs del fine-tuned.
- Prompt: "Evalua esta respuesta del 1-5 en: precision, completitud, formato, tono."
- Rápido y barato, pero tiene sesgos. Usalo como complemento, no como única metrica.
4. Regression testing:
- El fine-tuning puede mejorar en tu tarea pero empeorar en capacidades generales.
- Testea con prompts generales para asegurarte de que no has roto nada.
- Esto es especialmente importante con full fine-tuning (menos con LoRA).
Mantenimiento post-deploy
Fine-tuning no es "entrenar y olvidar". Requiere mantenimiento continuo:
Model drift: con el tiempo, los patrones de input cambian. Las consultas de tus usuarios evolucionan. El modelo entrenado con datos de enero puede no funcionar bien con inputs de julio. Solución: monitoriza precision mensualmente y re-entrena cuando cae por debajo de tu umbral.
Nuevos datos: acumula ejemplos nuevos continuamente. Cada vez que un humano corrige un output del modelo, es un nuevo ejemplo de entrenamiento. Implementa un pipeline de feedback loop.
Actualizacion del modelo base: cuando sale una nueva versión del modelo base (Llama 4, GPT-5), evalua si merece la pena re-hacer el fine-tuning sobre la nueva base. Modelos más nuevos suelen requerir menos fine-tuning para el mismo resultado.
Calendario de mantenimiento recomendado:
- Semanal: revisar metricas de precision en producción
- Mensual: agregar nuevos ejemplos al dataset de entrenamiento
- Trimestral: re-entrenar si la precision ha caido más de 5 puntos
- Semestral: evaluar si un modelo base más nuevo mejora sin fine-tuning
Preguntas frecuentes
Qué es fine-tuning en IA?
Fine-tuning es el proceso de reentrenar un modelo de lenguaje pre-existente con tus propios datos para que se especialice en un dominio, estilo o tarea concreta. Es como ensenar a un profesional generalista a ser especialista en tu área.
Cuanto cuesta hacer fine-tuning?
Depende del proveedor y tamano del modelo. Fine-tuning de GPT-4o mini en OpenAI cuesta ~3 USD por millon de tokens de entrenamiento. Un dataset tipico de 1.000 ejemplos cuesta 5-50 USD en entrenamiento. Self-hosted con GPU propia: 0 en compute pero requiere hardware (GPU de 24GB+).
Cuándo es mejor RAG que fine-tuning?
RAG es mejor cuando: los datos cambian frecuentemente, necesitas citar fuentes, el volumen de documentos es grande, o quieres respuestas basadas en hechos específicos. Fine-tuning es mejor cuando: necesitas un estilo específico, un formato de output consistente, o rendimiento en un dominio técnico muy concreto.
Cuantos datos necesito para fine-tuning?
Mínimo 100 ejemplos de calidad para ver mejora. Ideal 500-5.000 ejemplos. Con menos de 50, el fine-tuning puede empeorar el modelo. La calidad importa más que la cantidad: 200 ejemplos perfectos superan a 2.000 mediocres.
Se puede hacer fine-tuning gratis?
Si, con hardware propio. Unsloth + un modelo open-weight (Llama, Mistral, Qwen) se puede fine-tunear en una GPU de 24GB (RTX 4090, ~1.600 EUR). Google Colab ofrece GPUs gratuitas limitadas. El coste real es tu tiempo preparando datos y evaluando resultados.
Siguiente paso
Antes de fine-tunear, asegurate de haber agotado las opciones de prompting y RAG. Si confirmas que necesitas fine-tuning, empieza con un modelo pequeno (7B) y un dataset de 200 ejemplos. Mide, itera, escala.
En IAcademy cubrimos todo el espectro: desde prompting profesional hasta técnicas avanzadas como RAG y fine-tuning.
Domina las técnicas avanzadas de IA
Los 3 primeros módulos de IAcademy son gratis. Los módulos avanzados cubren RAG, agentes y fine-tuning.
Empieza gratisCurso completo: 108 módulos de IA aplicada
11 especializaciones por departamento. Dashboard con progreso. Quizzes y skills desbloqueables. Desde 399 EUR.