一种自动生成复杂图数据库查询语句服务的实现方法技术

技术编号:37999272 阅读:8 留言:0更新日期:2023-06-30 10:13
本申请涉及图数据库查询技术领域,克服了无法使用自然语言对图数据库进行检索查询的难题,公开了一种自动生成复杂图数据库查询语句服务的实现方法,包括:对大规模语言模型进行预训练和微调;从用户所在的图谱上抽取图元信息;大规模语言模型根据用户在查询截面的输入自动生成提示结果和/或图数据库查询语句;执行图数据库查询语句,以获取图上的实时查询结果,并根据所述实时查询结果对图数据库查询语句进行检查、执行和验证,该方法通过利用大规模语言模型(LLM)、生成式预训练模型(GPT)进行微调训练,实现了自动生成复杂图数据库查询语句的方法,通过抽取图元信息作为上下文,提高了查询建议的准确性和用户体验。高了查询建议的准确性和用户体验。高了查询建议的准确性和用户体验。

【技术实现步骤摘要】
一种自动生成复杂图数据库查询语句服务的实现方法


[0001]本申请涉及图数据库查询
,尤其是一种自动生成复杂图数据库查询语句服务的实现方法。

技术介绍

[0002] 图数据库语言是用于查询和操作图数据库(Graph Database)中的数据的编程语言。图数据库是一种特殊类型的数据库,使用图结构存储数据,并通过节点(Node)和边(Edge)的连接来表示数据之间的关系。与关系型数据库不同,图数据库通常更适合处理复杂的数据结构和关系,因此在社交网络、推荐系统、地理信息系统等领域得到了广泛的应用,图数据库语言是用于查询和操作图数据库中数据的编程语言。不同的图数据库通常使用不同的语言,但它们的基本原理和语法类似,都是用于描述节点和边之间的关系,查询和操作图数据。
[0003]在大型应用程序中,图数据库越来越被广泛使用,以管理高度关联的数据。然而,写复杂的查询语句是一项繁琐的任务,需要用户熟悉数据库结构和语法,而对于不具备数据库结构和语法背景知识的普通用户则无法对图数据库进行检索查询,这给普通用户带来了非常大的困扰。

技术实现思路

