¿Qué es la arquitectura RAG? Definición completa con ejemplos prácticos detallados

La arquitectura RAG es el conjunto de componentes que almacena, recupera y proporciona información externa a un LLM; esta guía desglosa 10 tipos, desde la RAG básica y la híbrida hasta la RAG agéntica y GraphRAG, con dos ejemplos paso a paso.

Diagram of the types of RAG architecture branching from a central hub: basic, hybrid, adaptive, corrective (CRAG), self-RAG, multimodal, agentic, GraphRAG, HyDE, and branched.

RAG, siglas en inglés de generación aumentada por recuperación (retrieval augmented generation), es un proceso en el que los LLM usan información externa para ampliar y mejorar sus resultados. La arquitectura RAG es el conjunto de componentes y conexiones que hace posible la RAG.

Existen varias categorías de RAG, y cada una funciona con su propia arquitectura. En esencia, la arquitectura de un sistema RAG determina la forma particular en que la información se almacena, se recupera y se proporciona a un LLM.

¿Qué es la arquitectura RAG?

La arquitectura RAG es la configuración subyacente de componentes (y sus capacidades asociadas) que impulsa un sistema RAG determinado. Todas estas arquitecturas se basan en una plantilla fundamental, a menudo denominada RAG “simple” o “ingenua”.

Este es un panorama general de la arquitectura RAG fundamental:

  • Fuente de información: Aquí es donde se almacena la información externa. Puede ser un índice de búsqueda, una base de datos vectorial que representa grandes cantidades de información o un repositorio de documentos sin procesar.
  • Componente de recuperación: Es el mecanismo mediante el cual se consulta la fuente de información. Por ejemplo, un sistema RAG puede usar una búsqueda simple por palabras clave para encontrar fragmentos de texto relevantes, o consultas vectoriales más complejas para realizar una búsqueda por similitud.
  • Componente de orquestación: Esta capa es la parte de la aplicación basada en LLM que inicia el pipeline de RAG para el prompt de un usuario, ya sea junto con el LLM o de forma independiente. También compila la información recuperada en un prompt ampliado.

Los componentes de la arquitectura RAG suelen organizarse en dos rutas. La ruta de ingesta toma los datos y los organiza en una fuente de información en la que se pueden hacer búsquedas. Las bases de datos vectoriales, en las que grandes cantidades de texto se convierten en un repositorio de embeddings vectoriales que admite búsquedas, son una de las aplicaciones más utilizadas.

La ruta de recuperación toma el prompt de un usuario y genera una consulta para buscar en la fuente de información. Luego, el orquestador agrega la información recuperada al contexto de entrada del LLM. En las arquitecturas RAG agénticas e híbridas, puede haber varias rutas de recuperación.

Tipos de arquitectura RAG

Es engañoso pensar en la RAG en términos de arquitecturas completamente distintas. La mayoría de los ingenieros adoptan un enfoque modular e implementan componentes separados que se adaptan a casos de uso específicos. Si bien es posible trazar límites generales, es importante señalar que existe una superposición considerable entre los modelos de arquitectura.

1. RAG básica

La RAG básica, también llamada RAG “ingenua” o “simple”, es la plantilla arquitectónica de los demás tipos de RAG.

El proceso subyacente es relativamente sencillo: un usuario ingresa un prompt, el orquestador determina si se requiere información externa (ya sea de forma independiente o junto con el LLM) y, en consecuencia, formula y envía una consulta de recuperación.

La fuente de información externa suele ser una base de datos vectorial, pero también puede ser una base de datos SQL, una API web, un grafo de conocimiento o incluso un repositorio de documentos “sin procesar”. Luego, esta información adicional se agrega al contexto de entrada del LLM.

