
回复
CAG:Cache-Augmented Generation 缓存增强生成。
不要做 RAG 了:当缓存增强生成对于知识任务就足够时
检索增强生成(RAG)作为一种通过整合外部知识源来增强语言模型的有效方法,已经得到了广泛应用。然而,RAG 引入了检索延迟、文档选择潜在错误和系统复杂性增加等挑战。随着具有显著扩展上下文窗口的大型语言模型(LLMs)的出现,本文提出了一种替代范式,即缓存增强生成(CAG),它绕过了实时检索。我们的方法涉及预先加载所有相关资源,特别是当检索的文档或知识有限且可管理时,将其加载到 LLM 的扩展上下文中,并缓存其运行时参数。在推理过程中,模型利用这些预先加载的参数来回答查询,而无需额外的检索步骤。比较分析表明,CAG 消除了检索延迟,并最小化了检索错误,同时保持了上下文相关性。在多个基准测试中的性能评估突出了长上下文 LLMs 在哪些场景下优于或补充了传统的 RAG 管道。这些发现表明,对于某些应用,尤其是那些知识库受限的应用,CAG 提供了一种简化和高效的替代方案,与 RAG 相比,在降低复杂性的同时实现可比或更优的结果。
感觉还是longcontext VS RAG,随便写写,好像容易被喷。
套了层缓存的壳。
CAG对{context}部分的KV提前缓存, RAG的{context}部分是动态的。
3个阶段: 缓存 -> 推理 -> cacheReset(就是应对多轮,超长了,截断一下)
优势:(引用)