Tema

Generación aumentada por recuperación

La generación aumentada por recuperación busca fragmentos relevantes en una colección externa y los coloca en el contexto antes de generar, de modo que la respuesta se apoya en texto recuperado y no solo en los pesos del modelo.

Nombre en inglés

Retrieval augmented generation

Intuición

En lugar de exigir que todo el conocimiento quepa en los parámetros, el sistema abre el libro antes de responder. La calidad depende más del recuperador que del generador, porque un fragmento que no contiene la respuesta no se arregla con un generador mejor, y actualizar la colección sustituye a reentrenar.

Fórmula

P(y | x) = \sum_{d \in top_k} P(d | x) P(y | x, d)

Ejemplo resuelto

Sea una colección partida en fragmentos de 400 tokens con solape de 50, de manera que tras el primero cada fragmento nuevo avanza 350 tokens. Un documento de 2000 tokens produce así 6 fragmentos. Si el recuperador devuelve los 5 mejores y el 80 % de las preguntas tiene su respuesta en alguno de ellos, el techo de exactitud del sistema es 80 %, por bueno que sea el generador. Subir a los 10 mejores eleva ese techo a costa de duplicar el contexto y el costo por consulta.

Errores frecuentes

Ejercicio

Un recuperador coloca el fragmento correcto entre los 5 primeros en el 80 % de las consultas. El generador responde bien el 90 % de las veces que dispone de ese fragmento y el 10 % cuando no lo tiene. ¿Cuál es la exactitud del sistema?

Ver la solución

La exactitud total suma los dos caminos. Con el fragmento correcto disponible vale 0.8 por 0.9 = 0.72, y sin él vale 0.2 por 0.1 = 0.02, de modo que el total llega a 0.74. Conviene fijarse en el reparto del esfuerzo, ya que subir el generador del 90 % al 95 % añade 4 puntos y subir el recuperador del 80 % al 90 % añade 8.

Respuesta: 0.74

Temas relacionados

Cursos a los que prepara

Abrir el tema en la guía