antiqueeeee

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

常见方案

基于知识图谱的问答系统有两种实现路径:语义解析和信息检索。语义解析指讲非结构化的自然语言问题映射成结构化逻辑形式,如语义图和高级查询语言,SPARQL、Cypher等。信息检索方法则是将自然语言问题和知识库中的实体和关系映射为同一低维空间中的特征向量,将人物转化为问题向量与知识图谱中对应实体关系向量之间的相似度匹配任务以获得候选答案。

语义解析

直接生成

利用LLM本身的语义理解能力或者通过微调、提升工程等方法,将输入问题转换为逻辑查询语句。

(1)ChatKBQA

该框架首次利用大语言模型进行问题到图数据库查询语言的转换。具体来说,首先利用微调的大语言模型生成逻辑形式,然后通过无监督的检索方法检索和替换实体和关系,以提高生成和检索的准确性和效率。

https://github.com/LHRLAB/ChatKBQA

(2)UniOQA

利用微调的大语言模型来进行逻辑查询语句的转换,提出一个结合两条平行工作流的统一框架 UniOQA。该框架包

含翻译器和搜索器。翻译器核心为大语言模型,负责将自然语言问题转化为可执行的 Cypher查询语言。此外,除了对大语言模型进行微调,还可以通过少样本提示的方式使模型生成特定内容。 https://github.com/shygejiayou/UniOQA

检索生成

(1)StructGPT

https://github.com/JBoRu/StructGPT

(2)rng-kbqa


https://github.com/salesforce/rng-kbqa

(3)巴拉巴拉

(4)Multi-hop Question Answering over Knowledge Graphs using Large Language Models

首先,SP-LLM 利用大语言模型准确识别出问题中潜在的关键实体和关系。随后,在知识图谱中检索出与这些实体和关系相关的子图信息,为逻辑查询语句的生成提供必要的上下文参考。该方法动态选择最相关的子图内容,并将其整合为输入,以生成符合实际图谱结构的 SPARQL 查询语句。

看起来挺有意思,但是没开源。

(5)咕噜呱啦

RAG相关

检索的时候发现一个repo:https://github.com/machuangtao/LLM-KG4QA?tab=readme-ov-file
里面有一些RAG的工作,其实也不一定要完全依从KBQA的方式,参考一些RAG的方法也不是不行。

posted on 2025-07-06 18:03  Antiqueeeee  阅读(36)  评论(0)    收藏  举报