今天是2025年7月25日,星期五,北京,雨。
我们继续回到GraphRAG的主题,并且重点看看知识图谱方向,有个类似于query分级或者多路召回的思路,即用于知识图谱问答的多策略图检索思路ByoKG-RAG,来看看效果。
其中,还可以再温习一下一些已有的基于大模型进行知识图谱问答的方案,如LLM+graph-query、Text-based Retrieval、Graph Reranker、Agentic Traversal等。
一、用于知识图谱问答的多策略图检索思路ByoKG-RAG
现有方法主要依赖大模型进行图谱遍历和检索,但这种方法对遍历初始化敏感,容易产生实体链接错误(这个确实,往往是第一步),如下图所示:

所以,可以看一个思路《BYOKG-RAG: Multi-Strategy Graph Retrieval for Knowledge Graph Question Answering》(https://arxiv.org/pdf/2507.04127,https://github.com/awslabs/graphrag-toolkit),这个工作呢,则认为说,不要死押在实体链接上,而是可以从多个角度进行图链接,以及图召回,也就是上图中的multi-link方案。
1、算法思想
核心思想是利用LLM作为知识图谱链接器(KG-Linker),生成多样化的图构件,然后通过专门的图工具将这些构件链接到知识图谱中,并通过多种检索方法检索相关上下文。

如上图所示,核心在于两阶段方法:
1)KG-Linker,利用LLM生成多样的图谱构件,包括实体、路径和查询。LLM的提示包括四个主要任务:实体抽取(从问题和可选的图谱上下文中提取所有相关实体)、关系路径识别(识别连接实体的关系路径,这些路径可以用来回答问题)、图谱查询生成(构建一个完整的、可执行的图谱查询语句,用于从图数据库中检索答案)和答案草案生成(使用现有的知识库或图谱上下文中的外部信息回答问题)。
这一步也是用prompt驱动的,

细分开来看,可以完整看下prompt:
例如,用于实体抽取和关系路径生成prompt:

又如图谱查询、答案草案生成prompt:

2)Graph Retrievers多策略图谱检索,包括实体链接、路径检索、图谱查询检索和三元组检索(Agentic Retrieval和Scoring-based Retrieval)。
其中:
实体链接,将LLM生成的实体链接到实际的图谱实体,实现两种互补的链接方法:模糊字符串匹配和节点嵌入链接(基于bge-m3)。
路径检索阶段,执行并验证LLM生成的路径,同时发现图中可以导向所需信息的其他路径。使用广度优先搜索从源实体开始探索图谱,直到找到所有有效的路径或没有更多有效路径为止。
图谱查询检索阶段,将自然语言转换为可执行的图谱操作,使用OpenCypher语言生成查询并执行;
三元组检索阶段,作为补充方法,通过捕捉可能被直接检索遗漏的相关事实来工作,采用两种方法:agent遍历和基于评分的检索。前者通过LLM逐步遍历图谱,后者通过语义相似性选择相关三元组。
最后,看下执行的例子:

2、性能对比及代表方案
在效果侧,在五个不同知识图谱类型上的表现,包括WebQSP、ComplexWebQuestions、CronQuestions、MedQA和Text2cypher,这些基准测试涵盖了不同的知识图谱,如Freebase、Wikidata和Disease DrugBank;评估指标采用Hit率、H@2和LLMaaJ分数。
对比如下:

其中几个方案:
LLM+graph-query方案将LLM生成与Text2Cypher生成相结合。
Text-based Retrieval方案,基于文本的检索方案,基于问题-三元组的嵌入相似性检索排名前k的三元组。

Graph Reranker方案,通过基于图的重排检索排名前k的三元组,这个思路为给定链接的实体E和查询q,图重排器模块通过重排,在E的L跳邻域内的三元组来检索前K个最相关的三元组,重排阶段采用交叉编码。
Agentic Traversal方案,采用LLM代理迭代探索相关实体和关系,直到自我终止。

其思想就是迭代地提示大模型进行实体选择和关系选择,prompt如下:

参考文献
1、https://arxiv.org/pdf/2507.04127,
(文:老刘说NLP)