[0004]本申请的目的在于克服现有技术中无法使用自然语言对图数据库进行检索查询的难题,提供一种自动生成复杂图数据库查询语句服务的实现方法。
[0005]第一方面,提供了一种自动生成复杂图数据库查询语句服务的实现方法,包括:对大规模语言模型进行预训练和微调;从用户所在的图谱上抽取图元信息,以使得在生成图数据库查询语句时将图元信息作为上下文提供给大规模语言模型;大规模语言模型根据用户在查询截面的输入自动生成提示结果和/或图数据库查询语句;执行图数据库查询语句,以获取图上的实时查询结果,并根据所述实时查询结果对图数据库查询语句进行检查、执行和验证。
[0006]进一步的,所述大规模语言模型包括LLM模型或GPT模型。
[0007]进一步的,所述大规模语言模型采用prompt模板封装。
[0008]进一步的,所述对大规模语言模型进行预训练包括:利用大规模的通用语料库对大规模语言模型进行预训练,以使得大规模语言模型能够学习到通用的语言模式和语义规则,其中,所述通用语料库包括维基百科、新闻报道和学术论文。
[0009]进一步的,对大规模语言模型进行微调包括:收集并准备特定任务的有标注数据集;加载预训练好的大规模语言模型的权重;
根据具体任务的要求,调整大规模语言模型的参数;利用有标注数据集对大规模语言模型进行微调,并根据验证集的表现进行参数调整;利用测试集对微调后的大规模语言模型进行评估。
[0010]进一步的,所述图数据库查询语句中带有行内注释,且所述图数据库查询语句能够二次编辑。
[0011]进一步的,大规模语言模型根据用户在查询截面的输入自动生成提示结果和/或图数据库查询语句包括:获取用户在查询截面输入的请求描述;将所述请求描述和当前图的id发送给所述大规模语言模型的后端接口;所述大规模语言模型的后端接口根据当前图的id获得图元信息,并构造面向打语音模型的查询prompt;所述后端接口以流式方式返回大语言模型输出的结果。
[0012]进一步的,根据所述实时查询结果,为用户提供图数据库查询语句修改建议。
[0013]第二方面,提供了一种计算机可读存储介质,所述计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行如第一方面中的任意一种实现方式中方法的步骤。
[0014]第三方面,提供了一种电子设备,所述电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面中的任意一种实现方式中的方法。
[0015]本申请具有如下有益效果:1、该方法引入大规模语言模型以及抽取图元信息,能够通过使用自然语言描述查询需求,使得用户无需熟悉数据库结构和语法即可生成复杂的图数据库查询语句;2、能够将该方法内嵌在撰写图查询的界面内部,作为实时响应的职能补全,加速图用户的复杂查询撰写和查询模板预生成,另外,图元信息将被自动获取,无需人为明确指定,大大提升使用体验和效率;3、针对不同具体场景,结合算力成本,使用不同的大规模语言模型和模型训练的微调方式,特别是针对NebulaGraph图语言领域的语法和语义进行针对性的微调,能够有效的增加图数据库查询语句的生成效果和效率;4、该方法使用 Prompt 模板来规定自然语言的书写规范、细节和输入输出格式的例子,从而使得大规模语言模型能够更准确地理解查询意图,并生成符合用户预期的图数据库查询语句。
附图说明
[0016]构成本申请的一部分的附图用于来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
[0017]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他
的附图。
[0018]图1是本申请实施例一的自动生成复杂图数据库查询语句服务的实现方法的流程图;图2是本申请实施例一的自动生成复杂图数据库查询语句服务的实现方法中微调的流程图;图3是本申请实施例一的自动生成复杂图数据库查询语句服务的实现方法中提示结果和/或图数据库查询语句生成的流程图;图4是本申请实施例二的电子设备的内部结构示意图。
具体实施方式
[0019] 下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。
[0020]实施例一本申请实施例一所涉及的一种自动生成复杂图数据库查询语句服务的实现方法,包括:。
[0021]具体的,图1示出了申请实施例一中的自动生成复杂图数据库查询语句服务的实现方法的流程图,包括:S100、对大规模语言模型进行预训练和微调;具体的,大规模语言模型可以是LLM模型或GPT模型,也可以是自主开发的语言模型,且大规模语言模型使用 prompt 模板封装,用自然语言规定书写的规范、细节以及输入输出格式的例子,以及图数据库的 schema,生成自然语言描述的查询语句,从而使得大规模语言模型能够更准确地理解查询意图,并生成符合用户预期的图数据库查询语句;其中,对大规模语言模型进行预训练包括:利用大规模的通用语料库对大规模语言模型进行预训练,以使得大规模语言模型能够学习到通用的语言模式和语义规则,其中,所述通用语料库包括维基百科、新闻报道和学术论文;大规模语言模型的微调(即fine

tuning 阶段)是指在预训练(pre

training)完成后,将已经训练好的模型在特定任务上进行微调的过程,在这个过程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种自动生成复杂图数据库查询语句服务的实现方法,其特征在于,包括:对大规模语言模型进行预训练和微调;从用户所在的图谱上抽取图元信息,以使得在生成图数据库查询语句时将图元信息作为上下文提供给大规模语言模型;大规模语言模型根据用户在查询截面的输入自动生成提示结果和/或图数据库查询语句;执行图数据库查询语句,以获取图上的实时查询结果,并根据所述实时查询结果对图数据库查询语句进行检查、执行和验证。2.根据权利要求1所述的自动生成复杂图数据库查询语句服务的实现方法,其特征在于,所述大规模语言模型包括LLM模型或GPT模型。3.根据权利要求1所述的自动生成复杂图数据库查询语句服务的实现方法,其特征在于,所述大规模语言模型采用prompt模板封装。4.根据权利要求1所述的自动生成复杂图数据库查询语句服务的实现方法,其特征在于,所述对大规模语言模型进行预训练包括:利用大规模的通用语料库对大规模语言模型进行预训练,以使得大规模语言模型能够学习到通用的语言模式和语义规则,其中,所述通用语料库包括维基百科、新闻报道和学术论文。5.根据权利要求1所述的自动生成复杂图数据库查询语句服务的实现方法,其特征在于,对大规模语言模型进行微调包括:收集并准备特定任务的有标注数据集;加载预训练好的大规模语言模型的权重;根据具体任务的要求,调整大规模语言模型的参数;利用有标注数据集对大规模语言模型进行微调,并根据...

【专利技术属性】
技术研发人员:古思为吴敏杨柳雪叶小萌
申请(专利权)人:杭州悦数科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1