Aparte de las consultas SQL y las API, existen dos grandes tipos de métodos de recuperación:

  • Búsqueda léxica (búsqueda por palabras clave): Es una forma sencilla de RAG en la que se extraen palabras clave de la consulta del usuario y se comparan con pasajes de texto que las contienen. Para ello, en los pipelines modernos, el orquestador puede realizar lo que se conoce como una consulta de vectores dispersos, que no captura el significado.
  • Búsqueda de vectores densos (búsqueda semántica): Los embeddings de vectores densos capturan el significado. Un orquestador puede consultar una base de datos de vectores densos de forma que se capture el significado tanto del prompt del usuario como de la información de origen.

El uso de la memoria también es una parte importante de la arquitectura RAG. Se refiere a cómo un LLM utiliza el contexto de chats anteriores para construir una consulta de recuperación y, así, anclarla en el contexto más amplio de una conversación (o de varias). La RAG conversacional es la norma en la mayoría de los chatbots, aunque algunos casos de uso, como las respuestas a tickets de soporte, podrían usar RAG de una sola pregunta.

2. RAG híbrida

La RAG híbrida combina dos tipos distintos de recuperación, normalmente la recuperación por palabras clave y la semántica. La búsqueda por palabras clave encuentra términos coincidentes, y la búsqueda vectorial encuentra pasajes con un significado relacionado.

También pueden usarse otras formas de recuperación, como el recorrido de grafos de conocimiento o las consultas a bases de datos SQL. El proceso suele estar guiado por una lógica de enrutamiento, ya sea en forma de reglas programadas o de la clasificación que un modelo hace de la pregunta (aunque también se pueden ejecutar varios pipelines simultáneamente).

El orquestador combina los resultados y puede reordenarlos antes de pasarlos al LLM. El reordenamiento (reranking) es el proceso de asignar puntuaciones de relevancia a los fragmentos recuperados para que el LLM priorice la información más pertinente.

3. RAG adaptativa

En la RAG adaptativa, un componente de enrutamiento selecciona una estrategia de recuperación según los requisitos del prompt del usuario y, luego, el orquestador ejecuta el flujo de trabajo seleccionado.

En el framework original (Adaptive-RAG), un modelo más pequeño actuaba como clasificador y elegía entre no hacer ninguna recuperación, una recuperación de un solo paso o una recuperación de varios pasos. Hoy en día, algunas arquitecturas usan en su lugar modelos generativos o heurísticas basadas en reglas.

Es una arquitectura popular porque asigna capacidad de procesamiento según la complejidad y los requisitos de un prompt, lo que reduce los pasos de recuperación innecesarios en los prompts más sencillos. Es común en asistentes que manejan varios tipos de preguntas.

4. RAG correctiva (CRAG)

La RAG correctiva evalúa la información recuperada antes de agregarla al contexto de entrada del LLM. Un evaluador de recuperación determina si la información recuperada es relevante y útil. Su rasgo arquitectónico distintivo es la etapa explícita de evaluación y corrección previa a la generación de la respuesta.

Si se determina que la información está incompleta o no es pertinente para el prompt, se activan solicitudes adicionales. Estas pueden incluir métodos de recuperación distintos de los que se usaron en la solicitud original, como la búsqueda web o el recorrido de grafos de conocimiento.

La RAG correctiva es común en campos donde la precisión es importante, como la medicina y el derecho. Sin embargo, requiere una fuente de información adicional que pueda complementar los pasajes recuperados originalmente.

5. Self-RAG

En la Self-RAG, el modelo puede iniciar solicitudes después de recibir el contexto de entrada inicial. Las respuestas generadas se evalúan frente a la evidencia recuperada mediante tokens de reflexión, y se envían más solicitudes a través del orquestador según sea necesario. Por el contrario, el LLM puede decidir que no se requiere ninguna recuperación.

Se diferencia de la RAG correctiva en que el LLM juzga sus propios resultados, determina si se necesita recuperación y si el texto recuperado es útil, y supervisa sus propias respuestas, modificándolas según sea necesario. La RAG correctiva, en cambio, evalúa la calidad de la información recuperada antes de la generación.

Esta arquitectura es especialmente útil para prompts complejos del tipo investigación profunda. Como integra evaluaciones de relevancia (de la información recuperada) en la generación de respuestas, es una buena opción para prompts que requieren respuestas basadas en evidencia.

