System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于大模型的业务场景中自然语言到SQL语句生成方法技术_技高网

基于大模型的业务场景中自然语言到SQL语句生成方法技术

技术编号:40671353 阅读:7 留言:0更新日期:2024-03-18 19:07
本发明专利技术公开了一种基于大模型的业务场景中自然语言到SQL语句生成方法。本发明专利技术包括:首先,根据公开的NL2SQL数据集、目标业务场景下的NL2SQL业务数据集和Knowledge数据集,使用模型分层训练方法对基础模型进行分步微调训练,获得最终大模型;接着将待生成的自然语音输入到最终大模型中,最终大模型采用并行推理容错机制生成多种初步修正SQL语句结果,再基于多种SQL语句初步结果进行检查校准后,获得最终的SQL语句。本发明专利技术解决了SQL生成过程由于无法获取背景知识导致生成语句逻辑有问题的缺陷,增强了SQL结合背景业务知识的能力,提升SQL语句生成准确率。

【技术实现步骤摘要】

本专利技术涉及了一种自然语言到sql语句生成的方法,尤其涉及了一种基于大模型的业务场景中自然语言到sql语句生成方法。


技术介绍

1、随着人工智能大模型技术的发展,通过自然语言直接操作数据库,完成数据查询,修改,统计分析等功能越来约受到数据应用和分析公司的欢迎,在金融,工业,管理等领域具有广泛的应用需求。例如在金融领域,可以通过自然语言直接问:某只股票最近一周的涨幅如何?系统直接给出该股票最近一周的涨跌幅数据展示,不用通过sql或其他编程语言编写代码语句然后在数据库运行得到数据结果展示。

2、现有的nl2sql技术(nl2sql指自然语言到sql语句转换)存在输出准确率不高,输出sql语句无法保证可以运行不报错,无法结合具体的业务场景利用背景知识等问题,使nl2sql技术实际应用落地受阻。


技术实现思路

1、为了解决
技术介绍
中存在的问题和需求,本专利技术提出了一种基于大模型的业务场景中自然语言到sql语句生成方法。

2、本专利技术的技术方案如下:

3、首先,根据公开的nl2sql数据集、目标业务场景下的nl2sql业务数据集和knowledge数据集,使用模型分层训练方法对基础模型进行分步微调训练,获得最终大模型;

4、接着将待生成的自然语音输入到最终大模型中,最终大模型采用并行推理容错机制生成多种初步修正sql语句结果,再基于多种sql语句初步结果进行检查校准后,获得最终的sql语句。

5、所述根据公开的nl2sql数据集、目标业务场景下的nl2sql业务数据集和knowledge数据集,使用模型分层训练方法对基础模型进行分步微调训练,获得最终大模型,具体为:

6、首先,使用公开的nl2sql数据集对基础模型进行初次微调,获得初次微调后的大模型;

7、接着,根据目标业务场景下的knowledge数据集,将目标业务的背景知识注入到初次微调后的大模型中,获得二次微调后的大模型;

8、最后,利用目标业务场景下的nl2sql业务数据集对二次微调后的大模型进行再次微调后,获得最终大模型。

9、所述基础模型包括llama,chatglm,bloom,baichuan、wizardlm。

10、所述将待生成的自然语音输入到最终大模型中,最终大模型采用并行推理容错机制生成多种sql语句初步结果,具体为:

11、根据温度参数tempearture和核心采样参数top_p,设置最终大模型的三种不同推理参数配置,在三种不同推理参数配置下,最终大模型基于待生成的自然语音分别生成三种sql语句初步结果,再对三种sql语句初步结果分别进行规则校验修正后,获得三种初步修正sql语句结果。

12、所述最终大模型的三种不同推理参数配置分别为稳健性输出配置、平衡性输出配置和创造性输出配置;稳健性输出配置的温度参数temperature=0-0.1,核心采样参数top_p=0-0.1;平衡性输出配置的温度参数temperature=0.1-0.5,核心采样参数top_p=0.1-0.5;创造性输出配置的温度参数temperature=0.5-0.9,核心采样参数top_p=0.5-0.9。

13、所述基于多种sql语句初步结果进行检查校准后,获得最终的sql语句,具体为:

14、首先,判断三种初步修正sql语句结果中是否相同,当存在相同时,对三种初步修正sql语句结果进行执行校验,获得对应的执行结果;如果相同的和不相同的初步修正sql语句结果中存在可执行的初步修正sql语句结果,则优先选择可执行的初步修正sql语句结果,在初步修正sql语句结果都可执行的基础上选择相同的初步修正sql语句结果;如果相同的和不相同的初步修正sql语句结果中不存在可执行的初步修正sql语句结果,则基于相同的初步修正sql语句结果以及其运行报错信息,利用另一个大模型进行校验,直到输出可执行的sql语句并作为最终的sql语句;

