Comparación entre la generación aumentada por recuperación (RAG) y el perfeccionamiento
Tanto la RAG como el perfeccionamiento tienen como objetivo mejorar los modelos de lenguaje de gran tamaño (LLM). La RAG no modifica el LLM, mientras que el perfeccionamiento requiere ajustar sus pesos y parámetros. Por lo general, puedes personalizar el modelo usando el perfeccionamiento y la arquitectura de RAG a la vez.
Diseño basado en modelos de lenguaje de gran tamaño
Un LLM es un tipo de inteligencia artificial que utiliza técnicas de machine learning (aprendizaje automático) para comprender y producir lenguaje humano. Estos modelos de machine learning pueden generar, resumir, traducir, reescribir, clasificar, categorizar y analizar texto, entre otras funciones. En las empresas, suelen usarse para crear un sistema de preguntas y respuestas, como un chatbot.
Los modelos base de los LLM se entrenan con información general para respaldar diversos casos prácticos. Sin embargo, es probable que no tengan los conocimientos específicos de un área que son exclusivos de tu empresa. La RAG y el perfeccionamiento son dos formas de ajustar tu LLM e incorporarle los datos que necesita para que genere los resultados esperados.
Por ejemplo, imagina que desarrollas un chatbot para que interactúe con los clientes. En este caso, el chatbot representa a tu empresa, así que debería responder como un empleado con muy buen desempeño y conocer distintos detalles, como los productos en venta y las políticas que aplicas. De la misma manera en que capacitarías a un empleado con documentos para estudiar y guiones para seguir, debes entrenar a un chatbot mediante el uso de la RAG y el perfeccionamiento para aprovechar la base de conocimientos incorporada.
Recursos de Red Hat
Definición y funcionamiento de la RAG
La RAG permite complementar los datos que se encuentran en los LLM con información que proviene de fuentes de tu preferencia, ya sean repositorios de datos, conjuntos de textos o documentación. Después de recuperar los datos, las arquitecturas de RAG los procesan en el contexto de un LLM y generan una respuesta basada en las fuentes combinadas.
La RAG es ideal para complementar tu modelo con información que se actualiza de forma periódica. Si creas una vía de comunicación entre el LLM y las fuentes externas elegidas, obtendrás resultados mucho más precisos. Además, como puedes diseñar la RAG para que cite su fuente, es sencillo comprender el modo en que se formula un determinado resultado, lo que aporta más transparencia y genera confianza.
Volvamos a nuestro ejemplo: si tuvieras que diseñar un chatbot que responda preguntas como "¿cuál es la política de devoluciones?", podrías usar una arquitectura de RAG. Podrías conectar el LLM a un documento que detalle la política de devoluciones de la empresa e indicar al chatbot que extraiga información de él. Incluso podrías indicarle que cite su fuente y proporcione el enlace para que el usuario pueda leerlo. Además, si el documento sobre la política de devoluciones cambiara, el modelo de RAG extraería la información más reciente y se la comunicaría al usuario.
Casos prácticos de la RAG
La RAG permite obtener información y organizarla de manera tal que facilite la interacción de las personas con los datos. Con una arquitectura de RAG, los modelos pueden buscar información y proporcionar contexto a partir de fuentes de datos locales y de la nube. Esto significa que se pueden utilizar datos externos, documentos internos e incluso feeds de redes sociales para responder preguntas, aportar contexto y fundamentar la toma de decisiones.
Por ejemplo, puedes crear una arquitectura de RAG que proporcione respuestas específicas en relación con las políticas, los procedimientos y la documentación de una empresa cuando se soliciten. De esta manera, ahorrarás el tiempo que implicaría buscar un determinado documento e interpretarlo de forma manual.
Definición del perfeccionamiento
Es una forma de comunicarle una intención a un LLM para que adapte su resultado en función de tus objetivos. Es un proceso que implica entrenar un modelo, que ya fue entrenado previamente, con un conjunto de datos más pequeño y específico para que realice tareas puntuales de un área determinada con mayor eficiencia. Los datos de este entrenamiento adicional se integran a la arquitectura del modelo.
La adaptación de bajo rango (LoRA) y la adaptación de bajo rango cuantificada (QLoRA) son técnicas de perfeccionamiento eficiente de parámetros (PEFT) que permiten que los usuarios puedan optimizar los recursos informáticos y los costos.
Volvamos al ejemplo del chatbot. Imagina que quieres que el chatbot interactúe con pacientes en un contexto de atención médica. Es importante que el modelo conozca la terminología médica relacionada con tu trabajo. Con las técnicas del perfeccionamiento, tendrás la seguridad de que cuando un paciente le consulte al chatbot sobre "servicios de FT", este comprenderá que se refiere a "servicios de fisioterapia" y le proporcionará los recursos adecuados.
Casos prácticos del perfeccionamiento
El perfeccionamiento es ideal para entrenar modelos con el objetivo de que interpreten la información a la que tienen acceso. Por ejemplo, puedes entrenar un modelo para que comprenda los detalles y la terminología de tu sector particular, como los acrónimos o los valores de la empresa.
Además, el perfeccionamiento es ideal para clasificar imágenes. Por ejemplo, si trabajas con imágenes de resonancia magnética (IRM), puedes entrenar tu modelo con este método para identificar anomalías.
El perfeccionamiento también permite que tu empresa utilice el tono correcto cuando se comunique con otras personas, especialmente en casos de atención al cliente. Te permite entrenar un chatbot para que analice las opiniones o las emociones de las personas con las que interactúa. Además, puedes entrenarlo para que brinde una respuesta satisfactoria al cliente y, a la vez, promueva los valores de la empresa.
Aspectos relevantes para elegir la RAG o el perfeccionamiento
A la hora de tomar decisiones estratégicas sobre los recursos de inteligencia artificial que debes implementar para cumplir tus objetivos, es importante que comprendas las diferencias entre la RAG y el perfeccionamiento del modelo. Estas son algunas preguntas básicas que debes tener en cuenta:
¿Cuáles son las habilidades de tu equipo?
Para personalizar un modelo con la RAG, se requieren habilidades de codificación y arquitectura. En comparación con los métodos tradicionales de perfeccionamiento, la RAG implica un proceso más accesible y sencillo de obtener retroalimentación, solucionar problemas y corregir aplicaciones. Por otro lado, el perfeccionamiento requiere de experiencia en el procesamiento del lenguaje natural (NLP), el deep learning (aprendizaje profundo), la configuración de modelos, el reprocesamiento de datos y las evaluaciones, por lo cual demanda más tiempo y habilidades técnicas.
¿Tus datos son estáticos o dinámicos?
Con el perfeccionamiento, el modelo aprende patrones comunes que no cambian con el tiempo. Al basarse en instantáneas estáticas de conjuntos de datos de capacitación, la información del modelo puede volverse obsoleta, por lo que se necesitaría repetir el entrenamiento. Por el contrario, con la RAG se indica al LLM que recupere información específica de las fuentes elegidas de manera inmediata. Es decir, el modelo extrae los datos más actualizados para dotar a tu aplicación de resultados precisos y relevantes.
¿Cuál es tu presupuesto?
El perfeccionamiento del modelo siempre ha sido una técnica de deep learning que requiere muchos recursos informáticos y datos. Por lo tanto, para alimentar el modelo, debes etiquetar datos y llevar a cabo el entrenamiento en hardware costoso de nivel superior. Además, el rendimiento del modelo con este método depende de la calidad de tus datos y, para que estos sean óptimos, debes invertir mucho dinero.
En comparación, la RAG suele ser más rentable que el perfeccionamiento del modelo. Para aplicarla, debes diseñar sistemas de canales que conecten los datos con el LLM. Gracias a esta conexión directa, se reducen los costos en recursos, ya que se utilizan datos que posee para abastecer al LLM, en lugar de dedicar tiempo, energía y recursos a la generación de datos nuevos.
Red Hat puede ayudarte
Las soluciones open source de Red Hat y el ecosistema de partners de inteligencia artificial pueden ayudarte a implementar la RAG y el perfeccionamiento en el proceso de operaciones de modelos de lenguaje de gran tamaño (LLMOps).
Prueba el perfeccionamiento con InstructLab
InstructLab es un proyecto de la comunidad open source creado por IBM y Red Hat para contribuir a los LLM utilizados en las aplicaciones de inteligencia artificial generativa. Proporciona un marco que emplea datos sintéticos para hacer que el perfeccionamiento de los LLM sea más accesible.
How InstructLab’s synthetic data generation enhances LLMs
Crea tu propio modelo base con Red Hat Enterprise Linux AI
Cuando tu empresa esté lista para diseñar aplicaciones con inteligencia artificial generativa, Red Hat® Enterprise Linux® AI te proporcionará la plataforma de modelos base que necesitas para abordar los casos prácticos con tus datos más rápidamente.
Red Hat Enterprise Linux AI reúne los LLM con licencia open source de Granite y las herramientas de ajuste de modelos de InstructLab en un solo entorno de servidor. Por lo tanto, a la hora de perfeccionar un modelo de inteligencia artificial que se pueda ampliar a la nube híbrida y de colaborar con él, es una opción más accesible para los especialistas en el área sin experiencia en análisis de datos.
Además, Red Hat Enterprise Linux AI cuenta con el respaldo de los beneficios de la suscripción a Red Hat, la cual incluye la distribución de productos empresariales de confianza, soporte permanente para la producción, soporte extendido del ciclo de vida del modelo y protección en el ámbito legal con Open Source Assurance.
Ajusta las aplicaciones con Red Hat OpenShift AI
Una vez que hayas entrenado tu modelo con Red Hat Enterprise Linux AI, podrás ajustarlo para implementarlo en la etapa de producción con Red Hat OpenShift® AI.
Red Hat OpenShift AI es una plataforma adaptable y flexible de operaciones de machine learning (MLOps) con herramientas que permiten diseñar, implementar y gestionar aplicaciones que utilizan inteligencia artificial. Brinda la infraestructura fundamental de las cargas de trabajo, como un LLM para crear integraciones, los mecanismos de recuperación necesarios para generar resultados, y el acceso a una base de dato de vectores.
El blog oficial de Red Hat
Obtenga la información más reciente sobre nuestro ecosistema de clientes, socios y comunidades.