Comparación entre la generación aumentada por recuperación (RAG) y el perfeccionamiento
Tanto la generación aumentada por recuperación (RAG) como el perfeccionamiento tienen como objetivo mejorar los modelos de lenguaje de gran tamaño (LLM). La RAG lo hace sin modificar el LLM fundamental, mientras que el perfeccionamiento requiere ajustar los pesos y los parámetros del LLM. A menudo, puedes personalizar el modelo usando el perfeccionamiento y la arquitectura 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, y mucho más. En las empresas, estos modelos suelen usarse para crear un sistema de preguntas y respuestas, como un chatbot.
Los modelos base de los LLM se entrenan con conocimientos generales para respaldar una amplia gama de casos prácticos. Sin embargo, es probable que no dispongan del conocimiento específico de un área que es exclusivo de tu empresa. La RAG y el perfeccionamiento son dos formas de ajustar tu LLM e incorporarle los datos que necesita para producir los resultados que deseas.
Por ejemplo, supongamos que estás desarrollando un chatbot para que interactúe con los clientes. En este escenario, el chatbot representa tu empresa, por lo que querrás que actúe como un empleado de alto rendimiento y que comprenda los matices de tu empresa, como los productos que vendes y las políticas que aplicas. De la misma manera en que capacitarías a un empleado proporcionándole 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 con la que llega.
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 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 allí, e incluso indicarle que cite su fuente y proporcione el enlace para que el usuario lo pueda leer. Asimismo, 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 y organizar la información de una manera que simplifique la interacción de las personas con los datos. Con una arquitectura RAG, los modelos pueden buscar información y brindar contexto a partir de fuentes de datos locales y de la nube. Esto significa que se pueden usar datos externos, documentos internos e, incluso, feeds de redes sociales para responder preguntas, proporcionar contexto y aportar información para la toma de decisiones.
Por ejemplo, puedes crear una arquitectura RAG que brinde respuestas específicas con respecto a las políticas, los procedimientos y la documentación de tu empresa. Esto ahorra tiempo que, de otro modo, se dedicaría a buscar e interpretar un documento de forma manual.
¿Qué es el perfeccionamiento?
Es una forma de comunicarle una intención a un LLM para que adapte su resultado en función de tus objetivos. Se trata de un proceso que implica entrenar más un modelo que ya se entrenó con la ayuda de un conjunto de datos más pequeño y específico, con el fin de que pueda realizar tareas de un área determinada de manera más eficaz. Estos datos de entrenamiento adicionales se integran en 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 a nuestro ejemplo del chatbot. Supongamos que deseas que el chatbot interactúe con pacientes en un contexto médico. Es importante que el modelo comprenda la terminología médica relacionada con tu trabajo. Con las técnicas de perfeccionamiento, puedes asegurarte de que cuando un paciente le pregunte al chatbot sobre los "servicios de fisio", este entenderá que se refiere a "servicios de terapia física" y lo dirigirá a los recursos adecuados.
Casos prácticos del perfeccionamiento
El perfeccionamiento es ideal para entrenar los modelos a fin de que interpreten la información a la que tienen acceso. Por ejemplo, puedes entrenar un modelo para que comprenda los matices y la terminología de tu sector específico, como las siglas y los valores de la empresa.
El perfeccionamiento también es útil para las tareas de clasificación de imágenes. Por ejemplo, si trabajas con imágenes de resonancia magnética (IRM), con el perfeccionamiento puedes entrenar tu modelo para que identifique anomalías.
El perfeccionamiento también puede ayudar a que tu empresa adopte el tono correcto cuando se comunica con los demás, especialmente en el contexto de soporte 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 entrenar el modelo para que responda de una manera que le sea útil al usuario y, a la vez, refleje los valores de la empresa.
Aspectos que deben considerarse para elegir la RAG o el perfeccionamiento
Si comprendes las diferencias entre la RAG y el perfeccionamiento, podrás tomar decisiones estratégicas sobre los recursos de inteligencia artificial que debes implementar para satisfacer tus necesidades. Estas son algunas preguntas básicas que debes tener en cuenta:
¿Cuáles son las habilidades de tu equipo?
La personalización de un modelo con la RAG requiere habilidades de codificación y arquitectura. En comparación con los métodos tradicionales de perfeccionamiento, la RAG proporciona una manera más accesible y sencilla de obtener comentarios, solucionar problemas y corregir aplicaciones. Para perfeccionar un modelo, se necesita experiencia en el procesamiento del lenguaje natural (NLP), el deep learning (aprendizaje profundo), la configuración de modelos, el reprocesamiento de los datos y la evaluación. Por eso, puede demandar 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. Debido a que se basa en instantáneas estáticas de los conjuntos de datos de entrenamiento, es posible que la información quede obsoleta y que sea necesario 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. Esto significa que el modelo extrae los datos más actualizados para informar la aplicación, lo que permite que los resultados sean precisos y relevantes.
¿Cuál es tu presupuesto?
Tradicionalmente, el perfeccionamiento es una técnica de deep learning que requiere una gran cantidad de datos y recursos informáticos. Para alimentar un modelo mediante este proceso, debes etiquetar los datos y llevar a cabo el entrenamiento en sistemas de hardware costosos y de alta gama. Además, el rendimiento del modelo perfeccionado depende de la calidad de los datos, y obtener datos de alta calidad puede ser costoso.
En comparación, la RAG suele ser más rentable que el perfeccionamiento. Para aplicarla, debes diseñar sistemas de canales que conecten los datos con el LLM. Esta conexión directa reduce los costos de los recursos porque utiliza los datos ya disponibles para informar al LLM, en lugar de gastar tiempo, energía y recursos en generar 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
IBM y Red Hat crearon InstructLab, un proyecto de la comunidad open source destinado a contribuir al desarrollo de los LLM que se utilizan en las aplicaciones de inteligencia artificial generativa. Proporciona un marco que usa datos sintéticos para hacer que el perfeccionamiento de los modelos de lenguaje de gran tamaño 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. Esto significa que para los especialistas en el área sin experiencia en análisis de datos será más sencillo perfeccionar un modelo de inteligencia artificial que se pueda ampliar a la nube híbrida, así como contribuir a él.
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 enviarlo a la etapa de producción con Red Hat OpenShift® AI.
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. 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 datos vectorial.
El blog oficial de Red Hat
Obtenga la información más reciente sobre nuestro ecosistema de clientes, socios y comunidades.