AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


知识图谱提升RAG问答性能的两个现实问题:基本实现逻辑是什么?知识图谱又如何自动实现
发布日期:2024-05-01 21:50:52 浏览次数: 2178 来源:老刘说NLP


今天是2024年5月1日,星期三,北京,天气晴,假期第一天,大家五一假期愉快。

我们今天围绕两个问题来谈,一个是基于知识图谱来进行RAG都有哪些工作,其思想是什么,难点在于什么?一个是既然知识图谱难构建,那么相关的方案又有哪些。

这两个问题都很现实,感兴趣的可以看看。

问题1:基于知识图谱来进行RAG都有哪些工作?

GraphRAG这个问题,大家已经谈了很多次了,例如:

《基于知识图谱的大模型检索增强实现策略:Graph RAG实现基本原理及优化思路》(https://mp.weixin.qq.com/s/ulhu7qj93d3PRWoUpNcCug)

《知识图谱遇上RAG行业问答:回顾知识检索增强范式、挑战及与知识图谱的结合》(https://mp.weixin.qq.com/s/MdpLJVQ1ypjvZTy06MurHA) ,可以使用知识图谱增强大模型的问答效果,在意图识别阶段、Prompt组装阶段以及结果封装阶段都可以做。图片

《基于知识图谱的大模型检索增强实现策略:Graph RAG实现基本原理及优化思路》(https://mp.weixin.qq.com/s/ulhu7qj93d3PRWoUpNcCug) 对用户输入的query提取实体,然后构造子图形成上下文,最后送入大模型完成生成。图片

《再看知识图谱融合大模型RAG问答:用于多文档QA的知识图谱构图及prompt应用思路》(https://mp.weixin.qq.com/s/WAeewL6pLg1PaMJa_jHdXg) 中有介绍《Knowledge Graph Prompting for Multi-Document Question Answering》(地址:https://arxiv.org/pdf/2308.11730.pdf),提出了一种知识图谱提示(KGP)方法,用于在多文档问题解答(MD-QA)中制定正确的LLM提示上下文,其中利用知识图谱来组织、选择上下文。

《再看知识图谱增强大模型问答范式:LLM⊗KG范式下的知识图谱问答实现框架思想阅读》(https://mp.weixin.qq.com/s/b5Tssaesm2mDKxwHy23n2w)所谈到的大模型和知识图谱融合的有趣工作 《 Think-on-Graph: Deep and Responsible Reasoning of Large Language Model on Knowledge Graph》(https://arxiv.org/pdf/2307.07697.pdf、https://github.com/IDEA-FinAI/ToG.) ,该工作提出了一种新的LLM-KG集成范式"LLM⊗KG",将LLM视为一个代理,通过交互式地探索KG上的相关实体和关系,并根据检索到的知识执行推理,取得了一定的效果。

《再看有趣的大模型RAG问答优化策略:Wikichat七步走及KG-RAG实现范式》(https://mp.weixin.qq.com/s/UsZy6TdnUaqQ3PtSq6F4yA)中所谈到的KG与RAG进行结合的工作《Biomedical knowledge graph-enhanced prompt generation for large language models》(https://arxiv.org/pdf/2311.17330.pdf),提到了一个KG-RAG(Knowledge Graph based Retrieval Augmented Generation)的框架,其实现思路很简单,如下图所示,给定问题,进行实体识别,实体链接,找到召回子图,将子图转化为自然语句同问题做向量化相似度计算,最后作为上下文送入LLM完成问答。

《大模型、RAG与知识图谱三者如何融合?兼看20240225大模型进展早报及大模型信息抽取微调数据集IEPile》 (https://mp.weixin.qq.com/s/2pXPn9UfS4Nyx5txlHmaKA)谈到,一个文章结构化为知识图谱地方案,以及如何作为检索来增强生物医疗领域的效果,《Graph-Based Retriever Captures the Long Tail of Biomedical Knowledge,https://arxiv.org/abs/2402.12352》给出了一个方案。

Linkedin推出:RAG结合知识图谱(KG)的客服问答系统,召回成功率相比普通RAG方案翻倍,达到86~94%。

普通RAG方案中,把工单text的纯文本做Embedding会有2个缺点,一个是忽略工单原有的结构化数据,带来召回准确性的下降,对工单长文本切片(Segmentation)再Embedding,带来问答质量的下降。

系统包括两个阶段:

首先,在KG构建阶段,从历史客户服务问题单中构建了一个知识图谱。它集成了每个问题的树状结构表示,并根据关系上下文进行链接。它还为每个节点生成嵌入,以便后期进行语义搜索。

其次,在回答问题的阶段,解析消费者查询以识别命名实体和意图。然后,在KG中检索以识别相关的子图,用于生成答案。

其中,用GPT4做用户query的实体检测和意图识别,实体用于过滤图谱,意图使用embedding检索。

但是,这个工作中最难的点,结构化确实特别重要,但用图谱实有点发毛,代价扛不住,对于有现成知识图谱的场景,这个是很自然的,比如Linkedin的方案。

例如,Linkedin的这个图谱构建分为两个阶段:票内解析Intra-Ticket Parsing和票间连接Inter-Ticket Connection。

其中:

1)票内解析Intra-Ticket Parsing将每张基于文本的机票??转换为树形表示T?。采用混合方法,首先对预定义字段(如通过关键字识别的代码段)进行基于规则的提取。随后,对于不适合基于规则解析的文本,采用LLM进行解析。LLM由YAML模板Ttemplate指导,以图形表示客户支持部门经常使用的票单部分。

2)票据间连接票间连接Inter-Ticket Connection阶段:单个树T?被合并成一个综合图G。显式连接Eexp在票单中指定,如Jira中的指定字段。隐式连接Eimp是通过票单标题的文本-语义相似性推断出来的,采用嵌入技术和阈值机制来辨别与每个问题票单最相关的票单。

地址:https://arxiv.org/pdf/2404.17723,《Retrieval-Augmented Generation with Knowledge Graphs for Customer Service Question Answering》

问题2:既然知识图谱难以构造,那么现存的自动化方案有哪些

顺着第一个问题,我们可以继续看第二个问题,就是有知识图谱自动化的构建方案,这也就是通过llm+信息抽取的方案。

相关的方案有;

《统一信息抽取UIE+多任务指令微调:InstrcutUIE论文工作基本内容介绍》(https://mp.weixin.qq.com/s/udk78muPKZN7MRaw97I96w)介绍了一个通用信息提取的端到端框架InstructUIE,它利用自然语言指令来指导IE任务的大型语言模型。

《也看面向知识图谱构建的垂直微调大模型:KnowLM、TechGPT看指令数据生成方式及开放信息抽取数据集》(https://mp.weixin.qq.com/s/Ub22ksWgOUia1dGVzDw1tg)介绍了DeepKE-LLM、TechGPT两个代表工作,尤其对其数据构造的方法,大家可以再顺便看看远程监督以及schema约束等方案的细节此外,如何用好来开源的学术数据集也十分必要,在文章中也列举了几十个数据集,可以收藏,并做一些有趣的数据构造的实验。

此外,(OpenSPG)[https://spg.openkg.cn] 框架研发的知识图谱引擎以及对应的单独训练了一个OneKE大模型和这个配套,可自定义抽取schema完成实体,事件,关系抽取:Oneke.openkg.cn。

而这类工具的一个重点,其实是指令格式的确立,例如OneKE中指令的格式采用了类JSON字符串的结构,本质上是一种字典类型的字符串,由以下三个字段构成:

(1)'instruction',即任务描述,以自然语言指定模型扮演的角色以及需要完成的任务;

(2)'schema',一份需提取的标签列表,明确指出了待抽取信息的关键字段,反应用户的需求,这是动态可变的;

(3)'input',指的是用于信息抽取的源文本。

目前可通过DeepKE-LLM或OpenSPG来直接使用OneKE,高级用户可自行转换和构造指令使用OneKE。

但是,我们需要注意的是,在实际的工业应用中,业务对知识要素的覆盖率、准确率要求非常高,统一Schema指令结构难以覆盖所有的知识表示形式,因此任何现在的开源知识图谱构建工具,都依然存在抽不全、抽不准以及难以处理较长文本的问题。

由于模型的规模有限,模型输出极大地依赖于输入的提示词(Prompt)。

因此,不同的尝试可能会产生不一致的结果,且可能存在幻觉输出。

但是,话说回来,知识图谱,在很多时候,也不一定需要深入到其中的实体及实体关系,也可以直接将其表示成具体的知识图谱形式即可,比如文档图谱,关键词图谱等等,chunk图谱等,思路要打开。

总结

本文主要回顾了知识图谱与RAG的结合方向以及自动化构建知识图谱的两个问题,里面提及了一些工作整理,都可看看。

关于我们

老刘,刘焕勇,NLP开源爱好者与践行者,主页:https://liuhuanyong.github.io。

老刘说NLP,将定期发布语言资源、工程实践、技术总结等内容,欢迎关注。

对于想加入更优质的知识图谱、事件图谱、大模型AIGC实践、相关分享的,可关注公众号,在后台菜单栏中点击会员社区->会员入群加入。



53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询