【AI大模型】Graph RAG实战:使用知识图谱和AI检索、筛选和总结医学期刊文章
RAG 通过检索相关外部知识信息来增强 LLM 的生成效果。知识图谱(Knowledge Graph,,KG)和 LLM 是天然的互补技术。LLM 常被视为黑盒模型,难以处理事实性知识,而 KG 则专注于存储和解释这些知识。通过将两者结合,能够弥补 LLM 的不足,提升其准确性和可解释性。Graph RAG 则将 KG 作为检索信息的来源,通过图谱中的结构化知识来补充 LLM 生成的上下文,从而提
前言
RAG 通过检索相关外部知识信息来增强 LLM 的生成效果。
知识图谱(Knowledge Graph,,KG)和 LLM 是天然的互补技术。LLM 常被视为黑盒模型,难以处理事实性知识,而 KG 则专注于存储和解释这些知识。通过将两者结合,能够弥补 LLM 的不足,提升其准确性和可解释性。
Graph RAG 则将 KG 作为检索信息的来源,通过图谱中的结构化知识来补充 LLM 生成的上下文,从而提高生成回答的准确性和相关性。
Graph RAG 因其强大的性能,在多个行业领域有着广泛的应用:
-
客户服务:通过快速检索历史案例,提高客户支持效率。
-
药物发现:为药物研发提供精准的背景知识。
-
合规报告生成:特别适用于生命科学领域。
-
人才招聘:帮助 HR 系统自动化筛选并匹配候选人。
-
法律研究与写作:为法律专业提供支持。
本文将通过医学领域的例子展示了如何构建一个简单的 Graph RAG 应用:
-
准备数据:将 PubMed 医学期刊数据进行向量化,并转化为 RDF 图。
-
将数据转成 KG:将非结构化数据转化为结构化的 KG,同时保持数据格式的兼容性。
-
使用 Streamlit 构建 APP
-
搜索文章:通过向量数据库进行初步检索,找到与查询最相关的文章。
-
精选术语:使用 MeSH(医学主题词)进行术语过滤,以确保检索到的内容具有高度相关性。
-
过滤与总结:通过将 MeSH 术语应用于过滤,减少信息的冗余和“上下文污染”,最终将筛选后的文章交给 LLM 进行摘要生成。
第一步:准备数据
使用了来自 PubMed 数据库的 5 万篇研究文章数据集。数据集包含文章的标题、摘要,以及由医学主题词表(MeSH)标记的元数据标签。需要注意的是,数据仅包括文章的元信息和摘要,不包含全文。由于数据已经是表格格式并且被MeSH术语标记,因此可以直接处理。

主要工作内容:
- 向量化数据
-
将表格数据向量化,以便用于后续检索和生成。
-
在向量化之前,确保每篇文章都有一个唯一资源标识符(URI)。URI 是导航RDF数据的关键,便于在向量空间和图谱实体之间进行切换。
-
MeSH 术语向量集合:创建一个单独的向量数据库集合,用于存储 MeSH 术语。这使用户无需对 MeSH 术语有先验知识即可搜索相关术语。
-
RDF 图的处理:可以在向量化之前将数据转化为 RDF 图,但在本应用中并未执行此操作,因为这对结果的提升可能并不显著。
这一步的关键是为数据建立独特的标识符(URI),同时通过向量化技术和 MeSH 术语集合的创建,确保后续能够在知识图谱和向量检索中无缝切换。这种准备方法既高效又能保证数据的语义一致性。
第二步:将数据转成 KG
在这一步,将数据中的每一行转化为 KG 中的一个 **Article(文章)**实体,并为每篇
Article 添加以下属性:
-
Title(标题)
-
Abstract(摘要)
-
MeSH Terms(MeSH 术语)
同时,每个 MeSH 术语也会被转化为 KG 中的独立实体。还需要还为每篇 Article 随机生成两个额外属性:
-
Date Published(发布日期) :一个随机日期
-
Access(访问次数):1到10之间的随机数
下图展示了数据如何被转化为 KG,显示了 Article 与 MeSH 术语之间的关系。

