知识图谱查询语句生成方法及相关装置与流程

摘要: 本发明属于知识图谱领域,涉及一种知识图谱查询语句生成方法及相关装置。背景技术:1、近年来,随着大语言模型(largelanguagemodels,llms)的快...
知识图谱查询语句生成方法及相关装置与流程

本发明属于知识图谱领域,涉及一种知识图谱查询语句生成方法及相关装置。

背景技术:

1、近年来,随着大语言模型(large language models, llms)的快速发展,其在自然语言理解与生成任务中展现出强大的能力。然而,通用大语言模型通常基于静态训练数据构建,存在知识更新滞后、无法访问特定领域私有数据以及生成内容可能缺乏事实依据等问题。为克服上述局限,研究者提出了检索增强生成(retrieval-augmented generation,rag)技术。rag通过将外部知识检索机制与语言生成模型相结合,在生成响应前动态地从指定知识库中检索与用户查询相关的信息,并将检索结果作为上下文输入至生成模型,从而引导模型输出更准确、可靠且可追溯的答案。典型rag系统通常包含两个核心模块:一是检索器,负责将用户查询映射为向量并在知识库中进行相似性匹配;二是生成器,通常为预训练语言模型,用于融合检索到的文档与原始查询生成最终回答。

2、近年来,研究者利用大语言模型强大的语义理解和代码生成能力,探索其在自然语言到结构化查询语言任务中的应用。在此类rag架构中,大语言模型被用作查询编译器,接收用户输入的自然语言问题并生成对应的结构化查询语句,然后将生成的结构化查询语句提交至后端数据库或api(应用程序接口)执行,返回的结构化结果再作为上下文输入至生成模型,用于最终答案的合成。尽管该方法显著提升了rag系统对结构化知识源的访问能力,但仍面临若干技术挑战:首先,大语言模型在生成复杂嵌套查询、多表连接或多条件过滤时容易出现语法、语义和实际业务需求的理解偏差;其次,现有方案通常缺乏对目标数据库模式的实时感知,导致生成的查询无法执行或返回无关结果;再者,大语言模型直接生成查询语句,业务调整时需高昂成本微调模型,难以快速适应变化。

技术实现思路

1、本发明的目的在于克服上述现有技术的缺点,提供一种知识图谱查询语句生成方法及相关装置。

2、为达到上述目的,本发明采用以下技术方案予以实现:

3、本发明第一方面,提供一种知识图谱查询语句生成方法,包括:获取查询问题,通过大语言模型将查询问题进行要素解析并将要素解析结果填充至预设结构化要素模板,得到结构化要素文件;基于结构化要素文件提取结构化的实体要素、关系要素和目的要素,并根据预设映射规则分别映射为结构化的要素实体条件语句、关系条件语句和目的语句;根据结构化的目的要素确定目的实体,并结合知识图谱的本体邻接表,得到目的实体在知识图谱中的查询路径;根据所述查询路径,将结构化的要素实体条件语句、关系条件语句和目的语句进行拼接,得到查询问题的结构化的知识图谱查询语句。

4、可选的,所述预设结构化要素模板采用json格式;所述进行要素解析包括进行实体要素、关系要素和目的要素的解析;所述预设结构化要素模板中包括实体要素模版、关系要素模版和目的要素模版;其中,关系要素模版内嵌于实体要素模版中。

5、可选的,所述根据结构化的目的要素确定目的实体,并结合知识图谱的本体邻接表,得到目的实体在知识图谱中的查询路径包括:根据结构化的目的要素确定目的实体,在知识图谱的本体邻接表中从目的实体出发遍历所述本体邻接表的各实体,得到若干遍历路径;将若干遍历路径反向得到若干候选查询路径,以及从若干候选查询路径中选取一候选查询路径作为目的实体在知识图谱中的查询路径。

