一文读懂RAG技术:从基础框架到知识图谱融合实践
一文读懂RAG技术:从基础框架到知识图谱融合实践
RAG(Retrieval-Augmented Generation,检索增强生成)技术自2020年正式提出以来,历经四年多的发展,已从最初的概念验证阶段,成长为大模型生态中不可或缺的核心支撑技术。随着GPT-4、文心一言等大模型的迭代升级,以及企业对“可信AI”“精准响应”需求的提升,RAG技术凭借“检索外部知识+生成定制化内容”的双重优势,深度嵌入大模型工作流,成为解决大模型“知识过时”“幻觉生成”等痛点的主流范式。
如今,国内外科技大厂已率先将RAG技术落地到实际产品中,打造出具备专属知识库能力的工具,大幅提升了办公与协作效率。例如腾讯推出的IMA个人知识库,支持用户上传文档、邮件等资料,通过RAG技术实现精准问答与信息提取;字节跳动旗下的飞书知识问答功能,则将企业内部的规章制度、项目文档转化为可检索的知识库,员工无需手动翻找资料,即可快速获取所需信息。
腾讯的 ima 个人知识库
字节的飞书知识问答
这些产品的背后,RAG技术究竟是如何运转的?如果不幸被老板安排搭建公司内部知识库系统(当然,希望大家都不会遇到这种“福报”,手动狗头),又该从何入手?本文将从RAG的核心原理拆解,到“知识图谱+RAG”的进阶融合方案,为你提供一份清晰的技术指南。
一、RAG技术:拆解“检索+生成”的核心框架
RAG技术的本质,是将“外部知识检索”与“大模型生成”结合的混合系统。它通过引入实时、专属的知识库,让大模型摆脱“固有知识局限”,生成更精准、更具针对性的内容。整个框架主要分为两大核心模块:知识库构建与检索回答,二者环环相扣,共同支撑起完整的RAG工作流。
1. 第一步:知识库构建——为大模型打造“专属知识仓库”
知识库是RAG技术的“信息基石”,其核心目标是将分散、非结构化的文件(如PDF、Word、Excel、Markdown文档等),转化为大模型可快速检索的“向量数据”。具体流程可分为三个关键步骤:
-
文件格式统一:从“多样”到“标准”
首先需要将不同格式的原始文件(如PDF中的文字、Excel中的表格、Markdown中的代码块)提取为结构化文本(texts)。这里的texts并非特指TXT格式,而是涵盖MD、JSON等便于后续处理的格式,核心是剥离文件格式差异,保留核心内容。例如,一份PDF版的“产品说明书”,会被提取为纯文字文本,表格内容则转化为JSON格式的键值对,确保信息完整性。 -
文本分块(Chunks):拆分“长文本”为“语义单元”
由于大模型存在“上下文窗口限制”(如早期GPT-3仅支持4096 tokens),直接处理长文档会导致信息丢失。因此需要将统一后的文本拆分为“语义连贯的小片段”(即Chunks),拆分逻辑通常基于段落、章节标题或语义断点(如“。”“?”等标点符号),避免破坏句子的完整含义。例如,一篇5000字的“项目方案”,可能会被拆分为10-15个Chunks,每个Chunks包含300-500字的完整语义内容。 -
向量嵌入与存储:从“文字”到“数值”
完成分块后,需要通过嵌入模型(Embedding Model) 将每个Chunks转化为“携带语义信息的数值向量”(通常是数百至数千维的向量)。这些向量的核心特点是“语义相似的文本,向量距离更近”——例如“人工智能”和“AI”的向量会高度相似,而“猫”和“汽车”的向量则距离较远。最后,这些向量会被存储到向量数据库(如Milvus、Pinecone、FAISS等)中,为后续的快速检索奠定基础。
2. 第二步:检索回答——让大模型“精准说话”
如果说“知识库构建”是“囤粮”,那么“检索回答”就是“按需取粮”。这一模块的核心目标是:理解用户的提问需求,从知识库中找到最相关的信息,再让大模型基于这些信息生成准确、可信的回答。具体流程如下:
-
提问向量化:将“问题”转化为“检索钥匙”
当用户输入提问(如“公司2024年Q1的产品销售额是多少?”)时,系统会使用与“知识库构建”阶段相同的嵌入模型,将提问文本转化为对应的向量。这一步的关键是确保“提问向量”与“知识库向量”的“语义维度一致”,只有这样才能进行有效的相似度对比。 -
相似性检索:从知识库中“找答案”
系统将“提问向量”输入向量数据库,通过计算“余弦相似度”“欧氏距离”等指标,筛选出与提问最相关的Top N个Chunks(通常N取5-10)。例如,用户询问“Q1销售额”,系统会从知识库中检索出包含“2024年第一季度”“产品营收”“销售数据”等关键词的Chunks。 -
重排序(Rerank)与提示词(Prompt)优化:提升回答质量
初步检索出的Chunks可能存在“语义相关性不足”的问题(例如仅关键词匹配,但上下文不符)。此时需要通过Rerank模型(如BERT-Reranker、Cross-Encoder等)对Top N个Chunks进行二次排序,进一步筛选出“语义最匹配”的内容。同时,系统会将这些筛选后的Chunks与“定制化提示词”(如“基于以下信息,用简洁的语言回答用户问题:[Chunks内容]”)结合,一起输入大模型。 -
最终生成:输出“有依据”的回答
大模型基于“提示词+相关Chunks”,生成既符合用户需求,又有明确知识来源的回答。例如,回答中会明确提到“根据公司2024年Q1财报显示,产品销售额为XX万元”,而非模糊的“大概是XX万元”,有效避免了大模型的“幻觉生成”问题。
二、进阶方案:知识图谱+RAG,解决复杂关系检索难题
传统RAG技术虽能实现“文本片段的精准检索”,但在处理“多实体关联”“复杂逻辑推理”类问题时,却显得力不从心。例如,当用户询问“公司产品A的核心供应商有哪些?这些供应商去年的合作项目中,哪些涉及技术研发?”时,传统RAG只能从单个文档中提取“供应商名称”或“项目名称”,无法关联“供应商-项目-技术研发”三者之间的关系,导致回答碎片化。
而知识图谱(Knowledge Graph) 的出现,恰好弥补了这一短板。它通过“节点(实体)-边(关系)-属性”的图结构,将分散的信息转化为“结构化的知识网络”,让大模型能清晰识别实体间的关联,从而实现更复杂的检索与推理。
1. 知识图谱:不止是“数据”,更是“关系网络”
知识图谱的核心是“用图结构表达知识”,其基本组成单元包括三类:
- 节点(Nodes):代表“实体”,即现实世界中的具体事物或概念,如“公司A”“供应商B”“项目C”“技术研发”等。
- 边(Edges):代表“关系”,用于连接两个节点,描述实体间的关联,如“公司A-核心供应商-供应商B”“供应商B-参与项目-项目C”“项目C-涉及领域-技术研发”等。
- 属性(Properties):为节点或边补充“额外信息”,如节点“项目C”的属性可以是“启动时间:2023年3月”“预算:500万元”;边“参与项目”的属性可以是“合作周期:12个月”。
以“互联网公司业务生态”为例,我们可以构建一个简单的知识图谱:
- 节点(实体):
- 节点1:字节跳动(实体类型:企业)
- 节点2:抖音(实体类型:产品)
- 节点3:剪映(实体类型:产品)
- 节点4:广告业务(实体类型:业务板块)
- 节点5:张一鸣(实体类型:创始人)
- 边(关系):
- 节点5 → 节点1:边标签为“创立”(张一鸣创立字节跳动)
- 节点1 → 节点2:边标签为“开发运营”(字节跳动开发运营抖音)
- 节点1 → 节点3:边标签为“开发运营”(字节跳动开发运营剪映)
- 节点2 → 节点4:边标签为“核心变现渠道”(抖音是广告业务的核心变现渠道)
- 节点3 → 节点2:边标签为“配套工具”(剪映是抖音的配套剪辑工具)
- 属性(补充信息):
- 节点2的属性:上线时间=2016年9月,全球月活用户=15亿+
- 节点4的属性:2023年营收占比=60%,主要客户类型=快消、电商
- 边“开发运营”的属性:团队规模=5000+人,迭代周期=2周/次
通过这样的结构,原本分散的“企业、产品、人物、业务”信息被串联成一个有机的整体,用户的复杂查询(如“抖音的配套工具是什么?该工具所属公司的创始人是谁?”)可以通过遍历知识图谱快速得到答案。
2. 知识图谱+RAG+大模型:三者如何协同工作?
知识图谱与RAG的融合,并非简单的“1+1”,而是形成了“大模型辅助知识图谱构建,知识图谱提升RAG检索能力”的双向协同机制。目前,微软的GraphRAG、香港大学的LightRAG是该领域的代表性框架,其中LightRAG以“轻量、高效”的特点,更适合企业落地,其核心流程可分为三步:
(1)大模型驱动知识图谱构建
传统知识图谱的构建需要人工定义“实体类型”“关系规则”,效率低且成本高。而LightRAG通过大模型自动完成知识提取与图谱构建:
- 文档语义分割:将原始文档(如企业年报、行业报告)拆分为语义连贯的片段,确保每个片段包含完整的“实体-关系”信息;
- 实体与关系提取:利用大模型(如GPT-4、LLaMA 3)从片段中自动识别实体(如“产品名称”“合作企业”)、提取关系(如“合作”“供应”),并补充属性(如“合作时间”“产品价格”);
- 图谱去重与合并:大模型会自动识别不同片段中的“同一实体”(如“字节跳动”和“ByteDance”),并合并重复的关系与属性,形成结构化的知识图谱。
例如,处理一份“新能源行业报告”时,大模型会从不同段落中提取“特斯拉”“宁德时代”“锂电池”等实体,识别“特斯拉-电池供应商-宁德时代”“宁德时代-核心产品-锂电池”等关系,并补充“合作年限=5年”“锂电池能量密度=300Wh/kg”等属性,最终构建出新能源产业链的知识图谱。
(2)双层检索:文本检索+图谱检索
在用户查询阶段,LightRAG采用“文本检索+图谱检索”的双层机制,确保检索结果的全面性与关联性:
- 底层文本检索:沿用传统RAG的逻辑,从向量数据库中检索与提问语义相似的文本Chunks,获取基础信息;
- 高层图谱检索:将用户提问转化为“图谱查询语句”(如SPARQL、Cypher),遍历知识图谱,提取实体间的关联关系。
例如,用户询问“特斯拉的电池供应商有哪些?这些供应商的核心产品是什么?”时:
- 底层检索会找到包含“特斯拉电池供应商”“宁德时代产品”等关键词的文本片段;
- 高层检索会通过图谱查询,找到“特斯拉”节点的“供应商”边连接的“宁德时代”“松下”等节点,再进一步找到这些节点的“核心产品”边连接的“锂电池”“动力电池”等节点。
(3)增量更新:让知识库“与时俱进”
企业的知识(如产品更新、合作信息)会不断变化,LightRAG支持“增量更新”机制:当有新文档(如2024年特斯拉合作公告)加入时,系统会自动重复“语义分割-实体提取-图谱合并”流程,将新的实体(如“亿纬锂能”)、关系(如“特斯拉-新增供应商-亿纬锂能”)补充到现有知识图谱中,无需重建整个知识库,大幅降低了维护成本。
3. 融合方案的核心优势
相比传统RAG,“知识图谱+RAG”的融合方案具有三大核心优势:
- 更精准的关系检索:能处理“多实体关联”类问题,避免回答碎片化;
- 更高的推理能力:支持“逻辑链检索”(如“A→B→C”的间接关系),满足复杂查询需求;
- 更强的可解释性:回答中可明确标注“知识来源”(如“根据知识图谱中‘特斯拉’与‘宁德时代’的‘供应商’关系”),提升可信度。
总结
从传统RAG的“文本检索+生成”,到“知识图谱+RAG+大模型”的协同融合,技术的演进始终围绕“让大模型更精准、更可信、更懂复杂需求”的目标。对于企业而言,搭建内部知识库系统时,需根据自身需求选择合适的方案:若仅需处理简单的文档问答,传统RAG即可满足需求;若涉及复杂的业务关系(如供应链、客户关系、产品生态),则建议采用“知识图谱+RAG”的融合方案。
随着大模型技术的持续迭代,未来RAG还将与多模态(如图像、音频知识库)、Agent(智能体自动检索)等技术结合,进一步拓展应用边界。对于技术从业者而言,掌握RAG的核心原理与进阶方案,将成为应对大模型落地挑战的重要能力。
那么,如何系统的去学习大模型LLM?
作为一名从业五年的资深大模型算法工程师,我经常会收到一些评论和私信,我是小白,学习大模型该从哪里入手呢?我自学没有方向怎么办?这个地方我不会啊。如果你也有类似的经历,一定要继续看下去!这些问题啊,也不是三言两语啊就能讲明白的。
所以我综合了大模型的所有知识点,给大家带来一套全网最全最细的大模型零基础教程。在做这套教程之前呢,我就曾放空大脑,以一个大模型小白的角度去重新解析它,采用基础知识和实战项目相结合的教学方式,历时3个月,终于完成了这样的课程,让你真正体会到什么是每一秒都在疯狂输出知识点。
由于篇幅有限,⚡️ 朋友们如果有需要全套 《2025全新制作的大模型全套资料》,扫码获取~
为什么要学习大模型?
我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。
👉大模型学习指南+路线汇总👈
我们这套大模型资料呢,会从基础篇、进阶篇和项目实战篇等三大方面来讲解。
👉①.基础篇👈
基础篇里面包括了Python快速入门、AI开发环境搭建及提示词工程,带你学习大模型核心原理、prompt使用技巧、Transformer架构和预训练、SFT、RLHF等一些基础概念,用最易懂的方式带你入门大模型。
👉②.进阶篇👈
接下来是进阶篇,你将掌握RAG、Agent、Langchain、大模型微调和私有化部署,学习如何构建外挂知识库并和自己的企业相结合,学习如何使用langchain框架提高开发效率和代码质量、学习如何选择合适的基座模型并进行数据集的收集预处理以及具体的模型微调等等。
👉③.实战篇👈
实战篇会手把手带着大家练习企业级的落地项目(已脱敏),比如RAG医疗问答系统、Agent智能电商客服系统、数字人项目实战、教育行业智能助教等等,从而帮助大家更好的应对大模型时代的挑战。
👉④.福利篇👈
最后呢,会给大家一个小福利,课程视频中的所有素材,有搭建AI开发环境资料包,还有学习计划表,几十上百G素材、电子书和课件等等,只要你能想到的素材,我这里几乎都有。我已经全部上传到CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】相信我,这套大模型系统教程将会是全网最齐全 最易懂的小白专用课!!

为武汉地区的开发者提供学习、交流和合作的平台。社区聚集了众多技术爱好者和专业人士,涵盖了多个领域,包括人工智能、大数据、云计算、区块链等。社区定期举办技术分享、培训和活动,为开发者提供更多的学习和交流机会。
更多推荐
所有评论(0)