System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() SQL生成方法、装置、计算机设备、可读存储介质和程序产品制造方法及图纸_技高网

SQL生成方法、装置、计算机设备、可读存储介质和程序产品制造方法及图纸

技术编号:44535333 阅读:0 留言:0更新日期:2025-03-11 14:04
本申请涉及一种SQL生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。所述方法包括:基于初始问题,确定初始问题对应的补充信息,以及得到目标问题;基于预先配置的标签体系,确定目标问题包含的各实体的第一细粒度标签,以及与各预设数据库表中的各字段的第二细粒度标签进行关联匹配,得到候选表;基于候选表对目标问题进行转换,得到转换问题,通过预设的大语言模型对转换问题进行处理,得到SQL语句,可以对用户直接输入的问题进行知识增强,可以提升问题描述的清晰度,优化数据检索的效率以及优化数据的可解释性,还可以对不同语义空间的文本描述进行对齐处理,提升大语言模型生成SQL语句的准确程度以及生成效率。

【技术实现步骤摘要】

本申请涉及大数据,特别是涉及一种sql生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。


技术介绍

1、由于text-to-sql(文本生成sql)任务是需要深度推理的非简单任务,以及在实际的生产环境中,上述任务可能是复杂用户查询或者是面向大规模数据集的任务,因此传统技术中的直接基于llm大语言模型执行文本生成sql任务的性能较差,大语言模型将会遇到性能挑战,导致大语言模型生成的sql的准确性较差。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种能够提升生成效率以及准确程度的sql生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。

2、第一方面,本申请提供了一种sql生成方法,包括:

3、基于初始问题,确定所述初始问题对应的补充信息,以及得到目标问题;基于预先配置的标签体系,确定所述目标问题包含的各实体的第一细粒度标签;基于各所述实体的第一细粒度标签,与各预设数据库表中的各字段的第二细粒度标签进行关联匹配,得到候选表;基于所述候选表对所述目标问题进行转换,得到转换问题;将所述转换问题输入至预设的大语言模型,生成sql语句。

4、在其中一个实施例中,所述补充信息为各实体分别对应的描述补充信息;所述基于初始问题,确定所述初始问题对应的补充信息,以及得到目标问题,包括:获取初始问题,对所述初始问题进行实体提取,得到多个所述实体;在预设的知识图谱中,查找各所述实体分别对应的描述补充信息;基于各所述实体分别对应的描述补充信息以及所述初始问题,得到目标问题。

5、在其中一个实施例中,所述方法还包括:基于预先配置的标签体系中包含的多个标签,确定各所述数据库表包含的各字段分别对应的第二细粒度标签。

6、在其中一个实施例中,所述基于各所述实体的第一细粒度标签,与各预设数据库表中的各字段的第二细粒度标签进行关联匹配,得到候选表,包括:针对每一所述实体的第一细粒度标签,分别计算各所述第二细粒度标签与所述第一细粒度标签之间的向量相似度,得到与所述第一细粒度标签匹配的第二细粒度标签;基于各个匹配的第二细粒度标签,确定所述目标问题对应的种子字段以及种子表,以及从各所述种子表中,确定各所述种子表中的主键字段和外键字段;基于所述外键字段,确定所述外键所在的表引用的第一引用表,以及基于所述主键字段,确定引用所述主键所在的表的第二引用表;基于所述主键字段、所述外键字段、所述第一引用表以及所述第二引用表,得到候选表。

7、在其中一个实施例中,所述基于所述主键字段、所述外键字段、所述第一引用表以及所述第二引用表,得到候选表,包括:基于所述主键字段、所述外键字段、所述第一引用表以及所述第二引用表,得到初始候选表,所述初始候选表至少包括第一候选表以及第二候选表;在所述第一候选表与所述第二候选表之间不存在链接关系的情况下,对所述第一候选表或所述第二候选表进行扩散处理,得到添加外键后的第一候选表或第二候选表;基于添加外键后的第一候选表或第二候选表,得到候选表。

8、在其中一个实施例中,所述将所述转换问题输入至预设的大语言模型,生成sql语句,包括:通过所述预设的大语言模型以及所述转换问题,确定所述转换问题对应的sql语句所使用的表以及字段;基于所述所使用的表以及字段生成sql语句。

9、第二方面,本申请还提供了一种sql生成装置,包括:第一确定模块,用于基于初始问题,确定所述初始问题对应的补充信息,以及得到目标问题;第二确定模块,用于基于预先配置的标签体系,确定所述目标问题包含的各实体的第一细粒度标签;第一匹配模块,用于基于各所述实体的第一细粒度标签,与各预设数据库表中的各字段的第二细粒度标签进行关联匹配,得到候选表;基于所述候选表对所述目标问题进行转换,得到转换问题;第一生成模块,用于将所述转换问题输入至预设的大语言模型,生成sql语句。

10、第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以上实施例所述的步骤。

11、第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以上实施例所述的步骤。

12、第五方面,本申请还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以上实施例所述的步骤。

13、上述sql生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。通过采用本方法,可以对用户直接输入的问题进行知识增强,可以提升用户输入的问题描述的清晰度,优化数据检索的效率以及优化数据的可解释性,还可以对不同语义空间的文本描述进行对齐处理,提升大语言模型生成sql语句的准确程度以及生成效率。

本文档来自技高网...

【技术保护点】

1.一种SQL生成方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述补充信息为各实体分别对应的描述补充信息;所述基于初始问题,确定所述初始问题对应的补充信息,以及得到目标问题,包括:

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

4.根据权利要求1所述的方法,其特征在于,所述基于各所述实体的第一细粒度标签,与各预设数据库表中的各字段的第二细粒度标签进行关联匹配,得到候选表,包括:

5.根据权利要求4所述的方法,其特征在于,所述基于所述主键字段、所述外键字段、所述第一引用表以及所述第二引用表,得到候选表,包括:

6.根据权利要求1所述的方法,其特征在于,所述将所述转换问题输入至预设的大语言模型,生成SQL语句,包括:

7.一种SQL生成装置,其特征在于,所述装置包括:

8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。

10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。

...

【技术特征摘要】

1.一种sql生成方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述补充信息为各实体分别对应的描述补充信息;所述基于初始问题,确定所述初始问题对应的补充信息,以及得到目标问题,包括:

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

4.根据权利要求1所述的方法,其特征在于,所述基于各所述实体的第一细粒度标签,与各预设数据库表中的各字段的第二细粒度标签进行关联匹配,得到候选表,包括:

5.根据权利要求4所述的方法,其特征在于,所述基于所述主键字段、所述外键字段、所述第一引用表以及所述第二引用表,得到候选表,包括:

6....

【专利技术属性】
技术研发人员:徐攀登黄创光张杰庄义彬
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

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

1