知识图谱 Graph Rag 概念速通

微软官方文档: Getting Started - GraphRAG 

graph 

语义网络,由节点(实体)和边(关系)组成

分类

主要有两种形式

对比维度LPGRDF
基本结构节点和边三元组
节点属性可直接添加表示为额外三元组
边属性可直接添加传统 RDF 较麻烦,需重ification或 RDF-star
节点类型Label,例如 :Personrdf:type 三元组
关系类型Edge Label,例如 WORKS_ATPredicate,例如 worksAt
Schema通常较灵活,偏弱模式可通过 RDFS、OWL 定义正式语义
查询语言Cypher、GremlinSPARQL
主要优势图遍历直观、工程开发方便标准化、语义推理、跨系统互操作
常见应用推荐系统、社交网络、欺诈检测、GraphRAG本体、开放知识库、语义网、科学知识整合

LPG 节点 + 带类型的边 + 属性

节点和边都可以直接拥有属性,适合图遍历、关系分析和工程应用。

RDF 所有内容拆成三元组

主语 Subject — 谓语 Predicate — 宾语 Object

标签和属性都成为了单独的实体

适合需要丰富语义表达和推理的应用:实体更多,关系更多

构建

1. 本体建模(Ontology Modeling)

本体建模用于定义知识图谱的整体结构,包括需要存储的实体类型关系类型及其属性。例如,可以定义 PersonOrganization 等实体,以及 worksAtcollaboratesWith 等关系。本体相当于知识图谱的数据规范,保证后续抽取的数据结构一致。

2. 数据收集与预处理(Data Collection and Preprocessing)

从文档、数据库、网页、API 等不同来源收集原始数据,并进行清洗、去重和格式统一。对于文本数据,通常还需要进行分句、分词、文档切块和无效内容过滤,为后续知识抽取提供高质量输入。
 

3. 实体识别与关系抽取(Entity and Relation Extraction)

实体识别用于从文本中发现具有实际意义的对象,例如人物、地点、组织和产品。关系抽取则判断实体之间存在的联系,例如从“Alice 在 OpenAI 工作”中抽取出 Alice — worksAt → OpenAI

4. 知识融合与消歧(Knowledge Fusion and Disambiguation)

知识融合用于整合来自不同数据源的重复或冲突信息。实体消歧则判断名称相同或相似的实体是否指向同一个真实对象,例如区分“苹果公司”和“苹果水果”,并将同一实体的不同名称进行合并。

5. 知识图谱存储(Knowledge Graph Storage)

将处理后的实体、关系和属性存入图数据库,形成可查询和扩展的图结构。以 LPG 为例,可以使用 Neo4j 等数据库存储节点和边,并通过 Cypher 实现实体检索、多跳遍历和子图查询。

Graph Rag

基于图的增强回答:借助图谱的互联性,为llm提供复杂关系信息,使其能进行更复杂的推理

点的类别划分:聚类

流程

一般情况下是双路召回的,如下图,上面是基于graph rag, 然后下面是基于一般检索

graph rag 流程

搜索方式

global search

Global Search 面向需要综合整个语料库的宏观问题,例如:

  • 整个数据集有哪些主要主题?
  • 文档中反复出现的主要风险是什么?
  • 不同社区的共同观点和分歧是什么?

GraphRAG 在构图阶段会对实体图进行社区划分,并为每个社区生成 Community Report。查询时,Global Search 会检索大量社区报告,通过 Map-Reduce 方式分别生成局部结论,再将重要结论汇总成最终答案

每一个cluster都有一个总结报告,最后所有信息整合起来得到概括性信息

整个过程非常!消耗!token!数量!

local search

Local Search 面向具体实体、事件或关系问题,例如:

  • Alice 与哪些项目有关?
  • 公司 A 为什么与公司 B 合作?
  • 某个模型的主要问题是什么?

查询时,系统首先找到与问题语义相关的实体,并以这些实体作为图中的入口,进一步检索其邻居实体、关系、相关社区报告以及原始文本块。最终将这些局部信息筛选、排序,并放入一个上下文窗口中生成答案。

chunk 的挂载与召回

存储

text_chunks 用来存chunk的

chunks_vdb chunk 向量数据库

entity_chunks 实体→关联chunk_id 列表的反向索引

召回

query → 关键词 →

1) kg (ann)→ source_id 解析候选chunk

* ann = approximate nearest neighbor  近似最近邻搜索

2) 

选chunk 策略:

1) 按实体重要性加权轮询

2) 与query 算cosine选top

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值