Es hora de enfrentar la verdad sobre la generación aumentada por recuperación, o RAG: es una solución que necesita su propia solución.
RAG estaba destinada a mejorar el rendimiento de los grandes modelos de lenguaje y reducir las alucinaciones permitiendo que los grandes modelos de lenguaje (LLMs) superaran sus datos de entrenamiento con acceso a bases de conocimiento externas. Sin embargo, los límites del mundo real de los sistemas RAG tradicionales se han vuelto dolorosamente claros.
"En gran medida, RAG tiene fallas", dijo Dinesh Nirmal, vicepresidente sénior de IBM Software. "La RAG por sí misma realmente no está dando los resultados óptimos que se esperaban".
Los desafíos de RAG que enfrentan habitualmente los usuarios incluyen límites en las ventanas de contexto y operaciones de agregación, incapacidad para comprender relaciones complejas y resultados de baja calidad asociados con una fragmentación subóptima. Es decir, la implementación de RAG también puede presentar problemas de seguridad, como la fuga de datos.
La buena noticia es que los avances en herramientas y estrategias de inteligencia artificial están ayudando a compensar las fallas de los RAG tradicionales, lo que da como resultado respuestas generadas más precisas a las consultas de los usuarios. Echemos un vistazo más de cerca a cómo mejorar el rendimiento de RAG.
Pedirle a una aplicación LLM impulsada por RAG tradicional que realice operaciones de agregación (como encontrar una suma) para un conjunto de datos enorme a menudo no es difícil, es literalmente imposible. Una cosa que dificulta el rendimiento del sistema sería el tamaño de la ventana de contexto: las ventanas contextuales de los LLM generalmente no son lo suficientemente escalables para procesar, por ejemplo, una colección de 100 000 facturas. Además, el pipeline de RAG tradicional se basa en bases de datos vectoriales, que están diseñadas para búsquedas de similitud, no para operaciones de agregación.
"Esencialmente, significa que una base de datos vectorial no es suficiente para manejar estos casos", explica el ingeniero distinguido de IBM Sudheesh Kairali. “La ventana de contexto es un problema. El otro es la incapacidad de manejar operaciones matemáticas”.
Ahí entra SQL RAG.
Cuando los usuarios de LLM buscan respuestas de grandes conjuntos de datos, combinar una generación aumentada por recuperación con un SQL puede proporcionar resultados precisos, explica Kairali.
SQL incluye funciones de agregación integradas, y las bases de datos SQL tienen mayor capacidad que las ventanas de contexto LLM. Si una empresa ingiere sus datos de facturas en una base de datos SQL, puede usar un LLM para convertir consultas como "¿Cuál es la suma de todas las facturas del año pasado?", en: SQL, consulta la SQL database a través de RAG y llega a la respuesta.
“Puedes hacer muchas agregaciones si puedes construirlas”, dice Kairali. Después de que la base de datos SQL realiza una agregación, “solo se convierte en un ejercicio de procesamiento de lenguaje natural (NLP) para el LLM en ese momento”.
Discernir cómo se conectan entre sí las diferentes piezas de información recuperada o entidades es otra debilidad del RAG tradicional. Por ejemplo, considere el caso de uso de un paciente con un historial médico complejo. A través del proceso tradicional de recuperación de RAG, un LLM podría proporcionar información relevante. Estos datos podrían incluir detalles, como cuántos médicos había visto ese paciente en un año, pero podría tener dificultades para especificar qué tratamientos recetó cada médico.
GraphRAG, presentado en 2024 por Microsoft Research, aborda este desafío procesando e identificando relaciones a través de gráficos de conocimiento. GraphRAG organiza la información como una red de nodos y bordes que representan entidades y sus relaciones entre sí.
"Si un paciente ha ido a un hospital y la pregunta es: muéstrame todas las visitas anteriores que ha realizado, eso puede mostrarse no solo como palabrería sino como una representación de conocimiento a través de un gráfico", explica Nirmal. "Puede observar diferentes puntos múltiples y ver los diferentes médicos que ha visitado, los diferentes medicamentos que ha tomado, los tratamientos a los que se ha sometido, todo en una única representación gráfica".
GraphRAG, señala Nirmal, tiene limitaciones porque la representación de un gráfico se vuelve más difícil a medida que aumenta el volumen de datos. Mapear cientos de miles de nodos es más desafiante que mapear solo unas pocas docenas, por ejemplo. "Todo viene con limitaciones", dice Nirmal, "pero la razón por la que GraphRAG está despegando es por las limitaciones de la propia RAG pura".
La fragmentación es crítica para las aplicaciones RAG. En la fragmentación tradicional a través de modelos de incorporación, los documentos relevantes se desglosan en puntos fijos en piezas más pequeñas, cada una representada en una base de datos vectorial. Sin embargo, este método podría hacer que una aplicación LLM proporcione respuestas incompletas o inexactas incluso cuando esté utilizando un algoritmo de machine learning de búsqueda semántica en una base de conocimiento específica de dominio.
"En este proceso, muchas veces se pierde precisión porque no se sabe dónde se están fragmentando los datos", explica Nirmal. "Digamos que has dividido o cortado una tabla por la mitad, de modo que cuando la recuperas, solo recuperas la mitad. Ahora has perdido la precisión".
Afortunadamente, mejores estrategias de fragmentación a través de métodos agénticos pueden mejorar la recuperación de información. Esta fragmentación agéntica incluye estrategias como crear fragmentos superpuestos y alterar dinámicamente los tamaños de los fragmentos según el contexto en los documentos recuperados. Los marcos de orquestación de LLM pueden ser útiles para este propósito. Por ejemplo, las herramientas TextSplitters de LangChain pueden dividir el texto en fragmentos pequeños y semánticamente significativos. Estas estrategias ayudan a evitar la pérdida de información relevante cuando se descompone un documento.
La IA agéntica es útil para la fragmentación y también puede mejorar la precisión de recuperación de otras maneras. Considere la RAG agéntica: es un marco de IA avanzado que puede integrar pipelines de RAG para consultar tanto datos estructurados en bases de datos SQL como datos no estructurados en repositorios de documentos, aprovechando bases de datos vectoriales para la búsqueda de similitudes.
La RAG agéntica también enriquece cada fragmento con metadatos. Este proceso correlaciona datos estructurados (los metadatos almacenados en una base de datos transaccional) con datos no estructurados para optimizar la precisión de la recuperación.
"Si realmente podemos tomar la potencia de una base de datos vectorial junto con su aspecto transaccional o SQL y unir esos dos", señala Nirmal, "realmente podemos aumentar la precisión y el rendimiento".
La fuga de datos es un problema conocido de los sistemas de IA en general, y los LLM que utilizan RAG no son una excepción. Sin las medidas adecuadas, un LLM podría proporcionar a los usuarios de bajo nivel información a la que no están autorizados a acceder, desde información de identificación personal (PII) hasta datos financieros confidenciales.
"Esto es una realidad con RAG", dice Kairali. “Cuando comienzas con la prueba de concepto, todos están contentos. Pero luego, cuando quieres llevarlo a producción y quieres asegurarte de que sea de nivel de producción, empiezas a entender que hay un problema de protección de datos”.
Abordar el problema significa preservar las listas de control de acceso (ACL) y otras políticas de gobernanza cuando se ingieren datos no estructurados en varias bases de datos. "Cuando llega la consulta y se recuperan los datos, es importante asegurarse de que se respeten las ACL y las políticas de gobernanza", menciona Kairali. “Es básicamente un problema de ingeniería”.
Resolver este problema de ingeniería puede facilitarse con las plataformas de datos adecuadas, como lakehouses de datos gobernados y habilitados para código abierto. Por ejemplo,watsonx.data de IBM, un lakehouse de datos híbrido y abierto, garantiza que los controles de acceso se hereden de los sistemas de origen de documentos cuando se recuperan los datos. También proporciona anotaciones para PII para evitar que se comparta información confidencial.
A medida que los LLM y otras IA generativas se arraigan más profundamente en los flujos de trabajo cotidianos, la mejora de RAG ayuda a las empresas a desbloquear un mayor valor de sus datos empresariales. Las herramientas y estrategias adecuadas a nivel empresarial "permiten un mayor rendimiento y precisión para que los datos sean manejables y valiosos", apunta Nirmal. "Eso es lo que todo cliente busca".
Entrene, valide, ajuste y despliegue IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de próxima generación para creadores de IA. Diseñe aplicaciones de IA en menos tiempo y con menos datos.
Ponga la IA a trabajar en su negocio con la experiencia en IA líder en la industria y la cartera de soluciones de IBM a su lado.
Reinvente los flujos de trabajo y las operaciones críticas añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.