Secciones

Generación aumentada por recuperación

Copiar URL

La generación aumentada por recuperación (RAG) es un método mediante el cual se vincula un modelo de lenguaje de gran tamaño (LLM) a un recurso externo para obtener mejores respuestas de una aplicación de inteligencia artificial generativa. 

Conozca la inteligencia artificial de Red Hat

La RAG permite complementar los datos que se encuentran en un LLM con las fuentes de información externas que usted elija, ya sean repositorios de datos, conjuntos de textos o documentación previa. Estos recursos se segmentan, se clasifican en una base de datos vectorial y se utilizan como material de referencia para que las respuestas que se brinden sean más precisas.

La RAG sirve para que el LLM recupere información específica y en tiempo real de las fuentes que usted elija. Le permite reducir los costos, ya que ofrece una experiencia personalizada sin necesidad de invertir en el entrenamiento y el perfeccionamiento del modelo. Además, podrá ahorrar recursos, dado que cuando se realiza una consulta a un LLM se envía únicamente la información más relevante, en lugar de documentos extensos.

Obtenga más información sobre la inteligencia artificial generativa

Los LLM utilizan técnicas de procesamiento del lenguaje natural (NLP) y machine learning (aprendizaje automático) para comprender y generar lenguaje humano. Sin embargo, aunque pueden ser muy útiles como herramientas de comunicación y procesamiento de datos, también presentan algunas desventajas:

  • Los LLM se entrenan con datos disponibles para el público general, de modo que posiblemente no incluyan la información específica a la que usted desea que hagan referencia, como un conjunto de datos internos de su empresa.
  • La información con la que se entrenan los LLM tiene una fecha límite, lo cual significa que no se actualiza de manera permanente. Por ello, el material puede quedar obsoleto y dejar de ser relevante.
  • Los LLM buscan satisfacer las necesidades de los usuarios y, por eso, en ocasiones presentan información falsa o desactualizada, la cual también se conoce como "alucinación".

La implementación de la arquitectura RAG en un sistema de búsqueda de respuestas basado en un LLM establece una vía de comunicación entre el modelo y las fuentes de información adicionales que usted elija. De este modo, el LLM puede realizar referencias cruzadas y complementar su conocimiento interno para que el usuario que formula una consulta obtenga resultados más fidedignos y precisos.

Obtenga más información sobre los modelos de lenguaje de gran tamaño

Los mecanismos de recuperación integrados en una arquitectura RAG no solo le permiten acceder al entrenamiento general de un LLM, sino también a otras fuentes de datos. Si basamos el modelo en un conjunto de hechos externos y verificables a través de la RAG, obtendremos varias ventajas:

Precisión
La RAG facilita las fuentes que el LLM puede citar para que los usuarios comprueben sus afirmaciones. También se puede diseñar una arquitectura RAG que responda con "no lo sé" si la pregunta está fuera de su área de conocimiento. En general, la RAG reduce las posibilidades de que un LLM comparta información inexacta o errónea y refuerza la confianza de los usuarios.

Rentabilidad
El reentrenamiento y perfeccionamiento de los LLM son procesos costosos y que requieren mucho tiempo, al igual que la creación desde cero de un modelo base con información específica del dominio (por ejemplo, para diseñar un chatbot). Con la RAG, un usuario puede introducir datos nuevos en un modelo LLM, así como cambiar o actualizar fuentes de información, con solo cargar un documento o un archivo.

Asimismo, puede reducir los costos de inferencia. Las consultas a un LLM son costosas, ya que requieren usar el hardware propio, cuando se ejecuta un modelo local, o un servicio externo a través de una interfaz de programación de aplicaciones (API), para lo cual se emitirá una factura según el consumo. En lugar de enviar un documento de referencia completo al modelo de una sola vez, la RAG puede enviar únicamente las partes más relevantes del material y, de esta forma, reducir el tamaño de las consultas y mejorar la eficacia.

