RAG
KET-RAG: A Cost-Efficient Multi-Granular Indexing Framework for Graph-RAG
Graph-RAG 通过构建知识图谱提升 LLM 问答系统检索效果,尤其适用于需要多跳推理的生物医学、法律和政治科学领域。现有 Graph-RAG 系统基于文本块相关性构建 KNN 图,但无法捕捉实体关系,导致质量不佳。近期解决方案利用 LLM 提取实体和关系构建三元组知识图谱,但索引成本高昂。
为此,我们提出 KET-RAG 多粒度索引框架。它首先识别关键文本块并构建知识图谱骨架,然后构建文本-关键词二分图作为轻量替代。检索时,它结合骨架的局部搜索和二分图的模拟搜索提升质量。在两个真实数据集上,KET-RAG 在索引成本、检索效果和生成质量上均优于其他方案。与微软 Graph-RAG 相比,它检索质量相当或更优,索引成本降低超一个数量级,生成质量提升最高 32.4%,索引成本降低约 20%。
项目地址:https://github.com/waetr/KET-RAG
在医疗、法律等专业领域,大语言模型问答系统常常需要处理海量文档的多跳推理问题。传统方法构建知识图谱动辄花费数十万元,而基于文本块相似度的方案又难以捕捉实体关系。新加坡国立大学团队提出的 KET-RAG 框架,用创新性的多粒度索引技术实现了成本与效果的完美平衡。
一、为什么需要 KET-RAG?
现有 Graph-RAG 方案面临两大核心痛点。
-
首先是 KNN(K-nearest-neighbor) 图谱的"近视眼":基于KNN图谱的RAG通过构建一个K-最近邻(KNN)图谱来增强文本检索能力,从而提高生成答案的质量。基于文本块相似度构建的最近邻图谱,就像近视患者只能看清眼前物体,虽然构建成本低(与普通文本检索相当),但无法捕捉文本内部的实体关系。当用户查询"阿司匹林与布洛芬的相互作用机制"时,相关知识点可能分散在不同研究报告中,简单的文本块检索难以实现有效关联。
-
其次是知识图谱的"富贵病"。微软等公司采用的三元组知识图谱(KG-RAG)虽然效果优异,但需要调用大模型逐条提取实体关系。以处理 5GB 法律案例为例,仅 API 调用费用就高达 3.3 万美元,这还没有算上工程师调试 prompt 的人力成本。这种"土豪玩法"让中小型企业望而却步。
二、什么是KET-RAG?
KET-RAG 的核心创新在于"骨架+轻衣"的双层架构。就像建造摩天大楼时先搭建钢结构骨架,再安装轻质幕墙,KET-RAG 首先筛选出文档集合中的核心文本块(约占总量 20%),仅对这些关键部分进行精细化的知识图谱构建。
-
骨架:知识图谱骨架(Skeleton-RAG),通过选择一小部分核心文本块,利用LLM提取结构化知识,构建知识图谱骨架。
-
轻衣:文本-关键词二分图(Keyword-RAG),构建一个轻量级的文本-关键词二分图,通过链接关键词到包含它们的文本块,模拟KG-RAG的检索范式。
具体实现分为三步走:
-
KNN图初始化:将文本块组织成KNN图,基于词汇相似度和语义相似度链接节点。
-
核心文本块识别:使用PageRank算法选择核心文本块,这些文本块在KNN图中具有较高的结构重要性。
-
图索引构建:对核心文本块应用KG-Index算法构建知识图谱骨架,同时构建文本-关键词二分图。
三、成本与效果的魔法平衡
3.1. 索引成本
KET-RAG在索引成本方面表现出显著的优势,尤其适合处理大规模数据集。通过选择一小部分核心文本块(基于PageRank算法)来构建知识图谱骨架,KET-RAG显著减少了对大型语言模型(LLM)的调用次数,从而降低了API调用费用。
此外,KET-RAG构建了一个轻量级的文本-关键词二分图,而不是完整的知识图谱,进一步降低了索引成本。
实验结果表明,KET-RAG在索引成本方面比Microsoft的Graph-RAG降低了超过一个数量级。例如,处理5GB的法律案例数据,KET-RAG的索引成本显著低于3.3万美元的API调用费用。这种成本效益使得KET-RAG在资源有限的情况下更具吸引力。
3.2 质量维度
KET-RAG在检索质量和生成质量方面均表现出色,甚至优于现有的Graph-RAG系统。
通过结合知识图谱骨架和文本-关键词二分图,KET-RAG能够更有效地捕捉文本之间的关系,支持多跳推理。
实验结果显示,KET-RAG在MuSiQue数据集上的覆盖率(Coverage)达到了77.0%,在HotpotQA数据集上达到了81.6%,显著优于其他方法。此外,KET-RAG生成的答案质量也得到了显著提升。在MuSiQue数据集上,KET-RAG的EM(Exact Match)和F1分数均有大幅提高。
表明KET-RAG能够生成更准确和详细的答案,满足高质量问答系统的需求。
3.3 灵活扩展
KET-RAG具有良好的灵活扩展性,能够适应不同的应用场景和需求。其模块化设计允许用户根据具体需求选择不同的组件和参数配置。
KET-RAG由两个主要组件组成——知识图谱骨架(Skeleton-RAG)和文本-关键词二分图(Keyword-RAG),这两个组件可以独立使用,也可以结合使用,提供了灵活的配置选项。
此外,KET-RAG允许通过调整参数(如核心文本块的比例、检索比例等)来平衡索引成本和检索质量。这种灵活性使得KET-RAG能够适应不同的应用场景和资源限制。未来,KET-RAG还可以扩展到全局搜索场景,并探索适应性部署策略,以实现更广泛的现实世界应用
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。