Explicación de la generación reforzada por recuperación de información: cómo corregir las lagunas de conocimiento en los LLM
Por qué los LLM generan alucinaciones y pierden actualidad, y cómo la generación reforzada por recuperación lo soluciona paso a paso: fragmentación, embeddings, recuperación de información y enriquecimiento del prompt.
Fuentes: What LLMs Often Get Wrong At, And How RAG Cures That
Dónde suelen tropezar los LLM
Piense en los exámenes orales finales. Estudia a toda prisa la noche anterior, entras, hablas con confianza ante el examinador y esperas que todo vaya bien. Luego el examinador pregunta: “¿Por qué eligió ese enfoque específico en su proyecto?”. De repente, la sala se queda en silencio.
Los LLM chocan contra el mismo muro.
Están diseñados para generar respuestas que suenen convincentes. Lo que significa que a menudo no saben cómo admitir “No lo sé”.
También está el problema del conocimiento obsoleto.
Imagínese al mismo examinador preguntando:
“¿Por qué eligió ese método cuando ahora existe uno mejor?”.
Quedaría atascado.
Los LLM se enfrentan a este mismo problema cada vez que los hechos con los que fueron entrenados ya no reflejan la realidad.
Así que la verdadera pregunta es: ¿Cómo proporcionarle a un LLM los datos correctos, justo cuando los necesita?
Introducción a la generación mejorada por recuperación de información
No dejes que el nombre te asuste. En realidad se trata de un flujo de trabajo sencillo: localizar la información relevante, entregársela al modelo y permitir que el modelo la convierta en una respuesta.
Esa es toda la idea.
Analicemos qué ocurre realmente detrás de esa descripción.
Enmarcando el problema
Supongamos que estás creando un asistente de IA interno para una empresa.
Esa empresa tiene una gran cantidad de documentos: un manual para empleados, preguntas frecuentes internas, políticas de seguridad, etc.
Una vez que el asistente esté en funcionamiento, la gente naturalmente comenzará a probarlo. Alguien escribe:
"¿Cuántos días de licencia por maternidad o paternidad tengo derecho?"
El problema es que el modelo no cuenta con una conciencia integrada de las políticas específicas de su empresa. Además, no se pueden simplemente introducir cientos de documentos extensos en la instrucción esperando una respuesta clara, ya que esto puede sobrecargar la ventana de contexto, confundir al modelo y causar otros problemas.
Cómo funciona realmente RAG
En lugar de depender del conocimiento interno del LLM para responder, primero extraemos el material relevante de nuestra propia base de conocimientos. Ese material se entrega luego al LLM.
El LLM utiliza esta información proporcionada para elaborar su respuesta.
En otras palabras, el modelo no necesita memorizar todo; solo necesita la información correcta en el momento adecuado.
Esto plantea la siguiente pregunta: ¿cómo se decide qué es relevante en primer lugar?
Recuperación
Enviar cada documento al LLM para cada pregunta sería un desperdicio y lento. Por lo tanto, es necesario encontrar una forma de aislar primero los fragmentos relevantes, ya que escanear todo cada vez es costoso e ineficiente.
Para ello, los documentos se dividen en partes más pequeñas conocidas como trozos. Un trozo podría tratar sobre las normas de licencia parental, otro podría describir los procedimientos de seguridad, y otro más podría explicar cómo funcionan los reembolsos de gastos.
Localizar el trozo correcto
Un usuario podría formular su pregunta de esta manera: "¿Cuánto tiempo libre puedo tomar después de tener un bebé?"
Mientras tanto, el propio documento podría decir: "Los empleados tienen derecho a 26 semanas de licencia parental."
La redacción difiere, pero el significado es idéntico. Para superar esta diferencia, los sistemas RAG dependen de las incrustaciones.
Qué hacen las incrustaciones
Una incrustación convierte un fragmento de texto en un conjunto de números que codifican su significado. Los textos con significados similares terminan situados cerca uno del otro en este espacio numérico, lo que se mide mediante algo llamado distancia vectorial, que básicamente es una forma de cuantificar cuán separados están dos vectores.
Estas incrustaciones se almacenan dentro de una base de datos vectoriales. Cuando llega una nueva pregunta, también se convierte en una incrustación, y el sistema busca los fragmentos más similares.
El resultado es un conjunto de fragmentos relevantes, que luego se envían al LLM como contexto de apoyo.
Aumento
Una vez identificados los fragmentos relevantes, el siguiente paso es combinarlos.
Se insertan en la ventana de contexto del LLM junto con la pregunta original:
Context:
Employees are entitled to 26 weeks of parental leave.
Question:
How long can I stay away from work after having a baby?
En este punto, el LLM cuenta con todo lo necesario para responder con precisión.
Generación
Ahora llega la parte en la que el LLM destaca: producir la respuesta real.
Lee tanto la pregunta del usuario como el contexto recuperado, y luego genera una respuesta:
"Tiene derecho a 26 semanas de licencia parental."
Y así se completa el ciclo: Recuperar → Enriquecer → Generar.
El problema
El LLM solo puede razonar utilizando el contexto que se recupere. Si se obtiene el fragmento incorrecto, la respuesta final puede seguir siendo errónea aunque el proceso funcione correctamente.
Considere este escenario:
Pregunta: “¿Cuánto dura la licencia parental?”
Trozo recuperado: “Notifique a su supervisor 30 días antes de tomar la licencia parental.”
Respuesta resultante: el asistente le dice al empleado que debe informar a su supervisor con un mes de antelación al inicio de la licencia parental; esto está técnicamente relacionado con el tema, pero en realidad no responde cuánto dura la licencia.
Mejorando la calidad de la recuperación
¿Entonces, cómo se asegura uno de que el paso de recuperación muestre el material correcto?
Varios factores son importantes aquí:
Estrategia de fragmentación: La forma en que se dividen los documentos afecta si el contexto relacionado permanece intacto dentro de un mismo fragmento.
Calidad de los embeddings: Los embeddings más fuertes facilitan alinear la pregunta del usuario con el contenido que realmente la responde.
Técnica de búsqueda: Combinar la búsqueda por similitud semántica con la búsqueda tradicional por palabras clave ayuda a capturar tanto el significado como la formulación exacta.
Reclasificación: Se obtiene un lote inicial de fragmentos candidatos y luego se aplica una segunda fase de clasificación para destacar los más útiles.
El objetivo fundamental sigue siendo simple: poner el contexto correcto frente al LLM.
Conclusión
RAG no es algún truco mágico.
Localizar la información adecuada, entregársela al LLM y dejar que el modelo genere la respuesta.
Ese es todo el mecanismo.
Nunca se ha requerido que el LLM supiera todo de antemano.
Solo necesita el contexto correcto, proporcionado en el momento adecuado.
Y ese es el principio fundamental detrás de RAG: la mala calidad de la entrada conduce a una mala salida, mientras que una entrada de calidad genera una salida de calidad.
Ahora, cada vez que alguien mencione “RAG esto, RAG aquello”, sabrá exactamente de qué están hablando.
Lecturas relacionadas
- RAG explicado: Cómo los sistemas de IA obtienen conocimiento nuevo a demanda — Aprenda cómo funciona la generación reforzada por recuperación, desde el procesamiento en fragmentos y las incrustaciones hasta la búsqueda vectorial, para que los modelos de IA puedan responder preguntas sin necesidad de reentrenamiento.
- Segundo cerebro: Conviertiendo transcripciones de reuniones en un grafo de conocimiento interrogable — Explica cómo un sistema agente extrae entidades de las transcripciones de reuniones y las almacena en Cosmos DB para permitir la recuperación mediante lenguaje natural y la exploración del grafo de conocimiento.