devv.ai es la segunda parte de cómo construir un sistema RAG eficiente. Esta serie de hilos compartirá la experiencia detrás de la construcción del sistema de generación aumentada de recuperación devv.ai, incluyendo algunas prácticas en entornos de producción. Este es el segundo artículo de la serie, con el tema "Cómo evaluar un sistema RAG". 🧵
En el artículo anterior mencionamos qué es el sistema RAG, así como los elementos básicos que lo componen, aquí vamos a repasarlos. Un sistema RAG básico consta de las siguientes 3 partes: 1. Modelo de lenguaje 2. Conjunto de conocimientos externos 3. Conocimientos externos necesarios para el escenario actual
Querer optimizar todo el sistema implica descomponer el problema en la optimización de cada parte del sistema. Sin embargo, el desafío de optimizar un sistema basado en LLM radica en que este sistema es fundamentalmente una caja negra, sin un conjunto efectivo de métricas de evaluación. Sin siquiera tener un benchmark básico, hablar de mejorar los indicadores correspondientes es simplemente hablar en vano.
Así que lo primero que debemos hacer es establecer un sistema de evaluación para todo el sistema RAG. Este artículo de Stanford se centra principalmente en esta tarea, evaluando la verificabilidad de los motores de búsqueda generativos. Evaluando la Verificabilidad en Motores de Búsqueda Generativos arxiv.org/abs/2304.09848
Esta investigación, aunque se centra en evaluar el Generative Search Engine (motor de búsqueda generativo), también puede aplicar sus métodos a RAG. En esencia, el Generative Search Engine es un subconjunto de RAG, al igual que los sistemas RAG específicos para datos de dominios particulares.
El documento menciona que un requisito previo para un Generative Search Engine confiable es la verificabilidad. Todos sabemos que LLM a menudo delira seriamente (alucinación), generando contenido que parece correcto pero en realidad es incorrecto. Una ventaja de RAG es proporcionar al modelo material de referencia para reducir la probabilidad de alucinaciones.
Y la cantidad de reducción de esta ilusión puede evaluarse utilizando el indicador de verificabilidad. Un sistema RAG ideal debería tener: - Alta tasa de recuperación de citas, es decir, todo el contenido generado tiene un respaldo suficiente de citas (conocimiento externo) - Alta precisión de citas, es decir, si cada cita realmente respalda el contenido generado
En realidad, estos dos indicadores no pueden alcanzar el 100%. Según los resultados experimentales del artículo, el contenido generado por el Motor de Búsqueda Generativo existente a menudo contiene afirmaciones infundadas y citas inexactas, con tasas respectivas del 51.5% y 74.5%. En resumen, el contenido generado no coincide con el conocimiento externo.
La tesis evalúa 4 motores de búsqueda generativos principales: - Bing Chat - NeevaAI (ya adquirido por Snowflake) - Perplexity - YouChat Las preguntas evaluadas provienen de diferentes temas y campos.
Se han utilizado 4 indicadores para la evaluación: 1. fluidez, ¿es el texto generado fluido y coherente? 2. utilidad percibida, ¿es útil el contenido generado? 3. recordatorio de citas, ¿en qué medida el contenido generado está respaldado por citas? 4. precisión de citas, ¿en qué medida las citas respaldan el contenido generado?
Los indicadores 1 y 2 suelen ser condiciones básicas, si ni siquiera se cumplen estos, todo el sistema RAG carecerá de sentido (no importa lo preciso que sea). Un sistema RAG excelente debería obtener puntuaciones altas en la recuperación de citas y la precisión de citas.