完成这一步后,数据同时具备了以下两种形式:
-
向量化版本:用于检索和计算。
-
图谱版本(RDF):用于结构化的知识管理。
每个向量都关联了一个 URI,该 URI 对应 KG 中的一个实体。这种设计确保可以在向量数据和 KG 数据之间自由切换,实现高效的双向操作。
这一部分的核心在于将非结构化数据转化为结构化的 KG,同时保持数据格式的兼容性。这种方法不仅增强了数据的语义化管理能力,还为后续的检索和生成操作提供了灵活的工具链支持。
第三步:构建 APP
这款 Graph RAG 应用的用户界面基于 Streamlit 框架。并设计了以下三步交互流程:
1. Search Articles (搜索文章)
-
用户通过输入一个或多个关键词搜索文章。
-
搜索过程完全依赖于向量数据库:
-
用户的搜索关键词会被发送到向量数据库。
-
数据库返回向量空间中最接近该关键词的 10 篇文章。

页面效果:

2. Refine Terms (精选术语)
-
用户可以选择用于筛选结果的 MeSH 术语:
-
由于 MeSH 术语也被向量化,用户可以通过自然语言提示获取最相关的 MeSH 术语。
-
应用程序支持展开术语,显示其替代名称和更具体的概念。
-
用户可以选择多个术语,作为过滤条件。

页面效果:

3. Filter & Summarize (筛选与总结)
-
用户将所选的 MeSH 术语应用为过滤条件,进一步筛选初始返回的 10 篇文章。
-
这种筛选基于 PubMed 文章已经被标记的 MeSH 术语。
-
用户可以输入额外的提示词,将筛选后的文章和提示词一起发送给 LLM。
-
这是应用程序的生成步骤,LLM 会根据用户需求生成结果。

页面效果:

通过三步流程实现了:
-
高效的检索:利用向量数据库快速找到相关的文献。
-
精准的筛选:通过 MeSH 术语过滤,确保上下文相关性。
-
智能生成:结合用户提示和筛选结果,由 LLM 生成定制化的输出。
总结
本教程展示了如何结合向量数据库和知识图谱来显著增强 RAG 应用的效果。通过利用向量相似性进行初步检索,并利用结构化的知识图谱元数据进行过滤和组织,可以构建一个精准、可解释且面向特定领域的系统。
-
专业术语的力量:教程特别强调了 MeSH(医学主题词表)这样的专业控制词汇的价值。这些领域专家精心维护的元数据确保了检索步骤与应用需求的深度契合,同时保持了与其他系统的互操作性。
-
技术的互补性:向量数据库擅长相似性检索,而知识图谱则在提供上下文、结构和语义方面表现突出。两者的结合能最大化各自的优势,提升系统性能。
此外,要让 RAG 应用具备可扩展性,需要引入元数据层来打破数据孤岛,并执行数据治理策略。通过合理的设计,基于领域特定的元数据和强有力的治理框架,可以构建既精准又具备扩展性的 RAG 系统。该方法不仅适用于医学领域,也适用于任何结构化数据与文本信息共存的领域。
最后的最后
感谢你们的阅读和喜欢,作为一位在一线互联网行业奋斗多年的老兵,我深知在这个瞬息万变的技术领域中,持续学习和进步的重要性。
为了帮助更多热爱技术、渴望成长的朋友,我特别整理了一份涵盖大模型领域的宝贵资料集。
这些资料不仅是我多年积累的心血结晶,也是我在行业一线实战经验的总结。
这些学习资料不仅深入浅出,而且非常实用,让大家系统而高效地掌握AI大模型的各个知识点。如果你愿意花时间沉下心来学习,相信它们一定能为你提供实质性的帮助。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
大模型知识脑图
为了成为更好的 AI大模型 开发者,这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
经典书籍阅读
阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。

实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

面试资料
我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下

640套AI大模型报告合集
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)