6. RAG agéntica

La RAG agéntica se refiere a cualquier forma de RAG que se ejecuta en el contexto de una plataforma agéntica. El modelo usa sus capacidades de razonamiento para determinar el tipo de información necesaria y elige entre las opciones de recuperación disponibles.

La recuperación puede activarse varias veces según sea necesario, y el modelo tiene la opción de asignar agentes para consultas más complejas. Por ejemplo, un LLM podría solicitar una búsqueda en una base de datos para identificar a un proveedor, activar una búsqueda de documentos para encontrar contratos relevantes y terminar con una búsqueda web para verificar los datos de contacto mediante fuentes públicas.

La RAG agéntica es la principal implementación de arquitectura en chatbots populares como Perplexity, ChatGPT, Claude, entre otros. Como estas plataformas dan al modelo principal acceso a múltiples herramientas y pipelines de RAG, este puede seleccionar qué forma de recuperación es la más adecuada para un prompt.

7. RAG multimodal

La RAG multimodal recupera contexto de distintos tipos de medios. Es una forma importante de RAG porque pone a disposición de los LLM información que de otro modo sería inaccesible, como gráficos y grabaciones de audio.

La arquitectura subyacente es la misma que en cualquier otro sistema. Por ejemplo, un pipeline de indexación podría preparar imágenes para la búsqueda convirtiéndolas en embeddings directos. Luego, un sistema de RAG agéntica podría recuperar estas imágenes junto con texto semánticamente relevante y enviarlas a un modelo de visión y lenguaje para su procesamiento dual.

8. GraphRAG

GraphRAG usa grafos de conocimiento junto con la búsqueda vectorial para recuperar información sobre entidades. Normalmente, el orquestador encuentra entidades iniciales relevantes, también llamadas nodos, mediante la extracción de palabras clave o, en ocasiones, una búsqueda vectorial preliminar. Un recuperador de grafos recorre un grafo de conocimiento para construir un contexto más amplio.

Por ejemplo, en respuesta a una solicitud de desglose detallado de una categoría de productos, un LLM puede activar una búsqueda vectorial para identificar entidades específicas (productos). Luego, el orquestador activará una búsqueda en el grafo de conocimiento para encontrar entidades relacionadas, como proveedores, puntos de venta, reseñas, etc.

9. RAG ramificada

Mientras que una arquitectura RAG híbrida tiene la capacidad de usar distintos métodos de recuperación, la RAG ramificada se refiere al proceso de ejecutar varias consultas, llamadas ramas, al mismo tiempo. Cada rama puede consultar una fuente de información distinta, o las ramas pueden consultar la misma fuente en paralelo con diferentes consultas o filtros. La arquitectura de RAG agéntica suele usar RAG ramificada.

10. HyDE (Hypothetical Document Embeddings, embeddings de documentos hipotéticos)

HyDE es una forma innovadora de RAG en la que un LLM crea un documento de texto hipotético que muestra cómo podría ser una respuesta óptima. Luego, este “documento hipotético” se usa para crear una consulta que permita una recuperación más precisa. Aunque el conocimiento relevante no esté representado en los parámetros del LLM, la lógica es que un pasaje con forma de respuesta puede coincidir mejor con los documentos relevantes que una pregunta breve o un prompt ambiguo.

Ejemplo de arquitectura RAG simple: base de datos vectorial

La RAG básica sirve como base para tipos de arquitectura más complejos. En el caso de un sistema RAG simple que usa una base de datos vectorial, la documentación de origen se divide en partes más pequeñas (fragmentos o chunks) y se convierte en embeddings densos. Cuando un usuario ingresa un prompt, el orquestador genera una consulta, la codifica y consulta la base de datos para encontrar pasajes relevantes.

