C
Contextología
Guía pilar

Qué es RAG (Retrieval-Augmented Generation)

RAG es la técnica que permite a un LLM responder con información que no estaba en su entrenamiento. En lugar de inventarse datos, el modelo busca primero en tu base de conocimiento y luego genera una respuesta basada en lo que encontró.

Por qué RAG resuelve un problema real

Los LLMs tienen dos limitaciones estructurales: su conocimiento tiene fecha de corte (no saben nada después de su entrenamiento) y no tienen acceso a información privada o específica de tu organización. Fine-tuning puede añadir conocimiento, pero es caro, lento y no escala bien para información que cambia frecuentemente.

RAG resuelve ambos problemas: en cada consulta, recupera la información relevante y la inyecta en el contexto. El modelo razona sobre información actualizada, específica y verificable. Sin reentrenar nada.

RAG vs Fine-Tuning: cuándo usar cada uno

Usa RAG cuando...

  • La info cambia con frecuencia
  • Necesitas citar la fuente
  • Base de conocimiento grande
  • Quieres empezar ya

Usa Fine-Tuning cuando...

  • Cambiar tono o estilo del modelo
  • Formato de output muy específico
  • Reducir latencia (instrucciones implícitas)
  • Tienes miles de ejemplos etiquetados

Pipeline RAG paso a paso

Indexación (offline)

1

Ingestión de documentos

Cargar PDFs, HTMLs, Markdown, bases de datos. Limpiar formato, eliminar ruido.

2

Chunking

Dividir en fragmentos coherentes. Estrategia: por sección, por párrafo, por sentencia. Añadir overlap del 10-20%.

3

Embedding

Convertir cada chunk a un vector numérico con un modelo de embeddings.

4

Indexar en vector DB

Almacenar los vectores junto a la metadata (fuente, fecha, título, chunk ID).

Retrieval (online, por consulta)

5

Query preprocessing

Expandir la query, corregir errores, reformular en múltiples variantes para mejorar el recall.

6

Búsqueda híbrida

Combinar búsqueda vectorial (semántica) + BM25 (lexical). Mejora recall un 20-30% sobre usar solo una.

7

Reranking

Reordenar los top-20 resultados por relevancia semántica real. Mayor ROI de todo el pipeline.

8

Context assembly

Construir el contexto final con los top-3 a 5 chunks + metadata. Respetar el presupuesto de tokens.

Generación

9

Prompt con contexto

Incluir los chunks recuperados + instrucción de generar con citas y reconocer cuando no sabe la respuesta.

10

Generación con LLM

El modelo genera una respuesta basada exclusivamente en el contexto proporcionado.

11

Faithfulness check

Verificar que la respuesta está respaldada por los chunks. Filtrar o marcar respuestas que van más allá del contexto.

Estrategias de chunking

El chunking es uno de los pasos con mayor impacto en la calidad del retrieval. Un chunk demasiado grande diluye la señal semántica; demasiado pequeño pierde contexto.

Por tamaño fijo

Como baseline rápido

Divide cada N tokens con overlap. Simple de implementar. Rompe ideas a mitad si no hay alineación con el contenido.

Por sección (headers)

Documentación, wikis, guías técnicas

Divide en los H1/H2/H3 del documento. Preserva la coherencia semántica de cada sección.

Por párrafo o sentencia

FAQs, bases de conocimiento estructuradas

Unidades naturales del texto. Granularidad alta, ideal para Q&A muy específico.

Semántico (clustering)

Textos largos sin estructura clara

Agrupa oraciones por similitud semántica. Mayor calidad pero más complejo de implementar.

Retrieval híbrido: por qué funciona mejor

La búsqueda vectorial captura similitud semántica pero falla con términos exactos, nombres propios o siglas. BM25 (búsqueda léxica) es perfecta para esos casos pero no entiende sinónimos. Combinarlos con Reciprocal Rank Fusion mejora el recall un 20-30% sobre cualquiera de los dos por separado.

Búsqueda vectorial

Semántica, sinónimos, contexto

+

BM25

Exacta, términos, siglas

=

Híbrido (RRF)

+20-30% recall

Reranking: el paso más infravalorado

El retrieval inicial recupera los chunks más similares semánticamente. El reranking los reordena por relevancia real para la query específica. Es el step con mayor ROI del pipeline: pequeño coste adicional (latencia + API), gran mejora en precisión.

Recomendación práctica: Recupera top-20 con búsqueda híbrida → reranking con Cohere Rerank v3 o BGE Reranker → pasa top-3 a 5 al LLM. No pases más de 5 chunks al modelo sin razón: más contexto no siempre es mejor.

Cómo evaluar un sistema RAG

La evaluación de RAG debe separar la calidad del retrieval de la calidad de la generación. Si la respuesta es incorrecta, necesitas saber si el problema está en “no encontró los docs correctos” o en “encontró los docs pero generó mal”.

MétricaQué mideHerramienta
Context Recall¿Se recuperaron todos los chunks necesarios para responder?RAGAS
Context Precision¿Los chunks recuperados son relevantes o hay ruido?RAGAS
Faithfulness¿La respuesta está respaldada por el contexto? ¿Hay alucinaciones?RAGAS / DeepEval
Answer Relevance¿La respuesta responde a la pregunta del usuario?RAGAS
MRR / NDCGMétricas de ranking: ¿el chunk correcto aparece primero?Código propio

Stack RAG mínimo viable

Embeddings

text-embedding-3-small (OpenAI)

nomic-embed-text (open source)

Vector DB

Supabase (pgvector)

Qdrant si quieres autohostearlo

Reranker

Cohere Rerank v3

BGE Reranker (open source)

LLM

Claude Sonnet / GPT-4o

Haiku / GPT-4o mini para volumen

Framework

LlamaIndex

Código propio para pipelines simples

Evals

RAGAS

Braintrust para producción

Herramientas para tu pipeline RAG

Profundizar más

Preguntas frecuentes

¿Qué es RAG?+

RAG (Retrieval-Augmented Generation) es una técnica que añade información externa al contexto del modelo en tiempo de inferencia. En lugar de depender solo del conocimiento de entrenamiento, el modelo busca información relevante en una base de conocimiento y la usa para generar respuestas precisas y verificables.

¿Cuándo usar RAG vs fine-tuning?+

RAG cuando necesitas que el modelo acceda a información actualizada, específica de dominio o que cambia frecuentemente. Fine-tuning cuando quieres cambiar el estilo, tono o comportamiento del modelo. Son complementarios, no excluyentes.

¿Qué es un embedding?+

Un embedding es una representación numérica (vector) de un texto que captura su significado semántico. Dos textos con significado similar tienen embeddings similares (están cerca en el espacio vectorial). Son la base del retrieval semántico en RAG.

¿Cuál es el mayor error en sistemas RAG?+

No medir la calidad del retrieval por separado de la calidad de la generación. Si el modelo genera respuestas incorrectas, puede ser que el retriever no esté encontrando los chunks correctos, no que el LLM esté alucinando. Medir ambos por separado es fundamental.

¿Qué tamaño de chunk debo usar?+

Depende del tipo de documento. Para documentación técnica: 512-1024 tokens. Para libros o artículos largos: 256-512 tokens con overlap del 20%. Para FAQs o párrafos cortos: mantén las unidades naturales del documento. Lo más importante es preservar coherencia semántica, no seguir un tamaño fijo.

Recibe lo mejor de Contextología

Diseño de contexto, agentes y workflows de IA directamente en tu correo.