大型语言模型(LLM)持续发展,在虚拟助手、聊天机器人和对话系统等应用里占据重要地位。不过,LLM有个挑战,就是可能产生虚假或误导性信息,也就是幻觉现象。针对该问题,检索增强生成(RAG,Retrieval Augmented Generation)成为一种应对方案出现了,它能让LLM从外部可靠数据源获取信息,用来验证并支撑其输出内容的真实性。
RAG的基本原理是,让大型语言模型(LLMs)在作答时,可从外部数据集中搜索与查询相关的文档,以获取更精准可靠的信息。具体而言,用户提问后,LLMs会同时查询自身的大规模训练数据集与外部数据集。外部数据集(像私有、可信、最新的文档)的向量嵌入会被存储,借助近似最近邻搜索(ANNS)算法,快速找出与查询最相关的信息元素,为LLMs的回答给予支撑。

RAG能否成功,有效的ANNS算法是关键。要快速、精准检索查询相关信息,就得运用ANNS算法。

当前,Hierarchical Navigable Small World(HNSW)在内存型ANNS算法中处于领先地位,不过它存在着难以经济地进行扩展这一问题。

RAG数据集规模不断增大,向量嵌入维度处于768D - 1536D这样的高维时,HNSW存储向量与索引需大量DRAM,成本很高,这对RAG数据集的规模以及其基础有效性造成了限制。

与之不同的是,基于固态硬盘(SSD)的近似最近邻搜索(ANNS)算法,像微软开发的DiskANN,属于基于SSD的解决方案。DiskANN把索引存于SSD,量化后的向量(乘积量化,PQ)存于内存,针对SSD进行算法优化并优化其访问模式。这样一来,成本效益得到显著提高,且能维持与基于内存方案相近的性能。

铠侠于FMS2024展示了适用于大规模、高维度RAG数据集的DiskANN。其用铠侠CD8P系列PCIe NVMe数据中心SSD对DiskANN做基准测试,结果表明,基于SSD的DiskANN和内存中的HNSW所提供的性能相差无几。

DiskANN大大削减了HNSW的DRAM占用量,其DRAM footprint最多可减少89%。如此一来,在性能相当的情况下能大幅削减成本,让RAG应用在大规模场景中的实现成为可能。


向量数据库会把向量与索引数据从对象存储加载至查询节点。这表明数据的存储和管理是分开的,对象存储承担数据的长期存储工作,查询节点则在必要时从对象存储获取数据来处理。在大规模的RAG应用里,查询节点以SSD为搜索介质。由于SSD读写速度和性能较高,能更快处理大规模数据搜索请求,进而提升RAG应用的效率与响应速度。

DiskANN采用与HNSW相同的架构时,吞吐量可与之相当。这表明DiskANN在数据搜索与处理能力上,能达到与HNSW算法相近的水平,从而确保RAG应用的性能。而DiskANN的重要优势在于大幅降低查询节点成本,它借助优化算法和存储架构,在不影响性能的情况下,减少硬件资源的消耗,进而削减成本支出。
在基于检索增强生成(RAG)的大型语言模型(LLMs)的向量数据库架构里,SSD起到了关键的作用,为大规模RAG应用供应了高效的搜索媒介。DiskANN的运用在确保性能的前提下,极大减少了查询节点的成本,促使RAG应用在大规模场景下更具可扩展性和经济性。该架构的长处是能更好地契合RAG应用对数据处理速度与成本管控的需求,为LLMs的发展与应用给予了有力支撑。
KIOXIA为进一步推动RAG技术的应用与发展,推出了RAG优化的SSD解决方案(ROSS)。ROSS的关键在于把向量数据库从DRAM转移到SSD,这既能削减成本,又可提升系统的扩展性。KIOXIA的ROSS概念是用SSD承载ANNS,其性能和DRAM解决方案相近,却不受DRAM容量的限制,从而能够支持规模更大的向量数据库。
KIOXIA为ROSS开发的首个成果是KIOXIA AiSAQTM。借助它,向量数据库可从对象存储里将向量和索引数据加载到查询节点,还能把SSD用作大规模RAG应用的搜索介质。

KIOXIA AiSAQTM(全存储近似最近邻搜索与乘积量化)可实现从类似DiskANN的大部分在存储中到全存储、近乎零DRAM的架构转换。这将进一步拓展RAG的规模,让RAG应用能够达到近乎无限的规模。

总的来讲,RAG与ANNS是现代大型语言模型(LLM)解决方案的关键部分。不过,基于内存的ANNS算法成本很高,扩展能力也有限,难以满足不断增长的需求。随着固态硬盘(SSD)技术的发展,特别是铠侠(KIOXIA)提出的ROSS和AiSAQ这类创新方案的出现,未来RAG技术有望在更多实际场景中得到应用,从而进行更大规模的数据处理并提供服务。这些技术不断发展,我们就能期待更智能、高效的语言模型应用,为用户提供更精准、可靠的服务体验。
参考文献:FMS 2024 - 铠侠(Kioxia) - 闪存推动基于检索增强生成(RAG)的大型语言模型(LLMs)的规模化发展
若您看后有所得,欢迎点击文章左下角关注,再点击分享在看,多谢!
精彩推荐如下: