RAGCache: optimización de la generación de recuperación aumentada con almacenamiento en caché dinámico
La generación aumentada de recuperación (RAG) ha mejorado significativamente las capacidades de los modelos de lenguaje grandes (LLM) al incorporar conocimiento externo para proporcionar respuestas contextualmente más relevantes y precisas. Sin embargo, esta técnica tiene un gran inconveniente: a menudo conlleva elevados costes computacionales y de memoria. Estos desafíos se deben principalmente a la inyección de largas secuencias de documentos externos en las solicitudes, que pueden ampliar la longitud de la secuencia original en más de diez veces. Como resultado, los mayores requisitos computacionales y de memoria obstaculizan la eficiencia de RAG, lo que representa un obstáculo sustancial para su escalabilidad para aplicaciones en tiempo real. Los intentos anteriores de optimizar la inferencia de LLM compartiendo estados intermedios han sido útiles, pero no logran abordar completamente las demandas únicas de RAG, particularmente las que surgen de la generación de secuencias largas y la recuperación frecuente de conocimientos.
Un equipo de investigadores de la Universidad de Pekín y ByteDance presentaron RAGCache, un novedoso sistema de almacenamiento en caché dinámico multinivel diseñado específicamente para optimizar la generación aumentada de recuperación. Aborda las ineficiencias de las configuraciones RAG tradicionales mediante la introducción de un árbol de conocimiento que almacena en caché los estados intermedios de los documentos recuperados tanto en la GPU como en las jerarquías de memoria del host. RAGCache utiliza una política de reemplazo diseñada para tener en cuenta las características de inferencia de LLM y los patrones de recuperación de RAG, lo que mejora significativamente las tasas de aciertos de caché. Además, el sistema superpone las etapas de recuperación e inferencia, lo que reduce la latencia de un extremo a otro. Este diseño permite a RAGCache almacenar en caché y administrar dinámicamente tensores de valores clave, lo que lo convierte en el primer sistema capaz de compartir estos estados en múltiples solicitudes. Al hacerlo, RAGCache reduce los cálculos redundantes y acelera los tiempos de respuesta, al mismo tiempo que aprovecha la GPU y la memoria del host de manera eficiente.
RAGCache emplea un árbol de conocimiento para organizar los tensores de valores clave almacenados en caché de los documentos recuperados. Los documentos a los que se accede con frecuencia se almacenan en la memoria rápida de la GPU, mientras que los a los que se accede con menos frecuencia se almacenan en la memoria del host más lenta. Una innovación central de RAGCache es su política de reemplazo Greedy-Dual-Size-Frequency (PGDSF) con reconocimiento de prefijos, que considera cuidadosamente el orden, la frecuencia, el tamaño y la actualidad de los documentos para minimizar los errores de caché. Este diseño garantiza que los estados intermedios más valiosos se conserven y reutilicen, lo que reduce significativamente los tiempos de procesamiento de solicitudes posteriores. Otra característica clave es la canalización especulativa dinámica, que se superpone a los pasos de recuperación de vectores y de inferencia LLM, mitigando la latencia causada por la ejecución secuencial. Estas mejoras técnicas culminan en un sistema que logra un tiempo hasta el primer token (TTFT) hasta 4 veces más rápido y un rendimiento mejorado hasta 2,1 veces en comparación con configuraciones tradicionales como vLLM integrado con Faiss.
La importancia de RAGCache radica en su capacidad para hacer que RAG sea más práctico para casos de uso a gran escala y en tiempo real. En las pruebas comparativas realizadas, RAGCache se implementó en vLLM, un sistema de inferencia LLM líder, junto con Faiss, una popular base de datos vectorial. Los resultados fueron convincentes: RAGCache redujo el tiempo hasta el primer token hasta 4 veces y mejoró el rendimiento 2,1 veces en comparación con vLLM que utiliza Faiss. Además, en comparación con SGLang, un sistema de servicio LLM de alto rendimiento, RAGCache todavía mostró mejoras sustanciales de hasta 3,5 veces de reducción en TTFT y 1,8 veces de mejora en el rendimiento. Estas mejoras en el rendimiento subrayan la eficiencia del almacenamiento en caché multinivel combinado con técnicas avanzadas de recuperación y superposición de generación. Al garantizar que los documentos a los que se accede con frecuencia se almacenen en caché de manera eficiente, RAGCache reduce significativamente las cargas computacionales, lo que lo hace ideal para escenarios que involucran grandes volúmenes de solicitudes de recuperación similares.
RAGCache representa un paso transformador en la optimización de la generación aumentada de recuperación al introducir un sistema de almacenamiento en caché inteligente de múltiples niveles que reduce la latencia y aumenta el rendimiento. Su enfoque innovador para almacenar en caché estados intermedios en múltiples solicitudes y administrar dinámicamente la memoria en todos los niveles de GPU y host aborda directamente los cuellos de botella de los sistemas RAG actuales. Los resultados experimentales muestran que RAGCache puede proporcionar mejoras sustanciales en el rendimiento, lo que la convierte en una herramienta poderosa para ampliar RAG en aplicaciones prácticas en tiempo real. A medida que los LLM continúan creciendo en complejidad y tamaño, soluciones como RAGCache son fundamentales para garantizar que estas tecnologías se puedan implementar de manera eficiente sin comprometer la velocidad o el costo computacional.
Mira el Papel. Todo el crédito por esta investigación va a los investigadores de este proyecto. Además, no olvides seguirnos en Gorjeo y únete a nuestro Canal de telegramas y LinkedIn Grarriba. Si te gusta nuestro trabajo, te encantará nuestro hoja informativa.. No olvides unirte a nuestro SubReddit de más de 55.000 ml.
(Revista/Informe AI) Lea nuestro último informe sobre ‘MODELOS DE LENGUAS PEQUEÑAS‘
Aswin AK es pasante de consultoría en MarkTechPost. Está cursando su doble titulación en el Instituto Indio de Tecnología de Kharagpur. Le apasiona la ciencia de datos y el aprendizaje automático, y aporta una sólida formación académica y experiencia práctica en la resolución de desafíos interdisciplinarios de la vida real.
Escuche nuestros últimos podcasts de IA y vídeos de investigación de IA aquí ➡️