相比传统RAG的碎片式的知识点不同,知识图谱就是要解决这个痛点。它更侧重于宏观式的、总括式的归纳。这里要提到的知识图谱的应用是指GraphRAG。
GraphRAG(Graph-based Retrieval-Augmented Generation)是一种基于图结构的检索增强生成技术,其核心在于将非结构化数据转化为知识图谱,通过图遍历算法实现更精准的语义检索。相较于传统RAG模型,GraphRAG通过节点-边关系建模,可捕捉实体间的复杂关联,在医疗诊断、金融风控、法律文书分析等场景中展现出显著优势。
传统RAG系统在负责合成来自各种来源的信息或理解数据集中的总体主题时却很困难。例如,如果询问传统RAG 系统:“根据该研究数据集,全球气温变暖的主要原因是什么?”,它很难提供全面的答案,因为与气候相关的不同信息的分散在整个数据集中,而语义检索的方式没有办法跨整个数据集去做全局检索。这样的需求凸显了对 RAG 更加结构化和智能的方法的需求。这就是 GraphRAG(Graph Retrieval-Augmented Generation)派上用场的地方,它的核心作用是提高大模型的模型通过利用结构化知识图谱提供精确且上下文丰富的答案的能力。
GraphRAG通过利用大模型从原始文本数据中提取知识图谱来满足跨上下文检索的需求。该知识图将信息表示为互连实体和关系的网络,与简单的文本片段相比,提供了更丰富的数据表示。这种结构化表示使 GraphRAG 能够擅长回答需要推理和连接不同信息的复杂问题。
Neo4j图数据库(来源:网络)
Neo4j 是一款主流的图数据库(Graph Database),以图论为基础,用节点(Nodes)和关系(Relationships)来存储和查询数据,而非传统数据库的表结构。
| 能力 | 说明 |
|---|---|
| 存储关联数据 | 将实体(如人、商品、设备)作为节点,实体间的联系作为关系,天然适合表达复杂连接 |
| 高性能遍历查询 | 通过免索引邻接(Index-Free Adjacency)技术,查询性能不随数据量增长而显著下降,尤其适合深度关联查询 |
| 灵活的Schema | 无需预定义严格的表结构,节点和关系可动态添加属性,适应快速变化的业务需求 |
| 强大的图算法 | 内置社区发现、路径分析、中心性计算、相似度分析等图算法库(Graph Data Science) |
社交网络分析
知识图谱与语义网
推荐系统
欺诈检测与风控
身份与访问管理(IAM)
网络与IT运维
供应链管理
生命科学
Neo4j 使用 Cypher 作为声明式查询语言,语法直观,类似描述图模式:
// 查找"张三"的二级好友
MATCH (a:Person {name: '张三'})-[:FRIEND]->()-[:FRIEND]->(b:Person)
RETURN b.name
当然这些语句现在不必手写啰,有AI框架(比如LangChain)会全部自动搞定,知道些原理即可。
了解了基本原理和作用,下一步就是在实际中应用啰。