System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,具体涉及一种具有意图识别的sql数据库查询方法、一种具有意图识别的sql数据库查询系统、一种具有意图识别的sql数据库问答方法、一种具有意图识别的sql数据库问答系统、一种计算机设备及一种计算机可读存储介质。
技术介绍
1、本部分的陈述仅仅是提供了与本专利技术相关的
技术介绍
,并不必然构成现有技术。
2、数据库智能问答技术是一种将关系型数据库(例如mysql)存储的结构化数据,通过使用自然语言对话的方式查询的技术。数据库智能问答技术无需人工编写专业且复杂的sql结构化查询语句,实现了普通用户与数据的直接交互,避免了对数据的二次开发,提高了数据利用效率。
3、生成式大规模预训练语言模型,简称大语言模型(large language model),是一种基于transformer架构的神经网络模型,通过使用大量的无监督文本数据、有监督对话数据以及人工反馈的强化学习,训练出的具有丰富先验知识、具备小样本学习、代码编写以及逻辑推理能力的语言模型。大语言模型将传统的数据库智能问答技术转化为一个端到端的任务,即输入用户问题直接输出对应的结果。
4、相较于传统的技术,基于大语言模型的数据库智能问答技术首先使用lora微调技术微调模型以适配特定的场景;然后借助大语言模型提示工程,将自然语言的数据分析需求以及数据库的文本化描述作为提示词输入到大语言模型中,大语言模型生成满足需求的sql语句,最终通过sql语句查询器,查询出最终的结果。
5、专利技术人发现,目前,基于大语言模型的
6、(1)缺少针对用户意图的自动化识别与修正方法,即不能将目标数据库字段与用户意图进行对齐,导致检索出的数据缺失或者不符合用户需求;(2)缺少针对大语言模型优化的数据库描述规范,大语言模型不能准确理解数据库结构以及字段信息;(3)缺少对统计结果的数据下钻处理,统计分析结果无法溯源,导致数据不可信。
技术实现思路
1、为了解决现有技术的不足,本专利技术提供了一种具有意图识别的sql数据库查询方法、问答方法及系统,有效解决了用户问题与sql数据库的实际数据的对齐问题,能够准确找到用户问题涉及的字段内容,生成符合要求的sql查询语句,极大的提高了查询精度和查询效率。
2、为了实现上述目的,本专利技术采用如下技术方案:
3、第一方面,本专利技术提供了一种具有意图识别的sql数据库查询方法。
4、一种具有意图识别的sql数据库查询方法,包括以下过程:
5、对用户问题中的意图进行识别和修正,得到对齐后的数据库字段到用户问题涉及到的字段内容字典;
6、根据所述字段内容字典生成数据库补充信息描述,将数据库补充信息描述与标准化数据库描述组合以形成上下文信息;
7、根据所述上下文信息以及预设的大语言模型,得到所述用户问题对应的sql查询语句,根据所述sql查询语句查询到的sql数据库以得到待查询内容。
8、作为本专利技术第一方面进一步的限定,对用户问题中的意图进行识别和修正,得到对齐后的数据库字段到用户问题涉及到的字段内容字典r,包括:
9、抽取用户问题中涉及到的数据库字段以及所述数据库字段对应的内容,则抽取的结果为fieldx:[c′1,c′2,...,c′x,...,c′m'],c′x为从用户问题中抽取出的fieldx字段对应的文本内容;
10、如果fieldx∈(e-ee′),且c′x∈cx则将{fieldx:[c′x]}加入结果集r中;如果fieldx∈ee′,则执行下一步,其中,e为可穷举数据字段;
11、将c′x转化为向量将fieldx字段的数据集合cx={c1,c2,...,cm}转化为向量集合并设置基本相似度阈值threshold2和完全相似度阈值threshold3;
12、将与中的每个向量计算相似度,如果相似度>threshold3,则将向量对应的字段内容加到完全相似列表l′中,如果threshold3>相似度>threshold2,则将向量对应的字段内容加到基本相似列表l中;
13、若则将{fieldx:l′}加入字段内容字典r中,若则将{fieldx:l}加入字段内容字典r中,若则执行下一步;
14、使用大语言模型和提示工程生成c′x的描述文本,并替换c′x,使用新生成的c′x执行上述判断过程,直至或者
15、作为本专利技术第一方面更进一步的限定,对于每一个可穷举的数据字段如果m<threshold1则将数据字段以列表形式作为数据data的值,否则定义为意图识别字段
16、作为本专利技术第一方面进一步的限定,根据所述字段内容字典生成数据库补充信息描述,将数据库补充信息描述与标准化数据库描述组合以形成上下文信息,包括:
17、将问题的背景、对sql语句生成任务的描述、针对特定任务的一些特殊规定、任务的小样本样例、用户问题、数据库基本信息描述、数据库补充信息描述和可选图表类型列表填充至提示模版中;
18、将提示模版输入到大语言模型中,生成针对用户问题的sql查询语句、图表类型名称、以及图表xy轴对应的查询字段名称。
19、作为本专利技术第一方面更进一步的限定,根据所述sql查询语句查询到的sql数据库以得到待查询内容,包括:
20、如果用户问题只涉及到一个数值的查询,则使用大语言模型直接输出数据;否则根据生成的图表类型名称、图表xy轴对应的查询字段名称以及查询出的数据,填充预先定制的echart图表模版以及表格模版,进行前端web展示。
21、作为本专利技术第一方面更进一步的限定,将sql语句查询出的数据表转化为二维坐标轴;
22、web页面上表格中的某条数据被点击时,通过二维坐标轴定位该条数据的xy轴,进而获得该数据在表格中的列数以及行数,触发数据下钻过程;
23、将sql语句、数据表、列数以及行数作为限制条件输入到提示工程模版中,得到填充好的提示词,根据填充好的提示词以及预设的大语言模型,得到数据下钻的sql语句,根据数据下钻的sql语句进行查询。
24、第二方面,本专利技术提供了一种具有意图识别的sql数据库问答方法。
25、一种具有意图识别的sql数据库问答方法,应用于数据库服务器,包括以下过程:
26、接收用户输入的用户问题,或者接收用户语音换成的用户问题,或者将用户的语音输入转换成用户问题;
27、根据所述用户问题,采用本专利技术第一方面所述的具有意图识别的sql数据库查询方法进行内容查询;
28、将查询到的内容转换成设定的方式进行展示,或者将查询到的内容发送至用户指定的终端,或者将转换成设定的方式的内容发送至用户指定的终端,或者将查询到的内容以及转换成设定的方式的内容一起发送至用户指定的终端。
29、第三方面,本专利技术本文档来自技高网...
【技术保护点】
1.一种具有意图识别的SQL数据库查询方法,其特征在于,包括以下过程:
2.如权利要求1所述的具有意图识别的SQL数据库查询方法,其特征在于,
3.如权利要求2所述的具有意图识别的SQL数据库查询方法,其特征在于,
4.如权利要求1所述的具有意图识别的SQL数据库查询方法,其特征在于,
5.如权利要求4所述的具有意图识别的SQL数据库查询方法,其特征在于,
6.一种具有意图识别的SQL数据库问答方法,其特征在于,应用于数据库服务器,包括以下过程:
7.一种具有意图识别的SQL数据库查询系统,其特征在于,包括:
8.一种具有意图识别的SQL数据库问答系统,其特征在于,应用于数据库服务器,包括:
9.一种计算机设备,其特征在于,包括:处理器和计算机可读存储介质;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-5任一项所述的具有意图识别的SQL数据库查询方法,或者实现如权利要求6所述的具有意图识
...【技术特征摘要】
1.一种具有意图识别的sql数据库查询方法,其特征在于,包括以下过程:
2.如权利要求1所述的具有意图识别的sql数据库查询方法,其特征在于,
3.如权利要求2所述的具有意图识别的sql数据库查询方法,其特征在于,
4.如权利要求1所述的具有意图识别的sql数据库查询方法,其特征在于,
5.如权利要求4所述的具有意图识别的sql数据库查询方法,其特征在于,
6.一种具有意图识别的sql数据库问答方法,其特征在于,应用于数据库服务器,包括以下过程:...
【专利技术属性】
技术研发人员:吴士伟,展一鸣,陈通,张超,李慧娟,谭伟娜,王瑞霜,
申请(专利权)人:山东亿云信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。