随着大模型技术的不断发展,尤其是大模型上下文窗口(context window)逐渐增大的趋势,许多研究者开始思考是否可以借此特点简化传统的 RAG(Retrieval-Augmented Generation)架构。在此背景下,2024年12月的研究论文提出了一个创新方案——CAG(Cache-Augmented Generation),这是一种通过预加载外部文档到大模型的上下文窗口来简化传统 RAG 流程的方法。本文将详细介绍 CAG 的特点、工作原理、实验结果、适用场景以及如何快速上手。
1. RAG 的天生不足之处
尽管RAG在理论上能够通过引入外部知识提高生成能力,但它在实际应用中面临的挑战不可忽视:
-
延迟高和复杂度大:RAG依赖于实时检索过程,需要在查询时进行向量搜索、排序、选择相关文档等复杂操作。这些操作不仅增加了计算负担,还导致了响应时间的延长,尤其是在面对大规模文档库时。
-
安全隐患:为了提升检索的准确性,RAG通常将外部文档转化为向量并存储在向量数据库中。然而,这种做法可能会导致敏感信息泄漏的风险,特别是在涉及个人隐私或商业机密的数据时。
-
依赖第三方向量存储:许多RAG实现依赖于商业化的向量数据库和嵌入生成服务,这些服务的使用可能导致商业偏见,并带来额外的成本和数据隐私问题。
鉴于这些问题,研究者们开始探索一种更加简化且高效的替代方案——CAG。
2. CAG 简介
CAG(Cache-Augmented Generation)是一种基于大模型上下文窗口扩展特性的RAG优化方案,通过预加载相关文档并生成键值缓存(KV Cache),消除了传统RAG中的实时检索环节。这一过程将外部知识直接集成到模型的工作内存中,从而减少了延迟,提高了系统的整体效率。
2.1 基本特点
CAG的核心思想在于预加载相关文档并将其转化为键值缓存(KV Cache),然后将缓存数据与用户查询一同传递给大模型。这样,在推理时,模型能够直接利用预先加载的知识进行生成,无需进行实时检索和向量搜索。
-
简化架构:CAG不需要构建复杂的向量空间或检索组件,从而大大简化了系统架构。
-
消除延迟:通过预先处理并缓存相关文档,CAG避免了检索过程的延迟,提升了响应速度。
-
增强安全性:敏感数据可以存储在安全的数据库中,而不是转化为向量,这减少了数据泄露的风险。
2.2 工作原理
CAG的工作原理可以分为三个阶段:
-
外部知识预加载:在这一阶段,相关领域的文档被预处理并格式化为适应大模型上下文窗口的形式。大模型将这些文档编码成键值对(KV Cache),并将其存储以供后续使用。该过程的计算成本只发生在文档处理时,之后的查询可以直接利用缓存。
-
推理:在推理阶段,预先计算的键值缓存与用户的查询一同加载到模型中,模型利用这些缓存的上下文生成响应。这一过程不再依赖实时检索,极大减少了延迟并降低了数据选择错误的风险。
-
缓存重置:为了保持系统性能,缓存可以在多个推理会话后高效重置。由于KV Cache是按追加方式增长的,重置操作只需截断新增的令牌,而无需重新加载整个缓存。
传统 RAG 和 CAG 工作流程的比较:上部说明了 RAG 管道,包括推理过程中的实时检索和参考文本输入,而下部描述了 CAG 方法,该方法预加载 KV 缓存,从而消除了推理时的检索步骤和参考文本输入。
2.3 优点
-
提升效率:通过预加载和缓存外部知识,CAG消除了实时检索过程,显著提高了计算效率。
-
增强安全性:敏感数据存储在安全数据库中,而非嵌入到向量空间,降低了数据泄露的风险。
-
简化架构:无需构建复杂的向量检索和存储组件,系统架构更加简洁。
-
减少延迟:通过避免实时操作,CAG减少了推理延迟,提高了响应速度。
3. 实验结果及适用场景
为了验证CAG的效果,研究者们对其进行了大量实验,比较了CAG与传统RAG(基于BM25的稀疏检索和OpenAI的密集检索)的性能。
3.1 实验结果
-
数据集:使用了SQuAD 1.0和HotPotQA数据集,这两个数据集包含了多种不同难度的问答任务。
-
评估指标:采用BERTScore作为评估指标,用于比较生成文本与真实答案的相似度。
-
实验结果:
-
性能优越:CAG在大多数测试中超越了传统的RAG方法,特别是在HotPotQA数据集上,CAG凭借全量上下文理解的优势,表现明显优于基于检索的RAG。
-
推理时间缩短:由于不再需要实时检索,CAG显著降低了推理时间,特别是在面对大规模文档时的响应速度明显提高。
-
BERTScore表现:CAG在大部分情况下的BERTScore优于传统RAG系统,证明了其在生成准确性上的优势。
CAG在大多数测试中超越了传统的RAG方法
3.2 适用场景
CAG尤其适用于知识库有限且文档量可控的任务。对于文档集较小、内容相对固定的应用场景,CAG能够显著提升性能,并简化系统架构。
-
约束性知识库:对于某些任务,知识库大小适中且固定,可以直接加载到大模型的上下文窗口中,这时CAG表现出色。
-
混合方法:对于需要全面知识和适应特定查询的任务,CAG还可以与检索机制结合使用,通过预加载基础上下文并结合选择性检索来应对特定问题。
4. 快速上手
想要快速体验CAG,可以按照以下步骤进行:
安装依赖
pip install -r ./requirements.txt
准备数据
# 下载所需的数据集
sh ./downloads.sh
配置环境
# 复制并配置环境文件
cp ./.env.template ./.env
运行实验
-
rag.py
:用于传统RAG实验。 -
kvcache.py
:用于CAG实验。
5. 结论及展望
CAG作为RAG的简化替代方案,特别适合在知识库有限且可控的场景下应用。通过预加载和缓存外部知识,CAG不仅消除了实时检索带来的延迟,还减少了系统复杂度,并提升了计算效率。在未来,随着大模型上下文窗口的不断扩展,CAG的优势将更加明显,尤其是在处理大规模知识库和长文本时。
随着技术的不断进步,CAG将成为大模型技术中的重要组成部分,提供更加高效、安全和简洁的解决方案。在不久的将来,我们可能会看到CAG与更多先进技术的结合,为实际应用带来更强大的智能服务。
如何学习AI大模型 ?
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI无需检索!CAG 通过键值缓存让 RAG 轻松上手大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。【保证100%免费】🆓
优快云粉丝独家福利
这份完整版的 AI 大模型学习资料已经上传优快云,朋友们如果需要可以扫描下方二维码&点击下方优快云官方认证链接免费领取 【保证100%免费】
读者福利: 👉👉优快云大礼包:《最新AI大模型学习资源包》免费分享 👈👈
对于0基础小白入门:
如果你是零基础小白,想快速入门大模型是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。
👉1.大模型入门学习思维导图👈
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过AI大模型的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。(全套教程文末领取哈)
👉2.AGI大模型配套视频👈
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。
👉3.大模型实际应用报告合集👈
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(全套教程文末领取哈)
👉4.大模型落地应用案例PPT👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(全套教程文末领取哈)
👉5.大模型经典学习电子书👈
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。(全套教程文末领取哈)
👉6.大模型面试题&答案👈
截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。(全套教程文末领取哈)
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习
优快云粉丝独家福利
这份完整版的 AI 大模型学习资料已经上传优快云,朋友们如果需要可以扫描下方二维码&点击下方优快云官方认证链接免费领取 【保证100%免费】
读者福利: 👉👉优快云大礼包:《最新AI大模型学习资源包》免费分享 👈👈