El paradigma de Generación Aumentada por Recuperación (RAG, por sus siglas en inglés) se ha convertido en una herramienta popular para enriquecer los modelos de lenguaje de gran tamaño (LLMs) con información adicional proveniente de fuentes externas que no estaban presentes en su corpus de entrenamiento. Esta técnica promete incrementar la precisión y relevancia de las respuestas generadas por los LLMs, aportando conocimientos específicos de dominios particulares a través de las consultas.
El RAG añade conocimiento mediante su espacio de entrada de prompts y su arquitectura comprende varios componentes clave:
Indexación: Se prepara un corpus de texto no estructurado, se realiza un procesamiento y fragmentación del mismo, para luego generar incrustaciones de cada fragmento y almacenarlas en una base de datos vectorial.
Recuperación: Se obtiene el contexto relevante para responder una pregunta desde la base de datos vectorial utilizando similitud vectorial. Se emplea ingeniería de prompts para proporcionar este contexto adicional al LLM junto con la pregunta original.
No obstante, uno de los desafíos en la precisión del RAG es que los modelos de incrustación preentrenados suelen ser entrenados en grandes conjuntos de datos de propósito general como Wikipedia o datos de rastreo web. Si bien estos modelos pueden capturar una amplia gama de relaciones semánticas y generalizar bien en diversas tareas, pueden tener dificultades para representar con precisión conceptos y matices específicos de un dominio, lo cual se traduce en un rendimiento subóptimo en tareas especializadas como las de ámbito legal, médico o técnico.
Para abordar estas limitaciones y mejorar la precisión de los sistemas RAG en dominios o tareas específicas, es esencial ajustar el modelo de incrustación en datos específicos del dominio. Esto permite al modelo aprender a capturar la semántica relevante, el léxico y las relaciones contextuales críticas para dicho dominio.
Amazon SageMaker es una herramienta poderosa para realizar estos ajustes de modelos. Esta plataforma totalmente gestionada simplifica el flujo de trabajo completo de aprendizaje automático, desde la preparación de datos y el entrenamiento del modelo hasta su despliegue y monitoreo. Además, SageMaker ofrece un entorno perfectamente integrado que abstrae las complejidades de la gestión de infraestructuras, permitiendo a desarrolladores y científicos de datos enfocarse en la construcción y iteración de sus modelos.
SageMaker es compatible de forma nativa con los marcos de trabajo de código abierto más populares, como TensorFlow, PyTorch y transformadores de Hugging Face, lo que facilita el entrenamiento y despliegue de modelos utilizando estas potentes herramientas. También proporciona una gama de algoritmos integrados para casos de uso comunes como visión por computadora, procesamiento de lenguaje natural y datos tabulares, permitiendo comenzar rápidamente con modelos preconstruidos para diversas tareas.
El ajuste fino de modelos de incrustación utilizando SageMaker incluye múltiples pasos, desde la preparación de datos y la creación de un script de entrenamiento, hasta el despliegue del modelo como un endpoint de SageMaker para inferencias. Un ejemplo específico detallado en la publicación describe cómo ajustar un modelo de transformadores de oraciones en un dominio específico utilizando un dataset de pares de preguntas y respuestas de las FAQs de Amazon Bedrock.
El impacto del ajuste fino es evidente al comparar las puntuaciones de similitud coseno entre oraciones semánticamente relacionadas utilizando tanto el modelo preentrenado original como el modelo ajustado finamente. Las oraciones testadas relacionadas con el concepto de agentes en Amazon Bedrock mostraron una mejora significativa en la similitud semántica con una puntuación que aumentó de 0.54 con el modelo preentrenado a 0.87 con el modelo ajustado.
Este proceso de ajuste fino permite que los sistemas RAG generen respuestas más precisas y relevantes, adaptadas específicamente al dominio o tarea en cuestión. Esto resulta particularmente valioso en campos como el legal, médico o técnico, donde capturar matices específicos del dominio es crucial para producir resultados de alta calidad y confianza.
En resumen, la fineza de incrustaciones en datos específicos del dominio utilizando SageMaker permite explotar todo el potencial de los sistemas RAG, proporcionando respuestas más precisas y pertinentes adaptadas a las necesidades específicas de los usuarios.