15、当均为不相同时,则分别对三种初步修正sql语句结果进行执行校验,获得对应的执行结果;如果存在可执行的初步修正sql语句结果,则按优先级顺序取可执行的初步修正sql语句结果;如果不可执行的初步修正sql语句结果,则基于sql1以及其运行报错信息,利用另一个大模型进行校验,直到输出可执行的sql语句并作为最终的sql语句。

16、所述另一个大模型为带有诊断功能的模型。

17、本专利技术的有益效果:

18、本专利技术提出的方法可以让不懂sql语法或不懂数据分析语言的人轻松完成数据查询,管理和分析工作,降低数据查询和分析的门槛,提升数据分析效率。还可以通过数据库中自定义函数和自定义存储过程构建新的功能函数或组件,实现绘图,数据建模等扩展功能。主要应用在金融,工业,管理等需要数据查询,统计,分析的场景中。

19、本专利技术结合
技术介绍
中的问题,设计和改进了nl2sql技术从数据搜集到自定义组件设计到模型训练,再到推理应用整个流程种的技术方法。通过自定义函数和自定义存储过程的设计,减少了生成sql语句的难度;通过构建背景知识数据集并把知识数据库通过分层训练注入到模型中,使模型在生成sql语句时可以使用业务背景知识,生成更符合业务规划和要求的逻辑;通过使用公开sql数据集分层训练,增强模型泛化性能,在没见过的问题表述输入上也可以输出正确的结果;得到训练好的模型后,在推理应用阶段通过使用规则校验修正,并行请求容错设计,结合运行报错的自动校验修正等技术进一步提高生成sql的准确性,可执行性。

20、总之,本专利技术解决了sql生成过程由于无法获取背景知识导致生成语句逻辑有问题的缺陷,增强了sql结合背景业务知识的能力,提升sql语句生成准确率。

本文档来自技高网...

【技术保护点】

1.一种基于大模型的业务场景中自然语言到SQL语句生成方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的一种基于大模型的业务场景中自然语言到SQL语句生成方法,其特征在于,所述根据公开的NL2SQL数据集、目标业务场景下的NL2SQL业务数据集和Knowledge数据集,使用模型分层训练方法对基础模型进行分步微调训练,获得最终大模型,具体为:

3.根据权利要求1所述的一种基于大模型的业务场景中自然语言到SQL语句生成方法,其特征在于,所述基础模型包括LLaMA,ChatGLM,BLOOM,Baichuan、WizardLM。

4.根据权利要求1所述的一种基于大模型的业务场景中自然语言到SQL语句生成方法,其特征在于,所述将待生成的自然语音输入到最终大模型中,最终大模型采用并行推理容错机制生成多种SQL语句初步结果,具体为:

5.根据权利要求4所述的一种基于大模型的业务场景中自然语言到SQL语句生成方法,其特征在于,所述最终大模型的三种不同推理参数配置分别为稳健性输出配置、平衡性输出配置和创造性输出配置;稳健性输出配置的温度参数temperature=0-0.1,核心采样参数top_p=0-0.1;平衡性输出配置的温度参数temperature=0.1-0.5,核心采样参数top_p=0.1-0.5;创造性输出配置的温度参数temperature=0.5-0.9,核心采样参数top_p=0.5-0.9。

6.根据权利要求1所述的一种基于大模型的业务场景中自然语言到SQL语句生成方法,其特征在于,所述基于多种SQL语句初步结果进行检查校准后,获得最终的SQL语句,具体为:

7.根据权利要求6所述的一种基于大模型的业务场景中自然语言到SQL语句生成方法,其特征在于,所述另一个大模型为带有诊断功能的模型。

...

【技术特征摘要】

1.一种基于大模型的业务场景中自然语言到sql语句生成方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的一种基于大模型的业务场景中自然语言到sql语句生成方法,其特征在于,所述根据公开的nl2sql数据集、目标业务场景下的nl2sql业务数据集和knowledge数据集,使用模型分层训练方法对基础模型进行分步微调训练,获得最终大模型,具体为:

3.根据权利要求1所述的一种基于大模型的业务场景中自然语言到sql语句生成方法,其特征在于,所述基础模型包括llama,chatglm,bloom,baichuan、wizardlm。

4.根据权利要求1所述的一种基于大模型的业务场景中自然语言到sql语句生成方法,其特征在于,所述将待生成的自然语音输入到最终大模型中,最终大模型采用并行推理容错机制生成多种sql语句初步结果,具体为:

5.根据权利...

【专利技术属性】
技术研发人员:陈刚杨赛赛鲁鹏袁静黄清仪
申请(专利权)人:浙江大学计算机创新技术研究院
类型:发明
国别省市:

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

1