Fine-Tuning vs RAG: El Framework de Decision que Nadie Explica
"Deberia hacer fine-tuning o usar RAG?" Escucho esta
pregunta cada semana. De ingenieros en startups, de
arquitectos en empresas grandes, de CTOs intentando
lanzar funcionalidades de IA. Y casi siempre, la
pregunta en si esta mal planteada.
Fine-tuning y RAG no son alternativas. Son herramientas
distintas que resuelven problemas distintos. Preguntar
"fine-tuning o RAG?" es como preguntar "deberia usar
una base de datos o un API?" La respuesta depende de
lo que realmente estas intentando hacer.
He puesto en produccion sistemas usando solo
fine-tuning, solo RAG, ambos juntos, y ninguno. La
decision correcta nunca es sobre preferencia
tecnologica. Es sobre que problema estas resolviendo,
como son tus datos, y cuanto quieres gastar.
Lo que Fine-Tuning Realmente Hace
Fine-tuning cambia como responde el modelo. No
agrega conocimiento nuevo. Deja que lo repita porque
es lo mas malinterpretado en IA aplicada: fine-tuning
no le ensena hechos nuevos al modelo.
Lo que hace es modificar el comportamiento del modelo.
Tono, formato, patrones de razonamiento, convenciones
de un dominio especifico. Cuando hice fine-tuning de
un modelo para una empresa de tecnologia legal, el
modelo no aprendio jurisprudencia nueva. Aprendio a
escribir como abogado -- argumentos estructurados,
formato de citas correcto, conclusiones con reservas.
Piensalo como una contratacion. Contratas a alguien
con inteligencia general y luego lo entrenas en la
guia de estilo de tu empresa. No aprende tus datos
propietarios de repente. Aprende a comunicarse como
tu esperas.
Cuando fine-tuning funciona bien
- Formato de salida consistente: Necesitas
respuestas JSON que coincidan con un schema
especifico cada vez
- Voz de dominio: Tono medico, legal o financiero
que prompt engineering no puede producir de forma
confiable
- Patrones de razonamiento: Quieres que el modelo
siga el framework de decision de tu empresa, no uno
generico
- Reduccion de latencia: Un modelo pequeno con
fine-tuning puede igualar la calidad de un modelo
grande con 3-5x menor latencia
Lo que fine-tuning no puede hacer
No puede darle al modelo acceso a tu base de datos
propietaria. No puede hacer que el modelo conozca
eventos posteriores a su corte de entrenamiento. No
puede ensenarle hechos especificos de forma confiable
-- los estudios muestran que los modelos con
fine-tuning siguen alucinando detalles factuales a
tasas similares a los modelos base. El comportamiento
cambia. El conocimiento no.
Lo que RAG Realmente Hace
RAG le da al modelo acceso a informacion en el
momento de la consulta. No cambia como se comporta
el modelo. Cambia lo que el modelo sabe cuando
responde una pregunta especifica.
La mecanica: un usuario hace una pregunta, buscas en
una base de conocimiento contexto relevante, metes ese
contexto en el prompt junto con la pregunta, y el
modelo genera una respuesta basada en los documentos
recuperados.
Construi un sistema RAG para una fintech que necesitaba
responder preguntas sobre su manual de cumplimiento
regulatorio de 2,000 paginas. El comportamiento del
modelo no necesitaba cambiar. Ya sabia como resumir
y explicar. Solo necesitaba acceso a la informacion
correcta en el momento correcto.
Cuando RAG funciona bien
- Datos privados o propietarios: Documentos de
empresa, wikis internas, registros de clientes
- Informacion que se actualiza frecuentemente:
Precios, inventario, politicas que cambian cada
semana
- Requisitos de auditoria: Necesitas citar fuentes
y mostrar de donde vienen las respuestas
- Bases de conocimiento grandes: Miles de documentos
que nunca cabrian en un dataset de fine-tuning
Lo que RAG no puede hacer
No puede cambiar la personalidad del modelo, su formato
de salida, ni su estilo de razonamiento. Si el modelo
base escribe como un chatbot y necesitas que escriba
como un radiologo, RAG no va a arreglar eso. Vas a
obtener respuestas estilo chatbot que casualmente
referencian documentos de radiologia.
La Matriz de Decision
Este es el framework que uso. Toma unos cinco minutos
trabajarlo, y me ha salvado de sobre-disenar mas veces
de las que puedo contar.
| Lo que Necesitas | Solucion | Ejemplo |
|---|---|---|
| Comportamiento o formato de dominio | Fine-tune | Escritos legales en formato judicial |
| Acceso a datos actuales o privados | RAG | Q&A sobre documentacion interna |
| Comportamiento y conocimiento | Fine-tune + RAG | Asistente medico con expedientes |
| Ninguno (tarea general, datos publicos) | Prompt engineering | Chatbot de soporte al cliente |
La cuarta fila es la que la gente se salta. Prompt
engineering cubre aproximadamente el 80% de los casos
de uso que veo en produccion. Antes de recurrir a
fine-tuning o RAG, dedica una semana seria a prompt
engineering. Me refiero a prompts estructurados con
ejemplos, chain-of-thought, schemas de salida. No
"eres un asistente util."
Si prompt engineering te lleva al 85% de calidad y tus
usuarios estan contentos, lancalo. Siempre puedes
agregar fine-tuning o RAG despues cuando tengas datos
reales de uso diciendote donde falla la calidad.
Comparacion de Costos: Numeros Reales
Aqui es donde la mayoria de los posts agitan las manos.
Deja que te de numeros reales con precios de 2026 para
que puedas armar un caso de negocio.
Costos de Fine-Tuning
Entrenamiento (unico por version de modelo):
- Fine-tuning de GPT-4o mini: $3.00 por 1M tokens
de entrenamiento
- Fine-tuning de GPT-4o: $25.00 por 1M tokens de
entrenamiento
- Un dataset tipico de 500 ejemplos a ~1,000 tokens
cada uno = 500K tokens
- Costo total de entrenamiento: $1.50 a $12.50 por
ejecucion
Eso es sorprendentemente barato. El costo oculto esta
en la curacion del dataset. Pase 40 horas construyendo
un dataset de calidad para un proyecto reciente. A
tarifas de ingenieria, eso son $6,000-$10,000 de mano
de obra por los datos, y $5 por el entrenamiento real.
Inferencia (continuo):
- GPT-4o mini con fine-tuning: $0.30 por 1M tokens de
entrada, $1.20 por 1M tokens de salida
- GPT-4o con fine-tuning: $3.75 por 1M tokens de
entrada, $15.00 por 1M tokens de salida
La inferencia con fine-tuning cuesta aproximadamente
1.5x el modelo base. Pero si hiciste fine-tuning de un
modelo pequeno para igualar la calidad de uno grande,
podrias ahorrar 5-10x en inferencia. Esa matematica
funciona a escala.
Costos de RAG
RAG tiene cuatro componentes de costo. Todos son
continuos.
Generacion de embeddings:
- OpenAI text-embedding-3-small: $0.02 por 1M tokens
- Con 10,000 consultas/dia a 50 tokens por consulta:
~$0.30/dia
Base de datos vectorial:
- Pinecone Starter: gratis hasta 100K vectores
- Pinecone Standard: ~$70/mes por 1M vectores
- Supabase pgvector: $25/mes (infraestructura
compartida)
- Qdrant auto-hospedado: $50-200/mes (costos de
computo)
Latencia de recuperacion:
- Busqueda vectorial: 20-100ms por consulta
- Re-ranking (si se usa): 50-200ms adicionales
- Esto se acumula. Si la respuesta base del LLM es
500ms, RAG agrega 15-40% de overhead en latencia.
Inferencia del LLM con contexto:
- Los chunks recuperados agregan 500-3,000 tokens por
consulta
- A precios de GPT-4o ($2.50 por 1M tokens de entrada),
eso es $0.001-$0.008 por consulta solo por el
contexto recuperado
- Con 10,000 consultas/dia: $10-$80/dia en contexto
adicional
Costo total de RAG a 10,000 consultas/dia:
$300-$2,500/mes dependiendo de tus decisiones de
arquitectura. Cubri como reducir esto en mi
post sobre optimizacion de costos de RAG.
La Comparacion
Para un sistema manejando 10,000 consultas por dia:
| Componente | Solo Fine-Tune | Solo RAG | Ambos |
|---|---|---|---|
| Costo de setup | $5K-$15K (datos + entrenamiento) | $1K-$5K (pipeline) | $10K-$20K |
| Infra mensual | $0 | $100-$300 | $100-$300 |
| Inferencia mensual | $400-$1,200 | $600-$2,500 | $500-$1,500 |
| Mantenimiento | Bajo (reentrenar trimestral) | Medio (actualizacion de indices) | Alto |
Fine-tuning tiene mayor costo inicial pero menor costo
continuo. RAG tiene menor costo inicial pero overhead
continuo de infra y mantenimiento. El hibrido es el
mas caro de construir y mantener -- usalo solo cuando
genuinamente necesites tanto cambio de comportamiento
como acceso a conocimiento.
El Patron Hibrido
A veces realmente necesitas ambos. Construi un sistema
hibrido para una empresa de salud que necesitaba un
modelo que: (a) escribiera notas clinicas en un formato
especifico con terminologia medica apropiada, y (b)
referenciara expedientes de pacientes y protocolos de
tratamiento.
Fine-tuning manejo el comportamiento: formato de notas
consistente, lenguaje medico apropiado, secciones de
evaluacion estructuradas. RAG manejo el conocimiento:
historial del paciente, medicamentos actuales, guias
clinicas relevantes.
Arquitectura
El flujo se ve asi:
Consulta del Usuario
|
v
[Embedding Model] --> [Vector DB Search]
| |
| Contexto Recuperado
| |
v v
[LLM con Fine-Tuning] <-- [Prompt Template]
|
v
Respuesta Formateada
El modelo con fine-tuning recibe el contexto recuperado
a traves de un prompt template. Ya sabe como formatear
notas clinicas. El pipeline de RAG le da los datos
especificos del paciente para referenciar. Cada
componente hace lo que sabe hacer bien.
El orden de implementacion importa
Si estas construyendo un sistema hibrido, construye RAG
primero. Te explico por que:
- RAG te da valor inmediato -- los usuarios pueden
consultar sus datos de inmediato
- Los datos de uso de RAG te dicen donde necesita
cambiar el comportamiento, lo cual informa tu
dataset de fine-tuning
- Puedes evaluar si fine-tuning realmente es necesario
antes de invertir en curacion de datasets
He visto equipos pasar meses haciendo fine-tuning de un
modelo solo para descubrir que un prompt template bien
estructurado con ejemplos recuperados por RAG resolvia
el mismo problema con una decima parte del esfuerzo.
Cuando Saltarse Ambos
Esta es la seccion mas util de este post, y la que
nadie quiere escuchar.
Prompt engineering maneja la mayoria de los casos de
uso. No el 50%. No el 60%. Estimo que el 80% de los
sistemas de IA en produccion que he revisado
funcionarian bien solo con prompt engineering bien
pensado.
Esto es lo que significa "prompt engineering bien
pensado":
- System prompts con restricciones explicitas: No
"eres un asistente util" sino un system prompt de
200 lineas con formato de salida, manejo de errores,
casos limite y ejemplos
- Ejemplos few-shot: 3-5 ejemplos de pares
ideales de entrada/salida en el prompt
- Schemas de salida: Structured output con
validacion de JSON schema, no texto libre
- Chain-of-thought: Pasos de razonamiento
explicitos para consultas complejas
- Guardrails: Validacion de entrada, filtrado de
salida y respuestas de fallback
Un sistema de prompts bien disenado cuesta $0 en
infraestructura, toma dias en vez de meses para
construir, y puede iterarse sin reentrenar nada. El
tradeoff es mayor costo de tokens por consulta (prompts
mas largos) y menos consistencia en casos limite.
El checklist de decision
Antes de empezar a construir fine-tuning o RAG:
- Has dedicado al menos una semana a prompt
engineering? No una tarde. Una semana.
- Tienes evals cuantitativas mostrando que prompt
engineering falla? "No se siente bien" no es una
medicion.
- Tienes al menos 200 ejemplos etiquetados? Los
necesitas para fine-tuning. Si no los tienes, no
tienes suficientes datos para hacer fine-tuning.
- Tu base de conocimiento es mas grande de lo que
cabe en una ventana de contexto? Los modelos
modernos aceptan 128K-1M tokens. Quizas no necesitas
RAG en absoluto.
- Has calculado la economia unitaria? Conoce tu
costo por consulta antes y despues, no solo si
"funciona."
El Framework en la Practica
Recientemente asesore un sistema para una empresa de
e-commerce. Querian una IA que pudiera:
- Responder preguntas sobre 50,000 productos
- Responder en el tono casual e ingenioso de la marca
- Manejar devoluciones, tallas y consultas de envio
- Referenciar inventario en tiempo real
Su plan inicial era hacer fine-tuning de GPT-4o con su
voz de marca y construir un sistema RAG para datos de
productos. Tiempo estimado de construccion: 3 meses.
Costo mensual estimado: $4,000.
Lo que realmente lanzamos:
- Un system prompt detallado con ejemplos de voz de
marca y 5 conversaciones few-shot (prompt engineering)
- RAG sobre su catalogo de productos y base de datos
de FAQ (necesario para 50,000 productos e inventario
en tiempo real)
- Sin fine-tuning
Tiempo de construccion: 3 semanas. Costo mensual: $800.
La voz de marca era suficientemente consistente con
ejemplos few-shot como para que fine-tuning no valiera
la carga de mantenimiento. Ahorramos dos meses de
tiempo de ingenieria y $3,200 por mes al preguntar
"realmente necesitamos esto?" antes de construir.
La Conclusion
La decision no es fine-tuning vs RAG. La decision es:
que problema estoy resolviendo, y cual es la
arquitectura mas simple que lo resuelve?
Empieza con prompt engineering. Agrega RAG si necesitas
conocimiento externo. Agrega fine-tuning si necesitas
cambio de comportamiento que los prompts no pueden
lograr. Construye el hibrido solo cuando hayas probado
que necesitas ambos.
La mejor arquitectura es la que no sobre-construyes.
Lanza lo mas simple que funcione, midelo en produccion,
y agrega complejidad solo cuando los datos te lo digan.