7 min read

Guía Completa de RAG: 4 Métodos para Conectar tus Agentes con Datos

Aprende cuándo usar filtros, SQL, contexto completo o vectores para que tus agentes de IA respondan con precisión.

agentes-iaragguian8nautomatizacionvector-database
Table of Contents(11 sections)

Cuando tu agente de IA no responde correctamente, el problema casi siempre está en cómo accede a los datos. Esta guía te enseña los 4 métodos principales de RAG (Retrieval-Augmented Generation) y cuándo usar cada uno para obtener respuestas precisas.

Importante: No todo necesita una base de datos vectorial. Elegir el método correcto puede hacer tu agente más rápido, más barato y más preciso.

Prerrequisitos

Antes de empezar, necesitás:

  • Conocimiento básico de agentes de IA
  • Familiaridad con herramientas como n8n, LangChain o similares
  • Entender la diferencia entre datos estructurados y no estructurados
  • Tiempo estimado de lectura: 15 minutos

El Error Más Común

Cuando los desarrolladores descubren que su agente necesita datos externos, corren directo a implementar una base de datos vectorial. Pero esto puede ser un error costoso.

El Problema con los Vectores

Las bases de datos vectoriales funcionan dividiendo documentos en "chunks" (fragmentos) y buscando semánticamente entre ellos. Esto causa varios problemas:

  • Pérdida de contexto: El agente no entiende el documento completo
  • Sin metadata: No sabe de qué documento viene cada chunk
  • Malo para datos tabulares: No puede calcular promedios, totales o tendencias
  • Resúmenes incompletos: Solo resume los chunks que encontró, no el documento entero

Ejemplo Real del Problema

Imaginá que tenés datos de ventas y preguntás: "¿Qué semana tuvimos más ventas?"

Con chunk-based retrieval:

  1. El agente busca "más ventas" semánticamente
  2. Encuentra un chunk con algunas semanas
  3. Responde "Semana 6" (la mejor en ese chunk)
  4. Pero las semanas 4, 14 y 19 tenían más ventas - estaban en otros chunks

Método 1: Filtros

El método más simple y subestimado. Funciona como los filtros de una planilla de Excel.

Cuándo Usarlo

  • Datos estructurados en filas y columnas
  • Sabés exactamente qué campos querés filtrar
  • La pregunta se responde con un subconjunto pequeño de registros

Ejemplo Práctico

Pregunta: "¿Cuántos parlantes Bluetooth vendimos el 16 de septiembre?"

Proceso del agente:

  1. Filtrar producto = "Bluetooth Speaker"
  2. Filtrar fecha = "2024-09-16"
  3. Sumar las cantidades

Ventajas

AspectoBeneficio
VelocidadMuy rápido
CostoMuy barato (pocos tokens)
PrecisiónAlta (búsqueda exacta)
EscalabilidadBuena para datasets grandes

Configuración Importante

En el system prompt, tenés que especificar las opciones válidas:

Productos válidos: ["Wireless Headphones", "Bluetooth Speaker", "Phone Case"]
Formato de fecha: YYYY-MM-DD

Si el agente escribe "bluetooth speaker" (minúscula), el filtro no va a funcionar porque no es búsqueda semántica, es coincidencia exacta.

Regla de oro: Si un humano usaría filtros en Excel para responder, usá filtros en tu agente.

Método 2: SQL Queries

Cuando necesitás que la base de datos haga el trabajo pesado: cálculos, agrupaciones, ordenamientos.

Cuándo Usarlo

  • Necesitás totales, promedios, rankings o tendencias
  • La pregunta involucra muchas filas
  • Necesitás combinar o comparar datos de múltiples tablas

Ejemplo Práctico

Pregunta: "¿Cuáles son nuestros 3 productos más rentables?"

Query generada por el agente:

SELECT product, SUM(total_price) as total_revenue
FROM sales_data
GROUP BY product
ORDER BY total_revenue DESC
LIMIT 3;

El SQL hace todo el trabajo: suma, agrupa, ordena y limita. El agente solo interpreta el resultado.

Ventajas sobre Filtros

  • La base de datos hace los cálculos (más confiable que la IA)
  • Puede procesar millones de filas sin traerlas todas al agente
  • Más barato porque envía menos datos al modelo

Configuración del System Prompt

Tablas disponibles: sales_data
Columnas: order_id, customer_name, product, quantity, unit_price, total_price, date

Ejemplos de queries válidas:
- SELECT product, COUNT(*) FROM sales_data GROUP BY product
- SELECT AVG(total_price) FROM sales_data WHERE date > '2024-01-01'

Regla de oro: Si un humano usaría pivot tables o fórmulas, usá SQL.

Método 3: Contexto Completo

A veces, la mejor solución es dejar que el agente lea el documento entero.

Cuándo Usarlo

  • Necesitás resúmenes, líneas de tiempo o explicaciones paso a paso
  • El orden de la información importa
  • El dataset es lo suficientemente chico para caber en el context window

3 Formas de Implementarlo

1. Herramientas para elegir documentos

