技术新讯 > 计算推算,计数设备的制造及其应用技术 > 基于编辑链的多轮text-to-SQL方法、系统、存储介质和电子设备  >  正文

基于编辑链的多轮text-to-SQL方法、系统、存储介质和电子设备

  • 国知局
  • 2024-07-31 23:20:44

本发明涉及智能语音领域,尤其涉及一种基于编辑链的多轮text-to-sql方法、系统、存储介质和电子设备。

背景技术:

1、text-to-sql(text to structured query language,文本到结构化查询语言)是一项语义解析任务,根据给定的数据库模式将自然语言问题翻译成适当的sql查询。这项技术在构建关系数据库的自然语言接口方面至关重要,这减轻了自然语言对话中注释的负担。

2、现有技术通常会使用以下方法来实现text-to-sql:

3、1、rasat+picard;rasat整体是一个transformer序列到序列的架构,增加了关系感知的自注意力机制,从而在能够处理各种关系型结构的同时继承t5模型的预训练参数;picard是一个在自回归解码过程中拒绝非法tokens的解码方法。

4、2、din-sql;其是一种上下文学习方法,基于大模型将text-to-sql问题分解为若干子问题,分别调用大模型api进行求解。

5、3、act-sql;其也是一种上下文学习方法,基于大模型使用模式连接的方法构造思维链,调用大模型api进行求解。

6、在实现本发明过程中,发明人发现相关技术中至少存在如下问题:

7、1、rasat+picard是传统的深度学习方法,由于传统深度学习的局限性,模型本身结构复杂,较难迁移到不同系统;依赖大规模且高质量的数据集进行模型训练和调优;模型训练和调优需要非常多的算力和时间成本。

8、2、din-sql:工作流程较为复杂,需要分多步调用大模型api,时延较长,成本较高;分解问题的思维链设计较难扩展到多轮text-to-sql任务。

9、3、act-sql:模式连接的思维链设计较难扩展到多轮text-to-sql任务。

技术实现思路

1、为了至少解决现有技术中模型结构复杂难以应用到多轮text-to-sql任务的问题。

2、第一方面,本发明实施例提供一种基于编辑链的多轮text-to-sql方法,包括:

3、利用在训练对话数据集中获取的当前轮次sql查询语句以及对应于所述当前轮次的在先sql查询语句,构造当前抽象语法树以及在先抽象语法树;

4、确定所述当前抽象语法树与所述在先抽象语法树之间的差异子节点;

5、利用所述差异子节点构造所述当前抽象语法树以及所述在先抽象语法树之间变换的编辑链;

6、利用所述编辑链对大语言模型进行上下文学习,使学习后的大语言模型用于多轮text-to-sql。

7、第二方面,本发明实施例提供一种基于编辑链的多轮text-to-sql系统,包括:

8、语法树确定模块,用于利用在训练对话数据集中获取的当前轮次sql查询语句以及对应于所述当前轮次的在先sql查询语句,构造当前抽象语法树以及在先抽象语法树;

9、差异子节点确定模块,用于确定所述当前抽象语法树与所述在先抽象语法树之间的差异子节点;

10、编辑链确定模块,用于利用所述差异子节点构造所述当前抽象语法树以及所述在先抽象语法树之间变换的编辑链;

11、学习模块,用于利用所述编辑链对大语言模型进行上下文学习,使学习后的大语言模型用于多轮text-to-sql。

12、第三方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例的基于编辑链的多轮text-to-sql方法的步骤。

13、第四方面,本发明实施例提供一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现本发明任一实施例的基于编辑链的多轮text-to-sql方法的步骤。

14、第五方面,本发明实施例提供一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现本发明任一实施例的基于编辑链的多轮text-to-sql方法的步骤。

15、本发明实施例的有益效果在于:本方法为多轮text-to-sql任务提供了一种新的大模型上下文学习方法,相较于现有技术的深度学习方法,本方法的基于编辑链的上下文学习方法不需要依赖大规模且高质量的数据集进行模型训练微调,节省了大量的算力和时间成本。本方法不需要将多轮text-to-sql任务转化为单轮text-to-sql任务,而且整个过程自动化,不需要具备专家知识的人员进行人工标注,取得了更好的性能表现。

技术特征:

1.一种基于编辑链的多轮text-to-sql方法,包括:

2.根据权利要求1所述的方法,其中,所述利用所述编辑链对大语言模型进行上下文学习包括:

3.根据权利要求2所述的方法,其中,所述将所述编辑链按照编辑规则、python代码以及自然语言的形式确定为所述大语言模型的模型提示词包括:

4.根据权利要求1所述的方法,其中,所述当前轮次sql查询语句的轮次为第i轮次,所述在先sql查询语句的轮次为第i-1轮次。

5.根据权利要求1所述的方法,其中,所述当前轮次sql查询语句的轮次为第i轮次,所述在先sql查询语句的轮次为第j轮次,其中,j<i。

6.根据权利要求1所述的方法,其中,在所述利用所述差异子节点构造所述当前抽象语法树以及所述在先抽象语法树之间变换的编辑链之后,所述方法还包括:去除长度大于预设阈值的编辑链。

7.一种基于编辑链的多轮text-to-sql系统,包括:

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

9.一种计算机程序产品,其在存储介质上嵌入有指令,所述指令实现权利要求1-6中任一项所述方法的步骤。

10.一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述方法的步骤。

技术总结本发明实施例提供一种基于编辑链的多轮text‑to‑SQL方法、系统、存储介质和电子设备。该方法包括:利用在训练对话数据集中获取的当前轮次SQL查询语句以及对应于当前轮次的在先SQL查询语句,构造当前抽象语法树以及在先抽象语法树;确定当前抽象语法树与在先抽象语法树之间的差异子节点;利用差异子节点构造当前抽象语法树以及在先抽象语法树之间变换的编辑链;利用编辑链对大语言模型进行上下文学习,学习后的大语言模型用于多轮text‑to‑SQL。本发明实施例不需要依赖大规模且高质量的数据集进行模型训练微调,节省了大量的算力和时间成本。本方法不需要将多轮text‑to‑SQL任务转化为单轮text‑to‑SQL任务,整个过程自动化,不需要具备专家知识的人员进行人工标注,取得了更好的性能表现。技术研发人员:陈露,俞凯,张晗翀受保护的技术使用者:上海交通大学技术研发日:技术公布日:2024/7/29

本文地址:https://www.jishuxx.com/zhuanli/20240730/197102.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。