Control de los desarrolladores
En comparación con los métodos tradicionales de perfeccionamiento, la RAG ofrece una manera más accesible y sencilla para obtener información, solucionar problemas y corregir aplicaciones. En el caso de los desarrolladores, la principal ventaja de la arquitectura RAG es que les permite aprovechar un flujo de información actualizada y específica de cada dominio.

Privacidad y soberanía de los datos
El uso de información confidencial para perfeccionar un LLM supone ciertos riesgos, debido a que los modelos pueden revelar información de sus datos de entrenamiento. La RAG ofrece una solución a estos problemas de privacidad, ya que permite que los datos confidenciales permanezcan en las instalaciones y, al mismo tiempo, se utilicen en un modelo local o externo de confianza. Además, esta arquitectura puede configurarse de tal manera que se restrinja la recuperación de información privada, es decir, que determinados usuarios puedan acceder a cierta información según su tipo de autorización. 

Las arquitecturas RAG se encargan de recuperar los datos de una fuente externa, procesarlos en el contexto de un LLM y generar una respuesta basada en las fuentes combinadas. Este proceso consta de tres etapas principales: preparación, recuperación y generación de datos.

Etapa 1: Preparación de datos (para su recuperación)

  • Documentación fuente y carga de archivos: identifique y obtenga los documentos fuente que desea compartir con el LLM y asegúrese de que estén en un formato compatible (archivos de texto, tablas de bases de datos o PDF). Independientemente del formato, cada documento debe convertirse a un archivo de texto antes de incorporarlo a la base de datos vectorial. A este proceso también se lo conoce como etapas de extracción, transformación y carga (ETL), y garantiza que los datos sin procesar se limpien y organicen de forma que estén preparados para el almacenamiento, el análisis y el machine learning.
     
  • Transformación: las herramientas de división o fragmentación del texto preparan los documentos para su recuperación. Esto implica analizar los documentos actualizados y catalogarlos en "fragmentos" relacionados en función de distintas características. Por ejemplo, es posible que para el modelo resulte más sencillo buscar y recuperar los archivos que presentan un formato por párrafos que aquellos estructurados con tablas y figuras.

    La fragmentación puede basarse en diversos factores, como la semántica, las oraciones, los tokens, el formato, los caracteres HTML o el tipo de código. Muchos marcos open source pueden facilitar el proceso de incorporación de documentos, como LlamaIndex y LangChain.
     

  • Integración: las integraciones utilizan un modelo de machine learning especializado para convertir los datos en vectores numéricos y poder aplicar las operaciones matemáticas que permitan evaluar las similitudes y las diferencias entre los distintos fragmentos de datos. Gracias a esto, puede convertir texto o imágenes en vectores que capten el significado central del contenido y descarten los detalles irrelevantes. Durante este proceso, se puede asignar a un fragmento de datos un valor numérico (como [1.2, -0.9, 0.3]) y clasificarlo en un sistema mayor denominado base de datos vectorial.

    Dentro de una base de datos vectorial, este valor numérico sirve para que la arquitectura RAG establezca asociaciones entre los fragmentos de contenido y organice los datos para optimizar su recuperación. El objetivo de esta clasificación consiste en estructurar los vectores para que los conceptos que sean similares se almacenen en coordenadas adyacentes. Por ejemplo, los conceptos "café" y "té" se colocarían muy cerca, así como "bebida caliente". En cambio, aquellos que no guardan relación, como "teléfono móvil" y "televisión", se situarían más separados. La distancia o cercanía entre dos vectores permite que el modelo determine el tipo de información que debe recuperarse e incluirse en el resultado de la consulta del usuario.
     

  • Almacenamiento: los datos combinados procedentes de diversas fuentes (los documentos externos que elija y el LLM) se almacenan en un repositorio central.
     