El agente tiene tools para seleccionar qué documentos leer:

Tools disponibles:
- read_transcript_video_a()
- read_transcript_video_b()

Ventaja: Solo lee lo que necesita.

2. Contexto directo en el prompt

System: Tenés acceso a estos documentos:

[DOCUMENTO 1]
{contenido completo del documento 1}

[DOCUMENTO 2]
{contenido completo del documento 2}

Ventaja: Respuestas más rápidas (no llama tools). Desventaja: Siempre procesa todos los tokens.

3. Documentos cargados dinámicamente

Cada vez que el agente responde, se cargan los documentos actualizados como variables.

Ventaja: Contenido siempre actualizado sin editar el prompt.

Comparación de Costos

ImplementaciónTokens Promedio
Herramientas (1 doc)~4,000
Todo en prompt~6,500+
Vector chunks~2,600

La diferencia se agranda exponencialmente con más documentos.

Regla de oro: Si un humano leería todo el documento antes de responder, el agente también debería.

Método 4: Base de Datos Vectorial

El método más conocido, pero no siempre el mejor. Ideal para búsquedas específicas en grandes volúmenes de datos.

Cómo Funciona

  1. Chunking: Documentos se dividen en fragmentos (ej: 500 tokens cada uno)
  2. Embedding: Cada chunk se convierte en un vector numérico
  3. Búsqueda semántica: El agente busca chunks similares a la pregunta
  4. Retrieval: Se devuelven los N chunks más relevantes

Cuándo Usarlo

  • Bases de conocimiento muy grandes (miles de documentos)
  • Preguntas específicas que se responden con fragmentos aislados
  • FAQs donde una respuesta no depende de otra
  • Cuando costo y velocidad importan más que contexto completo

Cuándo NO Usarlo

  • Datos tabulares (ventas, métricas, inventario)
  • Cuando necesitás resúmenes de documentos completos
  • Cuando el orden o la secuencia importa
  • Comparaciones entre diferentes partes del mismo documento

Mejorando los Resultados

Si decidís usar vectores, podés mejorar la precisión con:

Metadata tagging:

{
  "chunk_id": "doc1_chunk_15",
  "source": "manual_usuario.pdf",
  "page": 12,
  "section": "Configuración Inicial"
}

Aumentar el límite de chunks: En vez de traer 4 chunks, traer 10-20 para dar más contexto.

Hybrid search: Combinar búsqueda semántica con búsqueda por keywords.

Cómo Elegir el Método Correcto

Árbol de Decisión

¿Tus datos son estructurados (tablas/filas)?
├── SÍ → ¿Necesitás cálculos complejos?
│   ├── SÍ → Usá SQL
│   └── NO → Usá Filtros
└── NO → ¿El documento es corto (<10 páginas)?
    ├── SÍ → ¿Importa el orden/contexto?
    │   ├── SÍ → Usá Contexto Completo
    │   └── NO → Usá Vectores
    └── NO → ¿Buscás respuestas específicas?
        ├── SÍ → Usá Vectores
        └── NO → Considerá dividir en documentos más chicos

Resumen Rápido

MétodoMejor ParaEvitar Cuando
FiltrosDatos tabulares simples, búsquedas exactasNecesitás cálculos o texto libre
SQLCálculos, rankings, tendencias, agregacionesDatos no estructurados
Contexto CompletoResúmenes, orden importa, docs cortosDatasets muy grandes
VectoresBúsquedas en grandes volúmenes, FAQsDatos tabulares, resúmenes completos

Context Engineering: Los 5 Pilares

Más allá del método que elijas, estos principios aplican a cualquier implementación:

1. Empezá con el Objetivo Final

Antes de construir, preguntate:

  • ¿Qué tipo de preguntas va a recibir este agente?
  • ¿Qué datos necesita ver para responder correctamente?
  • ¿Cómo mediría yo si la respuesta es buena?

2. Diseñá tu Pipeline de Datos

  • ¿De dónde vienen los datos?
  • ¿Con qué frecuencia se actualizan?
  • ¿Cómo garantizás que estén limpios?

3. Asegurá la Precisión

Basura entra, basura sale. Si tus datos tienen errores, tu agente va a heredarlos.

4. Optimizá el Context Window

Menos tokens = más barato + menos alucinaciones + respuestas más rápidas.

Preguntate siempre: ¿Cómo puedo darle al agente solo lo que necesita?

5. Especializá tus Agentes

Un agente que hace todo, hace todo mal. Considerá tener:

  • Agente de ventas (SQL)
  • Agente de soporte (Vectores)
  • Agente de onboarding (Contexto completo)

Próximos Pasos

Ahora que entendés los 4 métodos:

  • Auditá tu implementación actual: ¿Estás usando el método correcto?
  • Experimentá con alternativas: Probá filtros o SQL antes de ir a vectores
  • Medí los resultados: Compará precisión, costo y velocidad entre métodos

Recursos Adicionales


¿Preguntas? Unite a nuestra comunidad en Discord para discutir implementaciones de RAG.

Contenido relacionado

Was this helpful?
Share this content
0comments