System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据库查询语句的生成方法、装置、设备及存储介质制造方法及图纸_技高网

数据库查询语句的生成方法、装置、设备及存储介质制造方法及图纸

技术编号:40362344 阅读:17 留言:0更新日期:2024-02-09 14:49
本申请提供了一种数据库查询语句的生成方法、装置、设备及存储介质,属于计算机技术领域。方法包括:通过目标对象输入的第一输入文本、多个第二输入文本以及目标数据库的组织结构信息,生成第一查询语句;基于目标对象对错误类型的选择操作,获取第一查询语句的错误类型;通过第一查询语句的错误类型、第一输入文本、多个第二输入文本以及目标数据库的组织结构信息,生成第二查询语句;在目标对象输入的第二反馈信息指示第二查询语句正确的情况下,将第二查询语句输出为第一输入文本的数据库查询语句。上述方案,提高了生成的数据库查询语句的正确率,进而提高了生成的数据库查询语句的可执行性。

【技术实现步骤摘要】

本申请涉及计算机,特别涉及一种数据库查询语句的生成方法、装置、设备及存储介质


技术介绍

1、在text2sql领域,通过数据库语言生成模型可以将输入的文本转译成数据库可执行的数据库查询语句,也即sql(structured query language,结构化查询语言)语句,使得通过该sql语句可以操作数据库得到想要的结果。然而,目前在text2sql领域中提出的数据库语言生成模型,仅考虑了将文本转译为sql语句,并未考虑转译得到的sql语句的可执行性,导致生成的sql语句的可执行性差。


技术实现思路

1、本申请实施例提供了一种数据库查询语句的生成方法、装置、设备及存储介质,提高了生成的数据库查询语句的正确率,进而提高了生成的数据库查询语句的可执行性。所述技术方案如下:

2、一方面,提供了一种数据库查询语句的生成方法,所述方法包括:

3、通过目标对象输入的第一输入文本、多个第二输入文本以及目标数据库的组织结构信息,生成第一查询语句,所述第二输入文本的输入时刻早于所述第一输入文本;

4、在所述目标对象输入的第一反馈信息指示所述第一查询语句不正确的情况下,基于所述目标对象对错误类型的选择操作,获取所述第一查询语句的错误类型,所述第一反馈信息用于指示所述第一查询语句正确或者不正确;

5、通过所述第一查询语句的错误类型、所述第一输入文本、所述多个第二输入文本以及所述目标数据库的组织结构信息,生成第二查询语句;

6、在所述目标对象输入的第二反馈信息指示所述第二查询语句正确的情况下,将所述第二查询语句输出为所述第一输入文本的数据库查询语句,所述第二反馈信息用于指示所述第二查询语句正确或者不正确。

7、另一方面,提供了一种数据库查询语句的生成装置,所述装置包括:

8、第一生成模块,用于通过目标对象输入的第一输入文本、多个第二输入文本以及目标数据库的组织结构信息,生成第一查询语句,所述第二输入文本的输入时刻早于所述第一输入文本;

9、获取模块,用于在所述目标对象输入的第一反馈信息指示所述第一查询语句不正确的情况下,基于所述目标对象对错误类型的选择操作,获取所述第一查询语句的错误类型,所述第一反馈信息用于指示所述第一查询语句正确或者不正确;

10、第二生成模块,用于通过所述第一查询语句的错误类型、所述第一输入文本、所述多个第二输入文本以及所述目标数据库的组织结构信息,生成第二查询语句;

11、输出模块,用于在所述目标对象输入的第二反馈信息指示所述第二查询语句正确的情况下,将所述第二查询语句输出为所述第一输入文本的数据库查询语句,所述第二反馈信息用于指示所述第二查询语句正确或者不正确。

12、在一些实施例中,所述第一生成模块,包括:

13、编码单元,用于对所述第一输入文本、所述多个第二输入文本以及所述目标数据库的组织结构信息进行编码,得到第一编码信息;

14、注意力单元,用于基于注意力机制,对所述第一编码信息进行处理,得到第一注意力信息;

15、解码单元,用于对所述第一注意力信息进行解码,得到所述第一查询语句。

16、在一些实施例中,所述解码单元,用于对所述第一注意力信息进行第一次解码,得到关键词、列名以及表名;对所述第一注意力信息进行第二次解码,得到至少一个数据库查询函数;基于所述关键词、列名、表名以及所述至少一个数据库查询函数,生成所述第一查询语句。

17、在一些实施例中,所述第一生成模块,还包括:

18、第一确定单元,用于基于所述第一输入文本和所述多个第二输入文本,确定上下文信息,所述上下文信息用于表示所述多个第二输入文本和所述第一输入文本之间的上下文关系;

19、第二确定单元,用于基于所述第一输入文本、所述多个第二输入文本以及第一组织结构信息,确定第二组织结构信息,所述第一组织结构信息包括与所述多个第二输入文本关联的组织结构词汇,所述第二组织结构信息包括与所述第一输入文本关联的组织结构词汇;

20、所述注意力单元,用于基于注意力机制,对所述第一编码信息、所述上下文信息、所述第一组织结构信息和所述第二组织结构信息进行处理,得到所述第一注意力信息。

