Líderes del pensamiento
RAG Evolution: una introducción a Agentic RAG
¿Qué es RAG (Recuperación-Generación Aumentada)?
Recuperación-Generación Aumentada (RAG) Es una técnica que combina las fortalezas de los grandes modelos de lenguaje (LLM) con la recuperación de datos externos para mejorar la calidad y relevancia de las respuestas generadas.. Los LLM tradicionales utilizan sus bases de conocimiento previamente entrenadas, mientras que los pipelines RAG consultarán bases de datos o documentos externos en tiempo de ejecución y recuperarán información relevante para usar en la generación de respuestas más precisas y contextualmente ricas. Esto es particularmente útil en casos en los que la pregunta es compleja, específica o se basa en un período de tiempo determinado, dado que las respuestas del modelo están informadas y enriquecidas con información actualizada específica del dominio.
El panorama actual de RAG
Los grandes modelos lingüísticos han revolucionado por completo la forma en que accedemos a la información y la procesamos. Sin embargo, depender únicamente del conocimiento interno previo a la entrada podría limitar la flexibilidad de sus respuestas, especialmente en el caso de preguntas complejas. La generación aumentada por recuperación aborda este problema al permitir que los modelos lingüísticos adquieran y analicen datos de otras fuentes externas disponibles para producir respuestas más precisas y esclarecedoras.
Los recientes avances en la recuperación de información y el procesamiento del lenguaje natural, especialmente LLM y RAG, abren nuevas fronteras de eficiencia y sofisticación. Estos avances podrían evaluarse en los siguientes aspectos generales:
- Recuperación de información mejorada: la mejora de la recuperación de información en los sistemas RAG es muy importante para trabajar de manera eficiente. En trabajos recientes se han desarrollado varios vectores, algoritmos de reordenación y métodos de búsqueda híbridos para mejorar la precisión de la búsqueda.
- Almacenamiento en caché semántico: esta resulta ser una de las principales formas de reducir el costo computacional sin tener que renunciar a la consistencia de las respuestas. Esto significa que las respuestas a las consultas actuales se almacenan en caché junto con su contexto semántico y pragmático adjunto, lo que nuevamente promueve tiempos de respuesta más rápidos y brinda información consistente.
- Integración multimodal: además de los sistemas LLM y RAG basados en texto, este enfoque también abarca los elementos visuales y otras modalidades del marco. Esto permite el acceso a una mayor variedad de material de origen y da como resultado respuestas cada vez más sofisticadas y progresivamente más precisas.
Desafíos de las arquitecturas RAG tradicionales
Si bien RAG está evolucionando para satisfacer las diferentes necesidades, aún existen desafíos que enfrentan las arquitecturas RAG tradicionales:
- resumen:Resumir documentos enormes puede resultar difícil. Si el documento es extenso, la estructura RAG convencional puede pasar por alto información importante porque solo incluye las primeras K partes.
- Comparación de documentos:La comparación eficaz de documentos sigue siendo un desafío. El marco RAG con frecuencia da como resultado una comparación incompleta, ya que selecciona al azar los primeros K fragmentos de cada documento.
- Análisis de datos estructuradoss: Es difícil gestionar consultas de datos numéricos estructurados, como determinar cuándo un empleado tomará sus próximas vacaciones según su lugar de residencia. La recuperación y el análisis precisos de puntos de datos no son precisos con estos modelos.
- Manejo de consultas con varias partes: La respuesta a preguntas con varias partes aún está restringida. Por ejemplo, descubrir patrones de ausencia comunes en todas las áreas de una organización grande es un desafío cuando se limita a K partes, lo que limita la investigación completa.
Avanzar hacia un RAG agente
RAG agente Utiliza agentes inteligentes para responder a preguntas complicadas que requieren una planificación cuidadosa, un razonamiento de varios pasos y la integración de herramientas externas. Estos agentes realizan las tareas de un investigador competente, navegando hábilmente por una multitud de documentos, comparando datos, resumiendo los hallazgos y produciendo respuestas completas y precisas.
El concepto de agentes se incluye en el marco clásico de RAG para mejorar la funcionalidad y las capacidades del sistema, lo que da lugar a la creación de RAG agénticos. Estos agentes realizan tareas adicionales y razonamientos que van más allá de la recuperación y creación de información básica, además de orquestar y controlar los diversos componentes del pipeline de RAG.
Tres estrategias de agencia primarias
Los enrutadores envían consultas a los módulos o bases de datos adecuados según su tipo. Los enrutadores toman decisiones de forma dinámica utilizando modelos de lenguaje grandes en los que se basa el contexto de una solicitud para realizar una llamada al motor de elección al que se debe enviar para mejorar la precisión y la eficiencia de su canalización.
Las transformaciones de consultas son procesos que implican la reformulación de la consulta del usuario para que coincida mejor con la información solicitada o, viceversa, con lo que ofrece la base de datos. Pueden ser: reformulación, expansión o descomposición de preguntas complejas en subpreguntas más sencillas y de fácil manejo.
También requiere un motor de consulta de subpreguntas para afrontar el desafío de responder una consulta compleja utilizando varias fuentes de datos.
En primer lugar, la pregunta compleja se descompone en preguntas más simples para cada una de las fuentes de datos. Luego, se recopilan todas las respuestas intermedias y se sintetiza un resultado final.
Capas de agente para tuberías RAG
- enrutamiento:La pregunta se envía al procesamiento basado en conocimiento pertinente en función de su relevancia. Ejemplo: cuando el usuario desea obtener recomendaciones para determinadas categorías de libros, la consulta se puede enviar a una base de conocimiento que contenga información sobre esas categorías de libros.
- Planificación de consultas:Esto implica la descomposición de la consulta en subconsultas y su posterior envío a sus respectivas canalizaciones individuales. El agente produce subconsultas para todos los elementos, como el año en este caso, y las envía a sus respectivas bases de conocimiento.
- Uso de la herramientaUn modelo de lenguaje se comunica con una API o herramienta externa, sabiendo qué implicaría, en qué plataforma se realizará la comunicación y cuándo sería necesaria. Ejemplo: Ante la solicitud de un usuario de un pronóstico del tiempo para un día determinado, el LLM se comunica con la API meteorológica, identificando la ubicación y la fecha, y luego analiza la respuesta de la API para proporcionar la información correcta.
- Reaccionar Es un proceso iterativo de pensamiento y acción acompañado de planificación, uso de herramientas y observación.
Por ejemplo, para diseñar un plan de vacaciones completo, el sistema considerará las necesidades del usuario y obtendrá información sobre la ruta, las atracciones turísticas, los restaurantes y el alojamiento mediante API. Posteriormente, comprobará la exactitud y la relevancia de los resultados, generando un plan de viaje detallado y adaptado a las necesidades y el horario del usuario. - Consulta dinámica de planificación:En lugar de ejecutarlo secuencialmente, el agente ejecuta numerosas acciones o subconsultas simultáneamente y luego agrega estos resultados.
Por ejemplo, si uno quiere comparar los resultados financieros de dos compañías y determinar la diferencia en alguna métrica, entonces el agente procesaría los datos de ambas compañías en paralelo antes de agregar los resultados; LLMCompiler es uno de esos marcos que conduce a una orquestación eficiente de llamadas paralelas de funciones.
RAG y LLMaIndex de Agentic
LLMaIndex representa una implementación muy eficiente de los pipelines de RAG. La biblioteca simplemente completa la pieza faltante en la integración de datos organizacionales estructurados en modelos de IA generativos al brindar comodidad para las herramientas de procesamiento y recuperación de datos, así como interfaces con varias fuentes de datos. Los principales componentes de LlamaIndex se describen a continuación.
LlamaParse analiza documentos.
Llama Cloud para servicios empresariales con pipelines RAG implementados con la menor cantidad de trabajo manual.
Al utilizar múltiples LLM y almacenamiento vectorial, LlamaIndex ofrece una forma integrada de crear aplicaciones en Python y TypeScript con RAG. Sus características lo convierten en una columna vertebral muy demandada por las empresas que desean aprovechar la IA para mejorar la toma de decisiones basada en datos.
Componentes clave de la implementación de Agentic Rag con LLMaIndex
Profundicemos en algunos de los ingredientes de agentic RAG y cómo se implementan en LlamaIndex.
1. Uso y enrutamiento de herramientas
El agente de enrutamiento elige qué LLM o herramienta es mejor utilizar para una pregunta determinada, en función del tipo de solicitud. Esto lleva a decisiones contextuales, como si el usuario desea una descripción general o un resumen detallado. Algunos ejemplos de estos enfoques son Router Query Engine en LlamaIndex, que elige dinámicamente las herramientas que maximizarían las respuestas a las consultas.
2. Retención del contexto a largo plazo
Si bien la función más importante de la memoria es retener el contexto a lo largo de varias interacciones, por el contrario, los agentes equipados con memoria en la variante agentica de RAG permanecen continuamente conscientes de las interacciones que resultan en respuestas coherentes y cargadas de contexto.
LlamaIndex también incluye un motor de chat que tiene memoria para conversaciones contextuales y consultas puntuales. Para evitar que se desborde la ventana de contexto de LLM, dicha memoria debe estar bajo un estricto control durante una discusión prolongada y debe reducirse a un formato resumido.
3. Motores de subpreguntas para la planificación
A menudo, es necesario dividir una consulta complicada en tareas más pequeñas y manejables. El motor de consultas de subpreguntas es una de las funciones principales para las que se utiliza LlamaIndex como agente, mediante el cual una consulta grande se divide en consultas más pequeñas, se ejecutan secuencialmente y luego se combinan para formar una respuesta coherente. La capacidad de los agentes para investigar múltiples facetas de una consulta paso a paso representa la noción de planificación de varios pasos en lugar de una planificación lineal.
4. Reflexión y corrección de errores
Los agentes reflexivos generan resultados, pero luego verifican su calidad para realizar correcciones si es necesario. Esta habilidad es fundamental para garantizar la precisión y que el resultado sea el esperado. Gracias al flujo de trabajo autorreflexivo de LlamaIndex, un agente revisará su rendimiento reintentando o ajustando las actividades que no cumplan con ciertos niveles de calidad. Sin embargo, gracias a su autocorrección, Agentic RAG es bastante fiable para aplicaciones empresariales donde la fiabilidad es fundamental.
5. Razonamiento agente complejo:
La exploración basada en árboles se aplica cuando los agentes tienen que investigar varias rutas posibles para lograr un objetivo. A diferencia de la toma de decisiones secuencial, el razonamiento basado en árboles permite a un agente considerar múltiples estrategias a la vez y elegir la más prometedora en función de criterios de evaluación actualizados en tiempo real.
LlamaCloud y LlamaParse
Con su amplia gama de servicios gestionados diseñados para la ampliación del contexto de nivel empresarial dentro de las aplicaciones LLM y RAG, LlamaCloud supone un gran avance en el entorno de LlamaIndex. Esta solución permite a los ingenieros de IA centrarse en el desarrollo de la lógica empresarial clave al reducir el complejo proceso de manipulación de datos.
Otro motor de análisis disponible es LlamaParse, que se integra fácilmente con los procesos de ingesta y recuperación de LlamaIndex. Este constituye uno de los elementos más importantes para gestionar documentos complejos y semiestructurados con objetos incrustados, como tablas y figuras. Otro componente clave es la API de ingesta y recuperación administrada, que ofrece diversas maneras de cargar, procesar y almacenar fácilmente datos de una amplia variedad de fuentes, como el repositorio central de datos de LlamaHub o las salidas de LlamaParse. Además, admite diversas integraciones de almacenamiento de datos.
Conclusión
Agentic RAG representa una transformación en el procesamiento de la información al incorporar mayor inteligencia a los propios agentes. En muchas situaciones, Agentic RAG puede combinarse con procesos o diferentes API para ofrecer resultados más precisos y refinados. Por ejemplo, al resumir documentos, Agentic RAG evalúa el propósito del usuario antes de elaborar un resumen o comparar detalles. Al ofrecer soporte al cliente, Agentic RAG puede responder de forma precisa e individualizada a consultas cada vez más complejas, basándose no solo en su modelo de entrenamiento, sino también en la memoria disponible y fuentes externas. Agentic RAG destaca la transición de los modelos generativos a sistemas más optimizados que aprovechan otros tipos de fuentes para lograr resultados robustos y precisos. Sin embargo, al ser generativos e inteligentes como son ahora, estos modelos y Agentic RAG buscan una mayor eficiencia a medida que se incorporan más datos a los procesos de procesamiento.