Este es el proceso desglosado paso a paso:

  1. Se convierten grandes cantidades de texto en vectores mediante un pipeline de ingesta automatizado y un modelo de embeddings como BERT.
  2. La aplicación de base de datos organiza, indexa y almacena los vectores para agilizar las búsquedas.
  3. El usuario ingresa un prompt en un chatbot (como Perplexity).
  4. El orquestador de la aplicación codifica el prompt (con un modelo de embeddings) para recuperar información relevante de la base de datos vectorial.
  5. La base de datos vectorial devuelve los fragmentos relevantes, y el orquestador los agrega al contexto de entrada (el “prompt extenso”) y lo envía al LLM.
  6. El LLM usa el contexto adicional para generar una respuesta con su conocimiento interno (almacenado en sus pesos paramétricos).

Ejemplo de arquitectura RAG avanzada: RAG agéntica

La RAG agéntica se refiere a la arquitectura subyacente de los sistemas RAG dentro de una plataforma agéntica. Los flujos de RAG agéntica suelen ser complejos porque los agentes de IA pueden invocar distintas herramientas y pipelines según la naturaleza del prompt, y desplegar varios agentes si es necesario.

Este es un ejemplo práctico del proceso:

  1. Un usuario ingresa una pregunta compleja que requiere una investigación profunda sobre un tema. Para este ejemplo, supongamos que el prompt es “Proporciona un pronóstico de las ganancias de la empresa para los próximos seis meses a la luz de los principales acontecimientos geopolíticos”.
  2. El LLM razona que se necesitará una combinación de consultas RAG en distintos tipos de contenido.
  3. Se despliegan tres agentes distintos para (a) búsqueda vectorial, (b) fundamentación en la web y (c) búsqueda de imágenes (multimodal).
  4. Los agentes buscan información relevante, como noticias y datos financieros internos, a través del orquestador con las herramientas de recuperación disponibles.
  5. El LLM compara los resultados recuperados con la pregunta de investigación de cada agente y los clasifica por relevancia.
  6. El LLM evalúa la información y activa búsquedas adicionales mediante agentes individuales cuando falta información.
  7. Una vez que se ha recuperado suficiente información, el LLM genera pronósticos por escenario basados en las cifras financieras existentes (recuperadas de la documentación interna) y llama a una herramienta de calculadora para proyectar las ganancias de cada uno.
  8. El LLM genera una respuesta final con la información recuperada y los cálculos, y cita las fuentes según sea necesario.

¿Qué sigue para la RAG?

Las innovaciones actuales se centran en aportar profundidad y velocidad a las arquitecturas RAG existentes, mejorar la precisión de la recuperación multimedia y crear sistemas diseñados para manejar información actualizada al minuto.

Estas son tres tendencias que actualmente marcan el rumbo de la investigación:

  • Investigación profunda en múltiples fuentes: Se trata de una arquitectura RAG capaz de planificar búsquedas, ejecutar varias ramas en fuentes dispares, evaluar la evidencia recuperada y optimizar por sí misma las respuestas generadas. La RAG agéntica capaz de ejecutar todas estas tareas es cada vez más rápida y rentable.
  • Aplicaciones multimodales: Los pipelines de recuperación trabajan cada vez mejor con imágenes y video. Además, pueden identificar con creciente precisión tipos específicos de información en datos multimodales complejos, como videos de larga duración y diagramas avanzados.
  • Fundamentar las respuestas en información en constante cambio: Las aplicaciones basadas en LLM pueden recurrir a fuentes de información en vivo (como transmisiones de video y sensores) para proporcionar contexto de entrada. Los sistemas también pueden generar redes de información multifacéticas, como en GraphRAG, para interpretar estos datos.

La RAG es fundamental para el funcionamiento de las aplicaciones basadas en LLM. Permite que una gran variedad de usuarios, desde consumidores comunes hasta empresas que trabajan en campos especializados, superen problemas relacionados con las alucinaciones, los datos de entrenamiento incompletos y la falta de acceso a conocimientos internos especializados.

Por eso, los sistemas RAG y su arquitectura subyacente representan una de las áreas de investigación en IA más dinámicas y emocionantes.