Saltar al contenido principal

Capítulo 2: ¿Por qué RAG? Problemas con los LLM puros

Introducción​

Los modelos de lenguaje grande como GPT-4, Claude y Llama son increíblemente potentes, pero tienen limitaciones fundamentales que los hacen inadecuados para muchas aplicaciones empresariales sin algún tipo de aumento. Este capítulo explora estas limitaciones y muestra cómo RAG aborda cada una de ellas.

Las cuatro grandes limitaciones de los LLM​

1. Alucinaciones​

El problema: Los LLM pueden generar información falsa de manera convincente que suena plausible. Están entrenados para predecir el siguiente token, no para ser precisos en cuanto a hechos.

Usuario: "¿Quién ganó el Super Bowl 2024?"

LLM (sin RAG): "Los Kansas City Chiefs ganaron el Super Bowl 2024,
derrotando a los San Francisco 49ers 25-22."

¿Pero qué pasa si esto es incorrecto? El LLM no lo "sabe", solo predice.

Por qué ocurre:

  • Los LLM son máquinas de probabilidad, no bases de datos de hechos
  • Los datos de entrenamiento contienen errores y contradicciones
  • No hay un mecanismo para verificar el contenido generado

Solución RAG:

# Con RAG, fundamentamos la respuesta en hechos recuperados
retrieved_doc = "Super Bowl LVIII (2024): Kansas City Chiefs derrotaron
a San Francisco 49ers 25-22 el 11 de febrero de 2024."

# Ahora el LLM tiene información verificada como referencia
response = llm.generate(
f"Basándose en este hecho: {retrieved_doc}, responda la pregunta..."
)

2. Límite de conocimiento​

El problema: Los LLM tienen una fecha de corte de conocimiento: no saben sobre eventos posteriores a la recopilación de sus datos de entrenamiento.

ModeloLímite de conocimiento
GPT-4Septiembre 2023
Claude 3Principios de 2024
Llama 2Julio 2023

Impacto real:

Usuario: "¿Cuál es el precio actual de Bitcoin?"

LLM (sin RAG): "Hasta mi límite de conocimiento, Bitcoin cotizaba
alrededor de $30,000..."

❌ ¡Esto podría estar desactualizado por meses o años!

Solución RAG:

# Recuperar datos actuales de una fuente en vivo
current_price = retrieve_from_api("bitcoin_price")
# Resultado: {"price": 97500, "timestamp": "2024-12-23"}

# Ahora el LLM puede proporcionar información precisa y en tiempo real
response = llm.generate(
f"El precio actual de Bitcoin es ${current_price['price']}..."
)

3. Sin acceso a datos privados​

El problema: Los LLM están entrenados con datos públicos. No tienen conocimiento de:

  • Documentos internos de su empresa
  • Datos privados de clientes
  • Investigación propietaria
  • Políticas y procedimientos internos

Impacto empresarial:

Empleado: "¿Cuál es nuestra política de vacaciones para empleados con más de 5 años?"

LLM (sin RAG): "No tengo acceso a las políticas específicas de su empresa..."

❌ ¡El LLM es inútil para consultas internas!

Solución RAG:

# Indexar documentos de la empresa en la base de conocimiento
knowledge_base.add_documents([
"Manual del Empleado 2024.pdf",
"Políticas de RRHH.docx",
"Guía de Beneficios.pdf"
])

# Ahora las consultas pueden responderse con datos privados
retrieved = knowledge_base.search("política de vacaciones 5 años antigüedad")
# Devuelve: "Los empleados con más de 5 años reciben 25 días de PTO..."

response = llm.generate(f"Según la política de la empresa: {retrieved}...")

4. Límites de tokens / ventanas de contexto​

El problema: Los LLM tienen ventanas de contexto limitadas. Incluso GPT-4 con 128K tokens no puede procesar:

  • Una base de datos completa de contratos legales
  • Años de tickets de soporte al cliente
  • Una base de código completa

Comparación de ventanas de contexto:

ModeloVentana de contexto~Páginas de texto
GPT-3.54K tokens~3 páginas
GPT-48K-128K tokens6-100 páginas
Claude 3200K tokens~150 páginas

El problema matemático:

Su base de conocimiento: 10,000 documentos
Documento promedio: 5,000 tokens
Total: 50,000,000 tokens

¡Incluso los 200K de contexto de Claude 3 solo pueden contener el 0.4% de sus datos!

Solución RAG:

# En lugar de cargar todo, recupere solo los documentos relevantes
def smart_retrieval(query, knowledge_base):
# Solo recuperar los 5 documentos más relevantes
relevant_docs = knowledge_base.similarity_search(
query,
top_k=5 # ~25,000 tokens en vez de 50M
)
return relevant_docs

# Ahora usamos eficientemente la ventana de contexto
retrieved = smart_retrieval("política de vacaciones", kb) # ~5 documentos
response = llm.generate(f"Contexto: {retrieved}\n\nPregunta: ...")

Comparación lado a lado​

Sin RAG​

Problemas:

  • Puede alucinar
  • Limitado a los datos de entrenamiento
  • Sin acceso a datos privados
  • Riesgo de desbordamiento de contexto

Con RAG​

Beneficios:

  • Fundamentado en hechos
  • Información en tiempo real
  • Acceso a datos privados
  • Uso eficiente del contexto

Comparación de costos​

EnfoqueCosto mensual*PrecisiónActualidad
LLM puro$50070-80%Estático
RAG$70090-95%En tiempo real
Fine-tuning$5,000+85-90%Estático

*Estimado para un caso de uso empresarial con 10K consultas/día

Cuando RAG falla​

RAG no es perfecto. Tenga en cuenta estos escenarios:

1. Fallos en la recuperación​

Problema: Se recuperaron documentos incorrectos
Ejemplo: El usuario pregunta por "acciones de Apple" pero se recuperan documentos sobre manzanas (fruta)

Solución: Mejores embeddings, filtrado por metadatos, búsqueda híbrida

2. Mal uso del contexto​

Problema: El LLM ignora o interpreta mal el contexto recuperado
Ejemplo: La política recuperada dice "30 días" pero el LLM responde "60 días"

Solución: Mejorar el prompt, contexto más pequeño, instrucciones explícitas

3. Base de conocimiento desactualizada​

Problema: La base de conocimiento no está actualizada
Ejemplo: Los documentos tienen 6 meses de antigüedad, la información está obsoleta

Solución: Sincronización regular, actualizaciones automáticas, indicadores de actualidad

Tabla resumen​

ProblemaImpactoSolución RAG
AlucinacionesInformación falsaFundamentar en hechos recuperados
Límite de conocimientoRespuestas desactualizadasConectar a datos recientes
Sin datos privadosNo puede responder consultas internasIndexar documentos de la empresa
Límites de tokensNo puede procesar grandes volúmenes de datosRecuperación inteligente

Puntos clave​

  1. Los LLM tienen limitaciones fundamentales que impiden su adopción empresarial
  2. RAG resuelve los mayores problemas: alucinaciones, límite de conocimiento, datos privados, escalabilidad
  3. RAG es rentable en comparación con el fine-tuning
  4. RAG no es perfecto pero ofrece mejoras significativas
  5. Comprender las limitaciones ayuda a diseñar mejores sistemas

Próximos pasos​

Continúe a Capítulo 3: Arquitectura de RAG para aprender sobre las tres fases de RAG.