Ya hemos organizado nuestra «biblioteca» de conocimiento en la etapa de ingesta. Recordemos que este es un proceso que se realiza una sola vez (o cada vez que actualizamos los datos). Ahora, vamos a la acción: la etapa de recuperación, que se activa cada vez que un usuario hace una pregunta.
El Proceso de Recuperación Paso a Paso
Así es como funciona la magia de RAG en tiempo real:
- El Usuario Pregunta: Un usuario introduce una consulta en la interfaz de chat (por ejemplo, en una aplicación que utiliza un LLM como motor).
- La Pregunta se Convierte en Vector: Al igual que hicimos con nuestros documentos, el sistema toma la pregunta del usuario y la convierte en un vector utilizando el mismo modelo de embedding. Esto nos da una «coordenada» que representa el significado de la pregunta.
- Búsqueda por Similitud: El sistema utiliza ese «vector-pregunta» para buscar en la base de datos vectorial. Su objetivo es encontrar los «vecinos más cercanos», es decir, los 5, 10 o 15 fragmentos (chunks) de información cuyo significado sea más similar al de la pregunta. Es crucial entender que no busca palabras clave, sino similitud semántica.
- «Aumentación» del Prompt: Aquí ocurre el paso clave. El sistema toma los fragmentos más relevantes que ha recuperado y los inyecta automáticamente en el prompt que se enviará al LLM, justo al lado de la pregunta original del usuario.
- Generación de la Respuesta: Finalmente, el LLM recibe un prompt «aumentado» que contiene:
- La pregunta original del usuario.
- El contexto preciso y relevante extraído de la base de datos de tu negocio. Con esta información, el LLM puede generar una respuesta mucho más precisa y contextualizada que si dependiera únicamente de su conocimiento general.
Evaluando RAG: Ventajas y Desventajas
Como toda tecnología, RAG tiene sus pros y sus contras.
Ventajas 👍
- Fácil de Actualizar: Para poner al día el conocimiento de la IA, solo necesitas actualizar los documentos en la base de datos vectorial. No hay que reentrenar modelos costosos.
- Altamente Escalable: Puedes construir una base de datos vectorial para que contenga todo el conocimiento de tu empresa, sin importar su tamaño.
Desventajas 👎
- Ligeramente Más Lento: El paso extra de tener que buscar en la base de datos antes de generar la respuesta añade una pequeña latencia (retraso). La respuesta no es tan instantánea como en un LLM sin RAG.
- Configuración Más Compleja: Como hemos visto, el proceso de ingesta (chunking, embedding, etc.) requiere una configuración inicial más elaborada.
La Alternativa Más Popular: CAG
Debido a estas consideraciones, han surgido otras arquitecturas. La alternativa más popular a RAG es CAG, o Generación Aumentada por Caché (Cache-Augmented Generation). A continuación, veremos en qué consiste y por qué es una técnica tan interesante.