La generación mejorada por recuperación (RAG) explicada
Aquí tienes un ejemplo de cómo puedes crear una interfaz similar a ChatGPT utilizando tu propia base de conocimientos.
¿Qué es la generación mejorada por recuperación (RAG)?
En este artículo tienes la explicación: «La generación mejorada por recuperación (RAG · Retrieval-Augmented Generation) es el proceso de optimización de la salida de un modelo lingüístico de gran tamaño, de modo que haga referencia a una base de conocimientos autorizada fuera de los orígenes de datos de entrenamiento antes de generar una respuesta.»
Vamos a entender como funciona la generación mejorada por recuperación
La Generación Mejorada por Recuperación (RAG) es una potente herramienta para mejorar el rendimiento de los Grandes Modelos Lingüísticos (LLM) mediante la incorporación de conocimiento externo al proceso de generación.
Los 5 componentes clave de la RAG
Base de conocimientos personalizada
Base de conocimientos personalizada: Una colección de información relevante y actualizada que sirve de base.
Puede ser una base de datos, un conjunto de documentos o una combinación de ambos.
Chunking
La fragmentación es el proceso de dividir un texto de entrada grande en partes más pequeñas.
Esto garantiza que el texto se ajuste al tamaño de entrada del modelo de incrustación y mejora la eficacia de la recuperación.
La aplicación de una estrategia de fragmentación inteligente puede mejorar enormemente su sistema RAG.
Embeddings y modelo de incrustación
Técnica para representar datos de texto como vectores numéricos que pueden introducirse en modelos de aprendizaje automático.
El modelo de incrustación se encarga de convertir el texto en estos vectores.
Bases de datos de vectores
Una colección de representaciones vectoriales precalculadas de datos de texto para una rápida recuperación y búsqueda de similitudes, con capacidades como operaciones CRUD, filtrado de metadatos y escalado horizontal.
Interfaz de chat de usuario
Una interfaz fácil de usar que permite a los usuarios interactuar con el sistema RAG, proporcionando una consulta de entrada y recibiendo una salida.
La consulta se convierte en una incrustación que se utiliza para recuperar el contexto pertinente de la base de datos de vectores.
Plantilla de instrucción
El proceso de generación de una consulta adecuada para el sistema RAG, puede ser una combinación de la consulta del usuario y la base de conocimientos personalizada.
Esto se da como entrada a un LLM que produce la respuesta final.
Esto esta basado en un publicación en Twitter/X de Akshay.