Etapa 2: Recuperación

  • Una vez que los datos se catalogan en la base de datos vectorial, los algoritmos buscan y recuperan los fragmentos de información relevantes para la solicitud y la consulta del usuario. Los marcos como LangChain admiten muchos algoritmos de recuperación diferentes, incluida la recuperación basada en similitudes de datos, como la semántica, los metadatos y los documentos principales.

    En entornos de dominio abierto, la recuperación de información se realiza a partir de documentos organizados en Internet, a los cuales se accede a través de la API de una fuente de información. Sin embargo, en un entorno empresarial de dominio cerrado, en el que es necesario mantener la privacidad de la información y protegerla de fuentes externas, la recuperación mediante la arquitectura RAG puede seguir siendo local y ofrecer mayor seguridad.

    Por último, los datos recuperados se insertan en la solicitud y se envían al LLM para que los procese.
     

Etapa 3: Generación

  • Resultado: se ofrece una respuesta al usuario. Si el método RAG funciona según lo previsto, el usuario obtendrá una respuesta precisa basada en los conocimientos fuente proporcionados.

Comience a utilizar marcos de IA con Red Hat Consulting

Cuando se diseña un modelo de machine learning, es importante buscar documentos fuente de alta calidad, ya que los resultados dependen de los datos que se introducen. Si los sistemas generan resultados erróneos o sesgados, pueden suponer un grave problema para las empresas que utilizan la inteligencia artificial. Por lo tanto, es fundamental asegurarse de que los documentos fuente no contengan información sesgada (es decir, información que favorezca a los grupos privilegiados y perjudique a los no privilegiados de manera sistemática) para que los resultados estén libres de sesgos.

A la hora de obtener datos para una arquitectura RAG, asegúrese de que la información que incluye en sus documentos fuente se cite con precisión y esté actualizada. Además, es preciso que especialistas evalúen los resultados antes de poner el modelo a disposición de un público más amplio, y que sigan haciéndolo incluso después de que el modelo se haya implementado para utilizarse en la producción.

Cuando se conocen las diferencias entre los métodos de entrenamiento con datos y la arquitectura RAG, es posible tomar decisiones estratégicas sobre los recursos de inteligencia artificial que debe implementar para satisfacer sus necesidades, e incluso es posible que utilice más de un método a la vez. Analicemos algunos métodos y procesos habituales para el tratamiento de los datos, y comparémoslos con la RAG.

Diferencias entre la RAG y la ingeniería de peticiones (prompt engineering)
La ingeniería de peticiones es la manera más sencilla y menos técnica de interactuar con un LLM. Consiste en escribir una serie de instrucciones para que un modelo genere el resultado deseado cuando un usuario realiza una consulta. En comparación con la RAG, este proceso requiere menos datos (solo utiliza aquellos con los que se entrenó previamente el modelo) y tiene un costo reducido (usa únicamente herramientas y modelos actuales); sin embargo, no permite generar resultados basados en información actualizada o variable. Asimismo, la calidad de los resultados depende de la formulación de las solicitudes, de modo que es posible que las respuestas no sean uniformes.

Si busca una forma sencilla y rentable de extraer información sobre temas generales sin necesidad de profundizar demasiado, puede optar por la ingeniería de peticiones en lugar de la RAG.

Diferencias entre la RAG y la búsqueda semántica
El término "semántica" hace referencia al estudio del significado de las palabras. La búsqueda semántica es una técnica de análisis sintáctico de datos que tiene en cuenta la intención y el contexto de una consulta.

Utiliza el NLP y el machine learning para decodificar una consulta y buscar datos que puedan servir para brindar una respuesta más pertinente y precisa que la que proporcionaría la mera concordancia de palabras clave. Dicho de otro modo, la búsqueda semántica ayuda a acortar la distancia entre lo que un usuario escribe como consulta y los datos que se emplean para generar un resultado.

Por ejemplo, si escribe una consulta sobre unas "vacaciones soñadas", la búsqueda semántica ayudaría al modelo a comprender que probablemente desea información sobre unas vacaciones "perfectas". En lugar de ofrecer una respuesta sobre los sueños, daría una más acorde con su intención: tal vez un paquete turístico para una escapada a la playa.