21、在一些实施例中,所述第一确定单元,用于对所述第一输入文本和所述多个第二输入文本分别进行编码,得到所述第一输入文本的特征向量和所述多个第二输入文本的特征向量;对于任一第二输入文本,基于所述第二输入文本的特征向量和所述第一输入文本的特征向量,确定所述第二输入文本与所述第一输入文本之间的上下文关系。

22、在一些实施例中,所述第二确定单元,用于对所述第一输入文本和所述多个第二输入文本分别进行编码,得到所述第一输入文本的特征向量和所述多个第二输入文本的特征向量;对于所述第一组织结构信息中的任一组织结构词汇,对所述组织结构词汇进行编码,得到所述组织结构词汇的组织结构词汇向量;基于所述第一输入文本的特征向量、所述多个第二输入文本的特征向量以及多个组织结构词汇向量,确定所述第二组织结构信息。

23、在一些实施例中,所述第二生成模块,用于对所述第一查询语句的错误类型、所述第一输入文本、所述多个第二输入文本以及所述目标数据库的组织结构信息进行编码,得到第二编码信息;基于注意力机制,对所述第二编码信息进行处理,得到第二注意力信息;对所述第二注意力信息进行解码,得到所述第二查询语句。

24、在一些实施例中,所述通过目标对象输入的第一输入文本、多个第二输入文本以及目标数据库的组织结构信息,生成第一查询语句,基于语句生成模型中的第一子模型实现;

25、所述第一子模型的训练步骤包括:

26、获取样本数据集,所述样本数据集包括多组样本数据,一组样本数据包括多个样本文本、样本语句、第一样本信息和第二样本信息,所述第一样本信息用于表示所述多个样本文本之间的上下文关系,所述第二样本信息用于表示所述多个样本文本与所述样本语句中的组织结构词汇之间的对应关系;

27、对于任一组样本数据,基于所述样本数据,生成第一语句;

28、在已训练次数未达到训练次数阈值的情况下,确定所述第一语句的样本错误类型;

29、基于所述样本错误类型,调整所述第一子模型的参数;

30、基于调整后的所述第一子模型,再次对所述样本数据进行处理,得到第二语句;

31、在已训练次数达到所述训练次数阈值的情况下,基于所述第二语句和所述样本语句之间的差别,训练所述第一子模型。

32、在一些实施例中,所述确定所述第一语句的样本错误类型,包括:

33、将所述第一语句和所述样本语句进行模板匹配,所述模板匹配用于确定语句是否一致;

34、在所述第一语句与所述样本语句不一致的情况下,对所述第一语句进行错误类型检测,得到所述第一语句的至少一个样本错误类型。

35本文档来自技高网...

【技术保护点】

1.一种数据库查询语句的生成方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述通过目标对象输入的第一输入文本、多个第二输入文本以及目标数据库的组织结构信息,生成第一查询语句,包括:

3.根据权利要求2所述的方法,其特征在于,所述对所述第一注意力信息进行解码,得到所述第一查询语句,包括:

4.根据权利要求2所述的方法,其特征在于,所述方法还包括:

5.根据权利要求4所述的方法,其特征在于,所述基于所述第一输入文本和所述多个第二输入文本,确定上下文信息,包括:

6.根据权利要求4所述的方法,其特征在于,所述基于所述第一输入文本、所述多个第二输入文本以及第一组织结构信息,确定第二组织结构信息,包括:

7.根据权利要求1所述的方法,其特征在于,所述通过所述第一查询语句的错误类型、所述第一输入文本、所述多个第二输入文本以及所述目标数据库的组织结构信息,生成第二查询语句,包括:

8.根据权利要求1所述的方法,其特征在于,所述通过目标对象输入的第一输入文本、多个第二输入文本以及目标数据库的组织结构信息,生成第一查询语句,基于语句生成模型中的第一子模型实现;

9.根据权利要求8所述的方法,其特征在于,所述确定所述第一语句的样本错误类型,包括:

10.一种数据库查询语句的生成装置,其特征在于,所述装置包括:

11.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一段计算机程序,所述至少一段计算机程序由所述处理器加载并执行权利要求1至9任一项权利要求所述的数据库查询语句的生成方法。

12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储至少一段计算机程序,所述至少一段计算机程序用于执行权利要求1至9任一项权利要求所述的数据库查询语句的生成方法。

13.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9任一项权利要求所述的数据库查询语句的生成方法。

...

【技术特征摘要】

1.一种数据库查询语句的生成方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述通过目标对象输入的第一输入文本、多个第二输入文本以及目标数据库的组织结构信息,生成第一查询语句,包括:

3.根据权利要求2所述的方法,其特征在于,所述对所述第一注意力信息进行解码,得到所述第一查询语句,包括:

4.根据权利要求2所述的方法,其特征在于,所述方法还包括:

5.根据权利要求4所述的方法,其特征在于,所述基于所述第一输入文本和所述多个第二输入文本,确定上下文信息,包括:

6.根据权利要求4所述的方法,其特征在于,所述基于所述第一输入文本、所述多个第二输入文本以及第一组织结构信息,确定第二组织结构信息,包括:

7.根据权利要求1所述的方法,其特征在于,所述通过所述第一查询语句的错误类型、所述第一输入文本、所述多个第二输入文本以及所述目标数据库的组织结构信息,生成第二查询语句,包括:

8.根据权利要求1所述...

【专利技术属性】
技术研发人员:刘烃王玉王志涛范铭司梓良张炜煦林家纬苏函晶
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1