6、可选的,所述在知识图谱的本体邻接表中从目的实体出发遍历所述本体邻接表的各实体前,还包括:根据结构化的实体要素确定提及实体;遍历知识图谱的本体邻接表的各实体,当当前实体的度数小于等于1且不是目的实体和提及实体时,将当前实体添加至预设的候选队列尾部;重复标记步骤至候选队列为空;其中,标记步骤包括:选取候选队列的首个实体作为标记实体,将标记实体的度数设置为0并且在所述本体邻接表中标记为不需要,遍历所述本体邻接表中与标记实体相连的实体得到若干相连实体,并删除度数为0的相邻实体,以及将剩余各相连实体的度数减一后,当当前相连实体的度数为1且不是提及实体和目的实体时,将当前相连实体添加到候选队列尾部;所述在知识图谱的本体邻接表中从目的实体出发遍历所述本体邻接表的各实体时,排除标记为不需要的实体。

7、可选的,所述在知识图谱的本体邻接表中从目的实体出发遍历所述本体邻接表的各实体包括:在知识图谱的本体邻接表中从目的实体出发,采用深度优先遍历算法遍历所述本体邻接表的各实体。

8、可选的,所述将若干遍历路径反向得到若干候选查询路径,以及从若干候选查询路径中选取一候选查询路径作为目的实体在知识图谱中的查询路径包括:将若干遍历路径反向得到若干候选查询路径;获取各候选查询路径的起始实体的优先级,并选取起始实体的优先级最高的候选查询路径作为目的实体在知识图谱中的查询路径;其中,实体的数量越高则实体的优先级越低。

9、可选的,所述根据所述查询路径,将结构化的要素实体条件语句、关系条件语句和目的语句进行拼接,得到查询问题的结构化的知识图谱查询语句包括:以所述查询路径的起始实体为起点,基于所述本体邻接表执行拼接操作;其中,所述拼接操作包括:将当前实体对应的实体条件语句拼接至查询语句主干;根据所述本体邻接表确定当前实体的邻居实体,并剔除邻居实体中已访问的实体和标记为不需要的实体,以及将剩余邻居实体中位于所述查询路径的实体作为主实体,其余邻居实体作为支实体;对于各支实体,将支实体对应的实体条件语句和关系条件语句拼接为嵌套语句并挂载至查询语句主干中当前实体对应的实体条件语句之后;对于主实体,当主实体为目的实体时,将主实体对应的实体条件语句和关系条件语句拼接为嵌套语句并挂载至查询语句主干中当前实体对应的实体条件语句之后并结束执行拼接操作,以及在结束执行拼接操作后,在最终的查询语句主干末尾拼接所述目的语句,得到查询问题的结构化的知识图谱查询语句;否则,以主实体继续递归拼接操作。

10、本发明第二方面,提供一种知识图谱查询语句生成系统,包括:要素解析模块,用于获取查询问题,通过大语言模型将查询问题进行要素解析并将要素解析结果填充至预设结构化要素模板,得到结构化要素文件;语句生成模块,用于基于结构化要素文件提取结构化的实体要素、关系要素和目的要素,并根据预设映射规则分别映射为结构化的要素实体条件语句、关系条件语句和目的语句;路径确定模块,用于根据结构化的目的要素确定目的实体,并结合知识图谱的本体邻接表,得到目的实体在知识图谱中的查询路径;语句拼接模块,用于根据所述查询路径,将结构化的要素实体条件语句、关系条件语句和目的语句进行拼接,得到查询问题的结构化的知识图谱查询语句。

11、可选的,所述预设结构化要素模板采用json格式;所述进行要素解析包括进行实体要素、关系要素和目的要素的解析;所述预设结构化要素模板中包括实体要素模版、关系要素模版和目的要素模版;其中,关系要素模版内嵌于实体要素模版中。

12、可选的,所述路径确定模块具体用于:根据结构化的目的要素确定目的实体,在知识图谱的本体邻接表中从目的实体出发遍历所述本体邻接表的各实体,得到若干遍历路径;将若干遍历路径反向得到若干候选查询路径,以及从若干候选查询路径中选取一候选查询路径作为目的实体在知识图谱中的查询路径。