La RAG utiliza la búsqueda semántica durante la etapa de recuperación de datos de la base vectorial para producir resultados actualizados y precisos desde el punto de vista contextual.

Diferencias entre la RAG y el preentrenamiento
El preentrenamiento constituye la fase inicial del entrenamiento de un LLM para adquirir un dominio general del lenguaje mediante el aprendizaje a partir de un gran conjunto de datos. Al igual que el cerebro humano desarrolla vías neuronales a medida que adquirimos nuevos conocimientos, el preentrenamiento desarrolla una red neuronal dentro de un LLM al entrenarlo con información.

En comparación con la RAG, el preentrenamiento de un LLM es más costoso, puede llevar más tiempo y necesitar más recursos informáticos, como miles de GPU. Puede optar por utilizar el preentrenamiento en lugar de la RAG si tiene acceso a un amplio conjunto de datos (el cual debe poder influir considerablemente en el modelo entrenado) y desea dotar a un LLM de conocimientos básicos sobre determinados temas o conceptos.

Diferencias entre la RAG y el perfeccionamiento del modelo
Si la arquitectura RAG determina los conocimientos que debe poseer un LLM, el perfeccionamiento define las acciones que debe llevar a cabo. Se trata de un proceso que consiste en utilizar un LLM entrenado previamente y seguir entrenándolo con un conjunto de datos más reducido y específico, lo cual permite que el modelo adquiera patrones comunes que no cambian con el tiempo.

A simple vista, la RAG y el perfeccionamiento pueden parecer similares, pero presentan algunas diferencias. Por ejemplo, en tanto que este último requiere un gran volumen de datos y recursos informáticos considerables para la creación del modelo, el primero puede recuperar información de un único documento sin necesidad de utilizar demasiados recursos. Además, se demostró que el proceso para reducir las alucinaciones es eficiente con la RAG, mientras que con el perfeccionamiento de un LLM resulta mucho más largo y complejo.

A menudo, un modelo puede utilizar ambos métodos; sin embargo, puede optar por el perfeccionamiento en lugar de la RAG si ya tiene acceso a una gran cantidad de datos y recursos, si esos datos son relativamente invariables o si trabaja en una tarea especializada que requiere un análisis más personalizado que el formato pregunta-respuesta en el que se centra la arquitectura RAG.  

La arquitectura RAG podría utilizarse en muchos casos prácticos. A continuación, se indican algunos de los más conocidos.

  • Servicio de atención al cliente: la programación de un chatbot para responder a las consultas de los clientes con información de un documento específico puede reducir el tiempo de resolución y mejorar la eficacia del sistema.

  • Generación de información útil: la RAG permite aprender de los documentos que ya posee. Cuando utiliza esta arquitectura, puede vincular un LLM a los informes anuales, los documentos de marketing, los comentarios en las redes sociales, las opiniones de los clientes, los resultados de encuestas, los documentos de investigación u otros materiales, así como encontrar respuestas que le permitan comprender mejor sus recursos. Además, puede utilizarla para conectarse directamente a las fuentes de datos en tiempo real, como los feeds de las redes sociales, los sitios web u otras fuentes que se actualicen con frecuencia, de modo que pueda generar respuestas útiles al instante.

  • Sistemas de información sanitaria: la arquitectura RAG puede mejorar los sistemas que ofrecen información o asesoramiento en el ámbito de la salud. Gracias a la posibilidad de revisar distintos aspectos, como el historial médico de una persona, los servicios de programación de citas y las últimas investigaciones y directrices médicas, puede facilitar el acceso de los pacientes a la asistencia y los servicios que necesitan.

Red Hat® OpenShift® AI es una plataforma de operaciones de machine learning (MLOps) flexible y con capacidad de ajuste que incluye herramientas para diseñar, implementar y gestionar las aplicaciones que utilizan la inteligencia artificial. Está diseñada con tecnologías de open source y proporciona funciones confiables y uniformes en términos operativos para que los equipos realicen pruebas, pongan los modelos a disposición de los usuarios y distribuyan aplicaciones innovadoras.

