Los modelos de lenguaje grandes como GPT-4, Claude y Llama son notablemente capaces tal como vienen. Pero para casos de uso especializados — análisis de documentos legales, codificación médica, atención al cliente con productos propietarios — el conocimiento de un modelo general no es suficiente.
El fine-tuning adapta un modelo pre-entrenado a tu dominio específico. Esta guía cubre cuándo merece la pena hacerlo y cómo abordarlo.
¿Qué es el fine-tuning?
El fine-tuning toma un LLM pre-entrenado y continúa su entrenamiento con un conjunto de datos seleccionado específico para tu caso de uso. A diferencia de la ingeniería de prompts, que guía al modelo mediante instrucciones, el fine-tuning modifica los pesos del modelo para internalizar conocimiento del dominio y patrones de comportamiento.
El fine-tuning puede:
- Enseñar al modelo terminología y conceptos específicos del dominio
- Aplicar formato de salida (JSON, esquemas específicos, tono de marca)
- Mejorar la precisión en tareas especializadas
- Reducir las alucinaciones en consultas específicas del dominio
- Comprimir instrucciones de varios pasos en el comportamiento del modelo
El fine-tuning no puede:
- Inyectar conocimiento factual nuevo que no estuviera en los datos de entrenamiento (para eso usa RAG)
- Solucionar limitaciones fundamentales de capacidad del modelo (razonamiento, matemáticas)
- Eliminar todas las alucinaciones
Cuándo hacer fine-tuning
El fine-tuning es la opción correcta cuando:
Tienes un dominio especializado con terminología única. Contratos legales, historiales médicos, regulaciones financieras — estos dominios usan el lenguaje de forma diferente al texto web general. El fine-tuning ayuda al modelo a entender significados específicos del contexto.
Necesitas un formato de salida consistente. Si tu aplicación requiere que el modelo genere un esquema JSON específico o siga reglas de formato estrictas, el fine-tuning incorpora ese comportamiento en lugar de depender de instrucciones en el prompt.
Tienes tareas de alto volumen y bien definidas. Clasificación de atención al cliente, moderación de contenidos, detección de intenciones — las tareas con datos etiquetados abundantes y ground truth claro se benefician más del fine-tuning.
Cuándo NO hacer fine-tuning:
- Necesitas que el modelo responda preguntas sobre tus documentos específicos (usa RAG)
- Tienes menos de unos cientos de ejemplos de alta calidad (la ingeniería de prompts es más efectiva)
- Tu caso de uso cambia con frecuencia (el fine-tuning es costoso de actualizar)
El proceso de fine-tuning
1. Preparación del conjunto de datos: Selecciona entre 500 y 5000 ejemplos de pares entrada-salida. La calidad importa mucho más que la cantidad. Mil ejemplos cuidadosamente revisados y correctamente etiquetados superan a diez mil ruidosos.
2. Formateo: Estructura los datos como turnos de conversación o pares instrucción-respuesta que coincidan con tu caso de uso objetivo. La mayoría de las plataformas esperan un formato JSONL específico.
3. Entrenamiento: Elige tu modelo base (GPT-4o-mini para tareas simples, Llama 3 para on-premise). El entrenamiento lleva de horas a días dependiendo del tamaño del conjunto de datos y los recursos de cómputo.
4. Evaluación: Reserva entre el 10 y el 20 % de tus datos para evaluación. Compara las salidas del modelo ajustado tanto con las líneas base (modelo base con ingeniería de prompts) como con los datos de referencia.
5. Despliegue: Sirve el modelo ajustado a través de la API del proveedor o self-hosting usando herramientas como vLLM u Ollama.
Fine-tuning eficiente en parámetros
El fine-tuning completo modifica todos los pesos del modelo, lo que es costoso y produce un artefacto grande. Los métodos eficientes en parámetros modifican una fracción de los parámetros:
- LoRA (Low-Rank Adaptation): entrena matrices de descomposición de rango insertadas en el modelo. Los pesos base permanecen congelados. Produce archivos adaptadores pequeños (unos pocos MB) que son combinables e intercambiables.
- QLoRA: combina LoRA con cuantización de 4 bits, permitiendo fine-tuning en GPUs de consumo.
Consideraciones para producción
- Deriva del modelo: las actualizaciones del modelo base por parte del proveedor pueden afectar a las versiones ajustadas. Fija las versiones del modelo.
- Pipelines de evaluación: la evaluación automatizada contra conjuntos de prueba reservados detecta regresiones.
- Coste: los costes de fine-tuning varían ampliamente — OpenAI cobra por token de entrenamiento, mientras que los modelos open source requieren cómputo GPU.
- Privacidad de datos: enviar datos a APIs de terceros puede violar requisitos de cumplimiento. Puede ser necesario el self-hosting de un modelo open source.
El fine-tuning transforma LLMs de propósito general en herramientas específicas de dominio que ofrecen resultados fiables y consistentes para tu caso de uso particular.
¿Estás explorando la IA para tu negocio? En Vynta diseñamos e implementamos pipelines de fine-tuning que adaptan LLMs a tu dominio y caso de uso específicos.