RAGCache: Efficient Knowledge Caching for Retrieval-Augmented Generation

2024年04月18日
  • 简介
    Retrieval-Augmented Generation (RAG)通过整合大型语言模型(LLM)和外部知识数据库,已经在各种自然语言处理任务中展现出了显著的改进。然而,RAG引入了长序列生成,导致计算和内存成本很高。我们提出了RAGCache,一个专门为RAG定制的新型多级动态缓存系统。我们的分析基准测试了当前的RAG系统,确定了性能瓶颈(即由于知识注入导致的长序列)和优化机会(即缓存知识的中间状态)。基于这些见解,我们设计了RAGCache,它将检索到的知识的中间状态组织成知识树,并将它们缓存在GPU和主机内存层次结构中。RAGCache提出了一种替换策略,它能够了解LLM推理特性和RAG检索模式。它还动态地重叠检索和推理步骤,以最小化端到端延迟。我们实现了RAGCache,并在vLLM(一个最先进的LLM推理系统)和Faiss(一个最先进的向量数据库)上进行了评估。实验结果显示,与集成Faiss的vLLM相比,RAGCache将首个标记的时间(TTFT)缩短了多达4倍,并将吞吐量提高了多达2.1倍。
  • 图表
  • 解决问题
    本文旨在解决Retrieval-Augmented Generation (RAG)在注入知识后引入的长序列生成和高计算、内存成本的问题。
  • 关键思路
    本文提出了RAGCache,一个专门为RAG定制的多级动态缓存系统,通过缓存知识的中间状态来优化RAG的性能,减少时间延迟和提高吞吐量。
  • 其它亮点
    RAGCache提出了一个知识树来组织检索到的知识的中间状态,并在GPU和主机内存层次结构中缓存它们。它还提出了一个替换策略,以便在意识到LLM推理特征和RAG检索模式的情况下进行。实验结果表明,与vLLM和Faiss集成相比,RAGCache将时间到第一个标记(TTFT)缩短了4倍,并将吞吐量提高了2.1倍。
  • 相关研究
    最近的相关研究包括使用不同的缓存策略和知识管理技术来优化RAG性能的研究,如KGR、K-Adapter和K-BERT等。
PDF
原文
点赞 收藏 评论 分享到Link

沙发等你来抢

去评论