Por qué los LLM necesitan memoria externa: RAG, embeddings y fine-tuning
Cómo la generación aumentada por recuperación le da a un modelo de lenguaje un libro abierto: troceado, embeddings, respuestas fundamentadas, dónde RAG supera al fine-tuning y dónde sigue fallando.
Pídele a un modelo de lenguaje grande que explique un concepto complicado, resuma un informe o redacte una respuesta convincente, y normalmente lo hará bien. Pídele que se comporte como una base de datos y tendrás problemas. Lo que sabe vive en sus parámetros y refleja los datos que existían cuando se entrenó. Ese conocimiento puede estar incompleto, desfasado o ser imposible de comprobar, y cuando el modelo no sabe algo puede responder igualmente con total seguridad.
La generación aumentada por recuperación (Retrieval-Augmented Generation, RAG) es la solución estándar. En lugar de responder solo de memoria, el modelo busca primero información relevante en una biblioteca externa y luego redacta su respuesta con lo que ha encontrado.
Examen a libro cerrado y a libro abierto
Imagina que le pides a una abogada que revise un contrato. Con las reglas de libro cerrado, tiene que recordar cada cláusula de memoria, e incluso una profesional con experiencia puede citar mal un detalle o basarse en una versión antigua. Con las reglas de libro abierto, le das un archivador bien organizado. Encuentra el documento correcto, lee la cláusula exacta y después la explica.
Los modelos de lenguaje se comportan igual:
Closed-book approach:
Question
|
v
LLM's internal memory
|
v
Possible outdated or invented answer
Open-book RAG approach:Question
|
v
Search external documents
|
v
Retrieve relevant passages
|
v
LLM uses those passages to answer
El modelo sigue siendo el que entiende y explica. El sistema de recuperación solo aporta las pruebas.
La memoria paramétrica y sus límites
Lo que un modelo sabe internamente se llama memoria paramétrica. Durante el entrenamiento procesa enormes cantidades de datos y ajusta sus parámetros, y el resultado no es una tabla ordenada de hechos. La información acaba convertida en patrones repartidos por toda la red. Eso es lo que hace flexible al modelo, pero trae problemas:
- Cambiar un dato concreto es difícil.
- A veces no se puede saber de dónde sale una respuesta.
- El conocimiento se queda anticuado.
- Los patrones correctos e incorrectos pueden mezclarse.
- La información privada de la empresa no está disponible de forma automática.
RAG añade un segundo tipo de memoria, que suele llamarse no paramétrica. Está fuera del modelo: en documentos, bases de datos, índices de búsqueda o almacenes vectoriales. La investigación original sobre RAG lo planteaba como la unión de un modelo preentrenado con un índice denso externo de documentos.
Cómo funciona un sistema RAG básico
La mayoría de los sistemas siguen cuatro etapas.
1. Preparar los documentos
Se reúnen los documentos, se limpian y se cortan en fragmentos llamados chunks. Un fragmento debe ser lo bastante grande para conservar su sentido y lo bastante pequeño para recuperarlo con precisión. Una política de empresa, por ejemplo, conviene dividirla por secciones en lugar de trocearla al azar a mitad de frase.
2. Convertir el texto en algo que se pueda buscar
Cada fragmento se convierte en un embedding, una representación numérica de su significado. Los textos con significados parecidos producen embeddings parecidos, así que el sistema encuentra fragmentos relevantes aunque la redacción sea distinta. Alguien puede preguntar cuántos días puede teletrabajar, mientras que la política dice que los empleados pueden trabajar en remoto hasta dos días por semana. Una buena recuperación conecta ambas cosas pese al vocabulario diferente.
3. Recuperar lo relevante
Cuando llega una pregunta, el sistema también la convierte en embedding y busca fragmentos cercanos. Elige las mejores coincidencias y las coloca en el contexto del modelo.
User question
|
v
Search document index
|
v
Retrieve relevant passages
|
v
Add passages to the model prompt
4. Generar una respuesta fundamentada
Ahora el modelo ve la pregunta y el material recuperado. Puede resumir ese material, comparar fuentes o explicar la respuesta con claridad. Un sistema bien construido también le indica al modelo que cite las fuentes y que reconozca cuando los documentos no contienen información suficiente.
RAG frente a fine-tuning
Cuando una empresa quiere que un modelo use conocimiento interno, su primer impulso suele ser el fine-tuning. Puede ayudar, pero es un mal sitio para guardar datos que cambian. El fine-tuning modifica el comportamiento del modelo entrenándolo con ejemplos adicionales, así que revisar una política cada semana de esa forma sería lento, caro y difícil de auditar.
RAG va por otro camino. Cuando cambia la información, actualizas la colección de documentos y la siguiente consulta ya puede recuperar la versión nueva. Es la diferencia entre reescribirle la memoria a alguien y entregarle un libro de consulta actualizado.
| Necesidad | Fine-tuning | RAG |
|---|---|---|
| Cambiar el estilo de redacción | Encaja muy bien | Limitado |
| Enseñar un formato de respuesta concreto | Encaja muy bien | Posible, pero menos directo |
| Añadir datos que cambian a menudo | Encaja mal | Encaja muy bien |
| Usar documentos privados | Posible, pero costoso | Encaja muy bien |
| Mostrar el material de origen | Difícil | Natural |
| Actualizar la información rápidamente | Requiere reentrenar | Actualizar el índice de documentos |
Los estudios que comparan ambos enfoques han visto que RAG es especialmente eficaz para incorporar datos poco frecuentes o recién aparecidos. Una comparación entre inyectar conocimiento entrenando y recuperándolo está publicada en arXiv, y un análisis posterior llega a una conclusión parecida.
No compiten en todas las situaciones. Un equipo puede hacer fine-tuning para el tono y el comportamiento y usar RAG para los datos actualizados.
RAG no lo cura todo
RAG reduce la tasa de errores, pero no garantiza respuestas correctas. Un sistema puede fallar igualmente cuando:
- Nunca se añadió el documento correcto.
- El documento está desactualizado.
- La búsqueda devuelve el fragmento equivocado.
- La información clave está dispersa en fragmentos mal diseñados.
- El modelo interpreta mal el texto recuperado.
- Aparecen documentos contradictorios sin una prioridad clara.
Así que la calidad depende de algo más que el modelo. Cuentan la estructura de los documentos, la calidad de la búsqueda, los metadatos, los permisos, las citas y la evaluación. Una forma de recordarlo: RAG mejora el acceso del modelo a las pruebas, pero las pruebas tienen que ser buenas.
Dónde rinde en las empresas
RAG encaja mejor cuando la información es privada, especializada o se actualiza a menudo. Piensa en políticas de recursos humanos y de viajes, manuales de producto, bases de conocimiento de soporte, contratos y otro material jurídico, informes financieros, documentación técnica y de API, guías sanitarias y registros de proyectos concretos.
Supongamos que un empleado pregunta cuál es el límite actual de reembolso por viajes. Un modelo de propósito general podría dar una respuesta genérica o adivinar. Un sistema RAG busca en la política de viajes vigente y responde con la cifra aprobada, y puede añadir el título del documento, la versión de la política y la sección relevante para que la respuesta sea fácil de revisar y auditar.
Un nuevo reparto del trabajo
RAG cambia para qué sirve el modelo de lenguaje. Ya no tiene que guardar cada dato que pueda necesitar, y puede actuar como una capa de razonamiento y comunicación conectada a conocimiento externo.
External documents
|
v
Search and retrieval system
|
v
Relevant context
|
v
Language model
|
v
Answer with explanation and sources
El modelo interpreta, el sistema de recuperación hace de bibliotecario y los documentos son la estantería de consulta. Separar esos papeles hace que los sistemas sean más fáciles de actualizar y, a menudo, de gobernar.
Lo que la recuperación todavía no puede hacer
Tener acceso a la información no es lo mismo que poder actuar. Un modelo puede saber que una solicitud de viaje necesita aprobación y aun así no poder aprobarla. Puede explicar una política de reembolsos sin poder emitir un reembolso, porque no tiene acceso al sistema de negocio. Cerrar esa brecha significa conectar los modelos a herramientas mediante llamadas a funciones y API, para que pasen de producir texto a hacer trabajo útil. El modelo ha aprendido del mundo y RAG le permite consultar. Enseñarle a actuar según lo que sabe es el siguiente problema.
Artículos que vale la pena abrir
- El artículo original de RAG, presentado en NeurIPS 2020, combina un generador preentrenado con un índice de recuperación.
- Un estudio few-shot sobre modelos de lenguaje aumentados con recuperación muestra hasta dónde llega la recuperación con solo un puñado de ejemplos.