13、可选的,所述路径确定模块在知识图谱的本体邻接表中从目的实体出发遍历所述本体邻接表的各实体前,还用于:根据结构化的实体要素确定提及实体;遍历知识图谱的本体邻接表的各实体,当当前实体的度数小于等于1且不是目的实体和提及实体时,将当前实体添加至预设的候选队列尾部;重复标记步骤至候选队列为空;其中,标记步骤包括:选取候选队列的首个实体作为标记实体,将标记实体的度数设置为0并且在所述本体邻接表中标记为不需要,遍历所述本体邻接表中与标记实体相连的实体得到若干相连实体,并删除度数为0的相邻实体,以及将剩余各相连实体的度数减一后,当当前相连实体的度数为1且不是提及实体和目的实体时,将当前相连实体添加到候选队列尾部;所述在知识图谱的本体邻接表中从目的实体出发遍历所述本体邻接表的各实体时,排除标记为不需要的实体。

14、可选的,路径确定模块具体用于:在知识图谱的本体邻接表中从目的实体出发,采用深度优先遍历算法遍历所述本体邻接表的各实体。

15、可选的,所述路径确定模块具体用于:将若干遍历路径反向得到若干候选查询路径;获取各候选查询路径的起始实体的优先级,并选取起始实体的优先级最高的候选查询路径作为目的实体在知识图谱中的查询路径;其中,实体的数量越高则实体的优先级越低。

16、可选的,所述语句拼接模块具体用于:以所述查询路径的起始实体为起点,基于所述本体邻接表执行拼接操作;其中,所述拼接操作包括:将当前实体对应的实体条件语句拼接至查询语句主干;根据所述本体邻接表确定当前实体的邻居实体,并剔除邻居实体中已访问的实体和标记为不需要的实体,以及将剩余邻居实体中位于所述查询路径的实体作为主实体,其余邻居实体作为支实体;对于各支实体,将支实体对应的实体条件语句和关系条件语句拼接为嵌套语句并挂载至查询语句主干中当前实体对应的实体条件语句之后;对于主实体,当主实体为目的实体时,将主实体对应的实体条件语句和关系条件语句拼接为嵌套语句并挂载至查询语句主干中当前实体对应的实体条件语句之后并结束执行拼接操作,以及在结束执行拼接操作后,在最终的查询语句主干末尾拼接所述目的语句,得到查询问题的结构化的知识图谱查询语句;否则,以主实体继续递归拼接操作。

17、本发明第三方面,提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述知识图谱查询语句生成方法的步骤。

18、本发明第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述知识图谱查询语句生成方法的步骤。

19、与现有技术相比,本发明具有以下有益效果:

20、本发明知识图谱查询语句生成方法,通过利用大语言模型将查询问题进行要素解析并填充至预设结构化要素模板得到结构化要素文件,能够将查询构建逻辑与业务逻辑解耦,使大语言模型仅聚焦于业务需求中的关键约束条件的解析,无需掌握查询语句细节,避免了直接生成查询语句时需要设计冗长提示词模板的痛点,从而精准把握业务场景中的关键约束条件。通过基于结构化要素文件提取结构化的实体要素、关系要素和目的要素并根据预设映射规则分别映射为结构化的实体条件语句、关系条件语句和目的语句,结合实时数据库模式感知机制,能够确保生成的查询语句的可执行性与相关性,消除大语言模型直接生成查询语句时因缺乏对目标数据库模式的实时感知而导致的无法执行或返回无关结果的问题。通过根据结构化的目的要素确定目的实体并结合知识图谱的本体邻接表得到查询路径,以及根据查询路径将结构化的要素实体条件语句、关系条件语句和目的语句进行拼接得到知识图谱查询语句,具备路径自适应调整能力,能够显著提升查询性能。同时,本发明通过预定义模板与大语言模型解析的灵活适配架构,在业务调整时可减少大语言模型微调成本并减少提示词工程的投入,新增实体类型仅需预定义模板及对应映射规则即可完成功能迭代,具备横向扩展能力,既支持查询语言的平滑迁移,又能在业务逻辑变更时通过调整映射规则实现快速适配,无需重构大语言模型提示词工程体系,显著降低系统维护复杂度和成本。本发明方法能够广泛应用于各类领域的知识图谱问答系统中,为用户提供一个高效、准确且易于维护的知识图谱查询平台。