Además, OpenShift AI permite que las empresas implementen la arquitectura RAG en sus procesos de operaciones de modelos de lenguaje de gran tamaño (LLMOps), ya que proporciona la infraestructura fundamental para las cargas de trabajo, como el acceso a una base de datos vectorial, un LLM que crea integraciones y los mecanismos de recuperación necesarios para producir resultados.

Red Hat Consulting desarrolló Red Hat OpenShift AI Pilot para ayudar a los clientes tanto en el proceso de adopción de OpenShift AI como en su integración a los servicios empresariales actuales. Con una plataforma central integrada, los usuarios podrán acceder a bibliotecas y herramientas estandarizadas, tendrán mayor disponibilidad de los recursos informáticos y lograrán mejorar la incorporación de los analistas de datos y otros usuarios. Mediante este servicio, los especialistas de Red Hat trabajarán con su equipo para evaluar el entorno y el enfoque actuales e identificar los requisitos futuros. Lo ayudarán a implementar y gestionar Red Hat OpenShift AI, así como a integrarlo a otras herramientas de análisis de datos que se encuentren en los entornos de los clientes, para aprovechar al máximo esta tecnología. Para participar en este proyecto piloto, no es necesario tener modelos de ML en funcionamiento; para Red Hat es un gusto acompañarlo desde la etapa en que se encuentre su equipo respecto de la adopción del análisis de datos.

En el caso de las empresas que buscan pasar de las pruebas al desarrollo de estrategias para implementar los modelos en la producción, Red Hat Consulting Services ofrece asesoramiento sobre los pasos que deben seguir. MLOps Foundation permite que las empresas mejoren sus funciones de análisis de datos y sus métodos de trabajo para impulsar sus estrategias de machine learning, crear patrones reutilizables para un servicio de inferencias listo para la producción y automatizar el ciclo de vida completo del modelo con las herramientas y las arquitecturas desarrolladas en la nube.

Obtenga más información sobre MLOps Foundation

Nuevo

InstructLab

InstructLab es un proyecto open source para mejorar los modelos de lenguaje de gran tamaño (LLM).

Artículos relacionados

Artículo

El concepto de la inteligencia artificial generativa

La inteligencia artificial generativa crea contenido nuevo a partir de los modelos de aprendizaje profundo que están entrenados con conjuntos grandes de datos.

Artículo

El aprendizaje automático

El aprendizaje automático es la técnica que consiste en entrenar a una computadora para que encuentre patrones, realice predicciones y aprenda de la experiencia sin una programación explícita.

Artículo

¿Qué son los modelos base?

Se trata de modelos de aprendizaje automático que se entrenan previamente para llevar a cabo diversas tareas. 

Más información sobre la inteligencia artificial y el machine learning

Productos

Nuevo

Una plataforma de modelo base que permite desarrollar, probar y ejecutar sin problemas los modelos de lenguaje de gran tamaño (LLM) de Granite para las aplicaciones empresariales.

Una cartera de soluciones centradas en la inteligencia artificial que ofrece herramientas para entrenar, mejorar, distribuir, supervisar y gestionar los modelos y los experimentos con inteligencia artificial y machine learning en Red Hat OpenShift.

Una plataforma de aplicaciones empresariales que ofrece un conjunto unificado de servicios probados para lanzar aplicaciones al mercado en la infraestructura de su preferencia. 

Red Hat Ansible Lightspeed with IBM watsonx Code Assistant es un servicio de inteligencia artificial generativa que está diseñado por y para automatizadores, operadores y desarrolladores de Ansible. 

Recursos

ebook

Los aspectos principales en el diseño de un entorno de AI/ML listo para la producción

Informe de analistas

Total Economic Impact™ of Red Hat Hybrid Cloud Platform for MLOps

Webinar

Aproveche al máximo la IA con el open source y Kubernetes.