CN114896275A - 一种将自然语言文本转为sql语句的方法及*** - Google Patents

一种将自然语言文本转为sql语句的方法及*** Download PDF

Info

Publication number
CN114896275A
CN114896275A CN202210400192.XA CN202210400192A CN114896275A CN 114896275 A CN114896275 A CN 114896275A CN 202210400192 A CN202210400192 A CN 202210400192A CN 114896275 A CN114896275 A CN 114896275A
Authority
CN
China
Prior art keywords
matrix
natural language
input
language text
query
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210400192.XA
Other languages
English (en)
Inventor
周雨
高志民
王星乔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenyang Aircraft Design and Research Institute Aviation Industry of China AVIC
Original Assignee
Shenyang Aircraft Design and Research Institute Aviation Industry of China AVIC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenyang Aircraft Design and Research Institute Aviation Industry of China AVIC filed Critical Shenyang Aircraft Design and Research Institute Aviation Industry of China AVIC
Priority to CN202210400192.XA priority Critical patent/CN114896275A/zh
Publication of CN114896275A publication Critical patent/CN114896275A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • G06F16/24522Translation of natural language queries to structured queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

本申请属于自然语言处理领域,特别涉及一种将自然语言文本转为SQL语句的方法及***。该方法包括:步骤S1、分别获取自然语言文本的数值类数据、关键词以及分词结果,作为主输入;步骤S2、确定所述自然语言文本所属领域,将领域作为附加输入;步骤S3、基于附加输入选择对应的专业知识库,作为外部词典;步骤S4、形成拼接向量,输入到与外部词典关联的词向量矩阵中进行向量编码,获得查询矩阵、键矩阵和值矩阵;步骤S5、将查询矩阵、键矩阵和值矩阵作为注意力因状态,获取查询目标列、聚合操作以及筛选条件;步骤S6、组装为SQL查询语句。本申请通过集成多模块操作处理的策略,提供了可靠抽取匹配和语义分析能力,能够生成高质量的规范化SQL语句。

Description

一种将自然语言文本转为SQL语句的方法及***
技术领域
本申请属于自然语言处理领域,特别涉及一种将自然语言文本转为SQL语句的方法及***。
背景技术
自然语言转SQL(Natural Language to SQL,NL2SQL)是一种将自然语言语句转化为规范化计算机可执行的SQL查询语句的技术,是自然语言结构化任务。在实际生活生产中,例如电商、产品、网购等活动会产生大量的数据,其中大部分的数据会结构化存储在数据库中。有时业务需要或者获取某一数据信息,用户需要使用SQL语句在数据库中进行查询。然而对于非专业人员来说,不会编写SQL语句,不便于获取结果,即便对于计算机从业人员,数据库种类繁多,在不同业务场景下的操作也不同。在此情况下,NL2SQL应用技术应运而生,即可以方便用户操作、便捷的获取信息,又可以帮助企业节省运营和降低繁琐工作。例如某用户的需求:“7月份的考勤数据中员工加班的总时间为多少?”。生成对应的SQL:SELECT SUM加班时间FROM考勤表WHERE月份==‘7月’,转化后的SQL语句在数据库中进行检索,进而得到查询结果。可见,NL2SQL技术应用广泛,具有重大的现实意义。
目前在自然语言转SQL领域的技术中,主流解决方案如下:
1)基于模板和规则的方法。该方法多以统计学理论为基础,使用人工定义的模板,针对用户的输入问题利用设计好的表达式匹配解析映射到相应的SQL语句。
2)基于序列的方法。该方法多利用序列到序列的生成任务,通常是将自然语言转换到SQL语句这一个过程视为“机器翻译”,使用序列生成任务构建编码器-解码器框架,具体过程将自然语言预处理后输入到编码器后,通过解码器得到SQL语句。
对于上述的技术而言,基于模板和规则方法设计正则表达式列举工作量大,容易产生楼匹配或者误匹配问题,不适于嵌套查询并且对于开发人员的专业领域要求较高。基于序列的方法目前多采用简单的编码器-解码器模型,对于嵌套查询的匹配不够完善,不能很好的利用结构特征信息。
发明内容
为了解决上述问题,本申请提供了一种将自然语言文本转为SQL语句的方法及***,利用多模块集成学习的策略提升模型对不同领域查询的适配、利用专业知识库增强模板匹配的能力、模板和语义之间的注意力关注度,进而准确的将自然语言文本转为SQL语句。
本申请第一方面提供了一种将自然语言文本转为SQL语句的方法,主要包括:
步骤S1、分别获取自然语言文本的数值类数据、关键词以及分词结果,作为主输入;
步骤S2、基于专家网络模型确定所述自然语言文本所属领域,将所述领域作为附加输入;
步骤S3、基于所述附加输入选择对应的专业知识库,作为外部词典,基于所述外部词典与所述自然语言文本的关键词进行模板匹配,筛选生成待查询表名、聚合操作、待查询字段信息的中间输入;
步骤S4、基于所述自然语言文本的数值类数据、分词结果,以及所述中间输入形成拼接向量,将所述拼接向量输入到与所述外部词典关联的词向量矩阵中进行向量编码,获得查询矩阵、键矩阵和值矩阵;
步骤S5、将查询矩阵、键矩阵和值矩阵加载至图形处理器GPU中,与查询表格转化的矩阵数据并行计算作为注意力因状态,经过LSTM解码和连接层分类后得到查询目标列、聚合操作以及筛选条件;
步骤S6、将所述查询目标列、聚合操作以及筛选条件组装为SQL查询语句。
优选的是,步骤S1进一步包括:
对语句的数值、时间、日期数据按规则识别提取得到第一输入;
基于由中文语法规则形成的语法树,提取其逻辑节点,形成包含关键词的第二输入;
根据字符编码对自然语句进行分拆分,形成第三输入。
优选的是,步骤S4中,构建所述拼接向量包括在输入文本前加入第一标志CLS,以及在各个关键词之间使用第二标志SEP进行分割。
优选的是,步骤S4之后进一步包括通过多层注意力Attention机制提取词向量特征后,添加卷积CNN全连接层进一步抽象语义化矩阵信息,并以数值的形式存储在内存中。
优选的是,步骤S6中,组装SQL查询语句包括:
将连接符、SELECT列与对应的据和函数、WHERE列与对应的WHERE操作符和WHERE内容填充修正组装为规范化的SQL查询语句并输出。
本申请第二方面提供了一种将自然语言文本转为SQL语句的***,主要包括:
预处理模块,用于分别获取自然语言文本的数值类数据、关键词以及分词结果,作为主输入;
专家模型模块,用于基于专家网络模型确定所述自然语言文本所属领域,将所述领域作为附加输入;
知识库匹配模块,用于基于所述附加输入选择对应的专业知识库,作为外部词典,基于所述外部词典与所述自然语言文本的关键词进行模板匹配,筛选生成待查询表名、聚合操作、待查询字段信息的中间输入;
编码模块,用于基于所述自然语言文本的数值类数据、分词结果,以及所述中间输入形成拼接向量,将所述拼接向量输入到与所述外部词典关联的词向量矩阵中进行向量编码,获得查询矩阵、键矩阵和值矩阵;
解码模块,用于将查询矩阵、键矩阵和值矩阵加载至图形处理器GPU中,与查询表格转化的矩阵数据并行计算作为注意力因状态,经过LSTM解码和连接层分类后得到查询目标列、聚合操作以及筛选条件;
后处理模块,用于将所述查询目标列、聚合操作以及筛选条件组装为SQL查询语句。
优选的是,所述预处理模块包括:
第一输入获取单元,用于对语句的数值、时间、日期数据按规则识别提取得到第一输入;
第二输入获取单元,用于基于由中文语法规则形成的语法树,提取其逻辑节点,形成包含关键词的第二输入;
第三输入获取单元,用于根据字符编码对自然语句进行分拆分,形成第三输入。
优选的是,所述编码模块中,构建所述拼接向量包括在输入文本前加入第一标志CLS,以及在各个关键词之间使用第二标志SEP进行分割。
优选的是,所述编码模块包括通过多层注意力Attention机制提取词向量特征后,添加卷积CNN全连接层进一步抽象语义化矩阵信息,并以数值的形式存储在内存中。
优选的是,所述后处理模块组装SQL查询语句包括:
将连接符、SELECT列与对应的据和函数、WHERE列与对应的WHERE操作符和WHERE内容填充修正组装为规范化的SQL查询语句并输出。
本申请通过集成多模块操作处理的策略,提供了可靠抽取匹配和语义分析能力,能够生成高质量、精准的规范化SQL语句信息。
附图说明
图1是本申请将自然语言文本转为SQL语句的方法的一优选实施例的流程图。
图2是本申请图1所示实施例的年度出勤表示意图。
图3是本申请图1所示实施例的多模块集成策略的自然语言转SQL模型图。
具体实施方式
为使本申请实施的目的、技术方案和优点更加清楚,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施方式是本申请一部分实施方式,而不是全部的实施方式。下面通过参考附图描述的实施方式是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。基于本申请中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。下面结合附图对本申请的实施方式进行详细说明。
本申请第一方面提供了一种将自然语言文本转为SQL语句的方法,主要包括:
步骤S1、分别获取自然语言文本的数值类数据、关键词以及分词结果,作为主输入;
步骤S2、基于专家网络模型确定所述自然语言文本所属领域,将所述领域作为附加输入;
步骤S3、基于所述附加输入选择对应的专业知识库,作为外部词典,基于所述外部词典与所述自然语言文本的关键词进行模板匹配,筛选生成待查询表名、聚合操作、待查询字段信息的中间输入;
步骤S4、基于所述自然语言文本的数值类数据、分词结果,以及所述中间输入形成拼接向量,将所述拼接向量输入到与所述外部词典关联的词向量矩阵中进行向量编码,获得查询矩阵、键矩阵和值矩阵;
步骤S5、将查询矩阵、键矩阵和值矩阵加载至图形处理器GPU中,与查询表格转化的矩阵数据并行计算作为注意力因状态,经过LSTM解码和连接层分类后得到查询目标列、聚合操作以及筛选条件;
步骤S6、将所述查询目标列、聚合操作以及筛选条件组装为SQL查询语句。
本申请步骤S1是对于输入的自然语言文本语句进行操作,对于输入自然语句分别规则规范化、语法树、分词方面进行处理,如下:
(1)对语句的数值、时间、日期等数据按规则识别提取得到第一输入1;
(2)按照中文的语法规则生成一张语法树,基于语法树的逻辑节点识别关键字第二输入2;
(3)根据字符编码算法对自然语句进行分词拆分,得到第三输入3;
(4)将第一输入1、第二输入2、第三输入3并行输入到模型的数据流程中作为总输入,用于编码器编码。
在步骤S2中,接收所述预处理模块的数据结果,其中,第一输入2通过专家网络模型,分类自然语言的所述领域,例如电商、军工、食品等,针对不同领域的初始化不同的领域词向量,形成第四输入4。
之后在步骤S3中,根据领域词向量第四输入4,选取不同的专业知识库作为引入的外部词典,增强识别自然语句的关键字能力,和语法树所生成的第二输入2模板匹配,筛选生成待查询表名、聚合操作、待查询字段等信息作为第五输入5。
在步骤S4中进行编码,首先根据领域词向量第四输入4初始化编码器词典部分的词向量矩阵,不同领域选取不同的初始化规则;其次自然语言文本经过前面所述模块处理后得到多个粒度的第一输入1、第三输入3、第五输入5相结合,其中在输入文本前加入特殊标志token[CLS]并在各个输入之间使用[SEP]进行分割,从而拼接为最终的输入;将最终语句输入至词向量矩阵得到向量编码,经过BERT模型编码器中多层注意力机制与全连接层处理得到查询矩阵、键矩阵和值矩阵并以矩阵数值的形式存储在内存中。
之后在步骤S5中进行解码,将内存中存储的查询矩阵、键矩阵和值矩阵加载至图形处理器GPU中,与查询表格转化的矩阵数据并行计算作为注意力因状态,经过LSTM解码和连接层分类后得到各个模块子句的结果。
最后,根据语法树文法规则解析每个子句,抽取每个子句的[SEP]对应的操作,将连接符、SELECT列与对应的据和函数、WHERE列与对应的WHERE操作符和WHERE内容填充修正组装为规范化的SQL查询语句并输出。
本申请第二方面提供了一种与上述方法对应的将自然语言文本转为SQL语句的***,主要包括:
预处理模块,用于分别获取自然语言文本的数值类数据、关键词以及分词结果,作为主输入;
专家模型模块,用于基于专家网络模型确定所述自然语言文本所属领域,将所述领域作为附加输入;
知识库匹配模块,用于基于所述附加输入选择对应的专业知识库,作为外部词典,基于所述外部词典与所述自然语言文本的关键词进行模板匹配,筛选生成待查询表名、聚合操作、待查询字段信息的中间输入;
编码模块,用于基于所述自然语言文本的数值类数据、分词结果,以及所述中间输入形成拼接向量,将所述拼接向量输入到与所述外部词典关联的词向量矩阵中进行向量编码,获得查询矩阵、键矩阵和值矩阵;
解码模块,用于将查询矩阵、键矩阵和值矩阵加载至图形处理器GPU中,与查询表格转化的矩阵数据并行计算作为注意力因状态,经过LSTM解码和连接层分类后得到查询目标列、聚合操作以及筛选条件;
后处理模块,用于将所述查询目标列、聚合操作以及筛选条件组装为SQL查询语句。
在一些可选实施方式中,所述预处理模块包括:
第一输入获取单元,用于对语句的数值、时间、日期数据按规则识别提取得到第一输入;
第二输入获取单元,用于基于由中文语法规则形成的语法树,提取其逻辑节点,形成包含关键词的第二输入;
第三输入获取单元,用于根据字符编码对自然语句进行分拆分,形成第三输入。
在一些可选实施方式中,所述编码模块中,构建所述拼接向量包括在输入文本前加入第一标志CLS,以及在各个关键词之间使用第二标志SEP进行分割。
在一些可选实施方式中,所述编码模块包括通过多层注意力Attention机制提取词向量特征后,添加卷积CNN全连接层进一步抽象语义化矩阵信息,并以数值的形式存储在内存中。
在一些可选实施方式中,所述后处理模块组装SQL查询语句包括:
将连接符、SELECT列与对应的据和函数、WHERE列与对应的WHERE操作符和WHERE内容填充修正组装为规范化的SQL查询语句并输出。
以下给出具体实施例。本实施例中,以对问句“21年采购部的工作时长是多少啊”为例来说明对自然语言文本进行处理的流程,此外,本实施例所采用的数据库为SQL数据库,其中存在年度出勤表的表头列名依次为“年份,部门名称,工作时长”,该年度出勤表的示意图如图2所示。
此外,本实施例中,多模块集成策略的自然语言转SQL模型可在单台计算机实现,该方法的各个模块通过编程软件转化为可执行的模型模块并持久化加载在内存中,程序自动顺序执行多模块模型从而实现在宏观上端到端的输入自然语言文本得到规范化的SQL查询语句。
图3是本申请实施例中自然语言转SQL语句的方法的流程图。
预处理模块(对应于步骤S1),对自然语言文本进行多步处理,便于后续步骤对自然语句语义的理解和挖掘。
1)对语句的数值、时间、日期等数据按规则识别处理得到输入1,例如将“21年”规范为“2021年”等与数据库表中一致的表达方式;
2)按照中文的语法规则生成一张语法树,基于语法树的逻辑节点识别关键字输入2,根据名词、形容词、副词等词性语法树标记识别出名词,例如“采购部、工作时长”等,副词“2021年”等;
3)根据字符编码算法对自然语句进行分词拆分得到输入3,字符编码在自然语言处理应用中的提出是为了解决未登录词问题,应用广泛,例如“2,1,年,采,购,部,的,工,作,时,长,是,多,少,啊”。
通过上述预处理的输入结果,得到输入1、输入2、输入3作为后续模块的数据流输入。
专家模型模块(对应于步骤S2)接收所述预处理模块的数据结果,输入2通过专家网络模型,分类自然语言的所述领域,属于“常规”领域,即默认初始化领域词向量作为输入4。
知识库匹配模块(对应于步骤S3)接收所述专家模型模块和所述预处理模块的数据结果,根据领域词向量输入4,选取“常规”领域的外部词典进行加载,通过字符串匹配算法与语法树生成的输入2作模板匹配,筛选生成名词“、采购部、工作时长”输入5。
编码器模块(对应于步骤S4)接收所述预处理模块、专家模型模块知识库匹配模块的数据结果,首先根据领域词向量输入4初始化编码器词典部分的词向量矩阵,不同领域选取不同的初始化规则;其次自然语言文本经过前面所述模块处理后得到多个粒度的输入1、输入3、输入5相结合,其中在输入文本前加入特殊标志token[CLS]并在各个输入之间使用[SEP]进行分割,其中特殊字符[CLS]和[SEP]用于在训练时提取各个子句的语义,从而预测每个子句的操作方式,最终拼接的输入为:“[CLS]2,1,年,采,购,部,的,工,作,时,长,是,多,少,啊,[SEP],采,购,部,[SEP],加,班,时,长,[SEP],2,0,2,1,年”。将上述拼接输入到编码器BERT的词向量4中进行词向量编码,经过多层注意力Attention机制提取特征后,添加卷积CNN进一步抽象语义化矩阵信息以数值的形式存储在内存中。
解码器模块(对应于步骤S5)接收所述编码器模块的数据结果,将内存中存储的查询矩阵、键矩阵和值矩阵加载至图形处理器GPU中,与查询表格转化的矩阵数据并行计算作为注意力因状态,经过LSTM解码和连接层分类后得到各个模块子句的结果,对[CLS]和[SEP]经过分类层进行分类操作分别预测,分成conds,sel,agg三个部分,其中sel是查询目标列,其值是表格中对应列的序号;agg的值是聚合操作编号,可能出现的聚合操作有[“”,“MAX”,“MIN”,“COUNT”,“SUM”,“AVG”]共6种;conds是筛选条件,可能的操作有[“=”,“>”,“<”,“OP”]。
数据后处理模块(对应于步骤S6)接收所述解码器模块的数据结果,根据语法树文法规则解析每个子句,抽取每个子句的[SEP]对应的操作,将连接符、SELECT列与对应的据和函数、WHERE列与对应的WHERE操作符和WHERE内容填充修正组装为规范化的SQL查询语句并输出,实施例最后解析的到最终的SQL语句结果,“SELECT工作时长FROM年度考勤表WHERE年份==‘2021’AND部门==‘采购部’”。
与现有技术相比,本申请设计了一种基于多模块集成策略的自然语言转SQL方法及模型,有益效果如下:
1.搭建了一套基于多模块集成策略的自然语言转SQL***的模型框架,自顶向下的拆解为多个模块,提出了新颖的处理模型;
2.提出利用专家模型初始化词向量用以提升模型的准确性,使用语法树结构和引入知识库模型匹配输入的语句信息,不依赖复杂的匹配规则模板,操作简单;
3.对BERT的编码结果使用语法树文法规则和LSTM解析最终SQL查询语句的连接符、SELECT列以及对应的聚合函数和WHERE列与对应的WHERE操作符,提成抽取的准确度;
通过集成多模块操作处理的策略,提供了可靠抽取匹配和语义分析能力,同时生成高质量、精准的规范化SQL语句信息。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种将自然语言文本转为SQL语句的方法,其特征在于,包括:
步骤S1、分别获取自然语言文本的数值类数据、关键词以及分词结果,作为主输入;
步骤S2、基于专家网络模型确定所述自然语言文本所属领域,将所述领域作为附加输入;
步骤S3、基于所述附加输入选择对应的专业知识库,作为外部词典,基于所述外部词典与所述自然语言文本的关键词进行模板匹配,筛选生成待查询表名、聚合操作、待查询字段信息的中间输入;
步骤S4、基于所述自然语言文本的数值类数据、分词结果,以及所述中间输入形成拼接向量,将所述拼接向量输入到与所述外部词典关联的词向量矩阵中进行向量编码,获得查询矩阵、键矩阵和值矩阵;
步骤S5、将查询矩阵、键矩阵和值矩阵加载至图形处理器GPU中,与查询表格转化的矩阵数据并行计算作为注意力因状态,经过LSTM解码和连接层分类后得到查询目标列、聚合操作以及筛选条件;
步骤S6、将所述查询目标列、聚合操作以及筛选条件组装为SQL查询语句。
2.如权利要求1所述的将自然语言文本转为SQL语句的方法,其特征在于,步骤S1进一步包括:
对语句的数值、时间、日期数据按规则识别提取得到第一输入;
基于由中文语法规则形成的语法树,提取其逻辑节点,形成包含关键词的第二输入;
根据字符编码对自然语句进行分拆分,形成第三输入。
3.如权利要求1所述的将自然语言文本转为SQL语句的方法,其特征在于,步骤S4中,构建所述拼接向量包括在输入文本前加入第一标志CLS,以及在各个关键词之间使用第二标志SEP进行分割。
4.如权利要求1所述的将自然语言文本转为SQL语句的方法,其特征在于,步骤S4之后进一步包括通过多层注意力Attention机制提取词向量特征后,添加卷积CNN全连接层进一步抽象语义化矩阵信息,并以数值的形式存储在内存中。
5.如权利要求1所述的将自然语言文本转为SQL语句的方法,其特征在于,步骤S6中,组装SQL查询语句包括:
将连接符、SELECT列与对应的据和函数、WHERE列与对应的WHERE操作符和WHERE内容填充修正组装为规范化的SQL查询语句并输出。
6.一种将自然语言文本转为SQL语句的***,其特征在于,包括:
预处理模块,用于分别获取自然语言文本的数值类数据、关键词以及分词结果,作为主输入;
专家模型模块,用于基于专家网络模型确定所述自然语言文本所属领域,将所述领域作为附加输入;
知识库匹配模块,用于基于所述附加输入选择对应的专业知识库,作为外部词典,基于所述外部词典与所述自然语言文本的关键词进行模板匹配,筛选生成待查询表名、聚合操作、待查询字段信息的中间输入;
编码模块,用于基于所述自然语言文本的数值类数据、分词结果,以及所述中间输入形成拼接向量,将所述拼接向量输入到与所述外部词典关联的词向量矩阵中进行向量编码,获得查询矩阵、键矩阵和值矩阵;
解码模块,用于将查询矩阵、键矩阵和值矩阵加载至图形处理器GPU中,与查询表格转化的矩阵数据并行计算作为注意力因状态,经过LSTM解码和连接层分类后得到查询目标列、聚合操作以及筛选条件;
后处理模块,用于将所述查询目标列、聚合操作以及筛选条件组装为SQL查询语句。
7.如权利要求6所述的将自然语言文本转为SQL语句的***,其特征在于,所述预处理模块包括:
第一输入获取单元,用于对语句的数值、时间、日期数据按规则识别提取得到第一输入;
第二输入获取单元,用于基于由中文语法规则形成的语法树,提取其逻辑节点,形成包含关键词的第二输入;
第三输入获取单元,用于根据字符编码对自然语句进行分拆分,形成第三输入。
8.如权利要求6所述的将自然语言文本转为SQL语句的***,其特征在于,所述编码模块中,构建所述拼接向量包括在输入文本前加入第一标志CLS,以及在各个关键词之间使用第二标志SEP进行分割。
9.如权利要求6所述的将自然语言文本转为SQL语句的***,其特征在于,所述编码模块包括通过多层注意力Attention机制提取词向量特征后,添加卷积CNN全连接层进一步抽象语义化矩阵信息,并以数值的形式存储在内存中。
10.如权利要求6所述的将自然语言文本转为SQL语句的***,其特征在于,所述后处理模块组装SQL查询语句包括:
将连接符、SELECT列与对应的据和函数、WHERE列与对应的WHERE操作符和WHERE内容填充修正组装为规范化的SQL查询语句并输出。
CN202210400192.XA 2022-04-15 2022-04-15 一种将自然语言文本转为sql语句的方法及*** Pending CN114896275A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210400192.XA CN114896275A (zh) 2022-04-15 2022-04-15 一种将自然语言文本转为sql语句的方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210400192.XA CN114896275A (zh) 2022-04-15 2022-04-15 一种将自然语言文本转为sql语句的方法及***

Publications (1)

Publication Number Publication Date
CN114896275A true CN114896275A (zh) 2022-08-12

Family

ID=82718139

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210400192.XA Pending CN114896275A (zh) 2022-04-15 2022-04-15 一种将自然语言文本转为sql语句的方法及***

Country Status (1)

Country Link
CN (1) CN114896275A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115408506A (zh) * 2022-09-15 2022-11-29 云南大学 联合语义解析和语义成分匹配的nl2sql的方法
CN116737759A (zh) * 2023-08-14 2023-09-12 北京理工大学 一种基于关系感知注意力的中文查询生成sql语句方法
CN116860957A (zh) * 2023-07-25 2023-10-10 广州探迹科技有限公司 一种基于大语言模型的企业筛选方法、装置及介质
CN116910086A (zh) * 2023-09-13 2023-10-20 北京理工大学 一种基于自注意力句法感知的数据库查询方法和***
CN116992888A (zh) * 2023-09-25 2023-11-03 天津华来科技股份有限公司 基于自然语义的数据分析方法及***
CN117992068A (zh) * 2024-04-02 2024-05-07 天津南大通用数据技术股份有限公司 Lstm和trm组合的智能数据库语法解析方法
CN118036754A (zh) * 2024-04-12 2024-05-14 清华大学 基于键值矩阵缓存的模型推理方法及装置、介质
CN118093795A (zh) * 2024-04-28 2024-05-28 浪潮通用软件有限公司 一种面向aigc交互分析的数据准备方法、***、设备及介质

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115408506A (zh) * 2022-09-15 2022-11-29 云南大学 联合语义解析和语义成分匹配的nl2sql的方法
CN115408506B (zh) * 2022-09-15 2023-09-12 云南大学 联合语义解析和语义成分匹配的nl2sql的方法
CN116860957A (zh) * 2023-07-25 2023-10-10 广州探迹科技有限公司 一种基于大语言模型的企业筛选方法、装置及介质
CN116860957B (zh) * 2023-07-25 2024-04-16 广州探迹科技有限公司 一种基于大语言模型的企业筛选方法、装置及介质
CN116737759A (zh) * 2023-08-14 2023-09-12 北京理工大学 一种基于关系感知注意力的中文查询生成sql语句方法
CN116737759B (zh) * 2023-08-14 2023-12-08 北京理工大学 一种基于关系感知注意力的中文查询生成sql语句方法
CN116910086B (zh) * 2023-09-13 2023-12-01 北京理工大学 一种基于自注意力句法感知的数据库查询方法和***
CN116910086A (zh) * 2023-09-13 2023-10-20 北京理工大学 一种基于自注意力句法感知的数据库查询方法和***
CN116992888A (zh) * 2023-09-25 2023-11-03 天津华来科技股份有限公司 基于自然语义的数据分析方法及***
CN117992068A (zh) * 2024-04-02 2024-05-07 天津南大通用数据技术股份有限公司 Lstm和trm组合的智能数据库语法解析方法
CN118036754A (zh) * 2024-04-12 2024-05-14 清华大学 基于键值矩阵缓存的模型推理方法及装置、介质
CN118093795A (zh) * 2024-04-28 2024-05-28 浪潮通用软件有限公司 一种面向aigc交互分析的数据准备方法、***、设备及介质
CN118093795B (zh) * 2024-04-28 2024-07-05 浪潮通用软件有限公司 一种面向aigc交互分析的数据准备方法、***、设备及介质

Similar Documents

Publication Publication Date Title
CN114896275A (zh) 一种将自然语言文本转为sql语句的方法及***
CN111813802B (zh) 一种基于自然语言生成结构化查询语句的方法
US11989519B2 (en) Applied artificial intelligence technology for using natural language processing and concept expression templates to train a natural language generation system
CN104657439B (zh) 用于自然语言精准检索的结构化查询语句生成***及方法
CN104657440B (zh) 结构化查询语句生成***及方法
CN104361127B (zh) 基于领域本体和模板逻辑的多语种问答接口快速构成方法
US7685082B1 (en) System and method for identifying, prioritizing and encapsulating errors in accounting data
CN113204649A (zh) 基于实体关系联合抽取的法律知识图谱构建方法及设备
CN112084381A (zh) 一种事件抽取方法、***、存储介质以及设备
CN111274267A (zh) 一种数据库查询方法、装置及计算机可读取存储介质
CN114185769A (zh) 基于双向长短期记忆神经网络的软件缺陷预测方法及终端
CN112100401B (zh) 面向科技服务的知识图谱构建方法、装置、设备及存储介质
CN111414380A (zh) 一种中文数据库sql语句生成方法、设备及存储介质
CN113032418B (zh) 一种基于树状模型的复杂自然语言查询转sql方法
CN114547072A (zh) 自然语言查询转换sql方法、***、设备及存储介质
CN111104423A (zh) Sql语句生成方法、装置、电子设备和存储介质
CN114625748A (zh) Sql查询语句的生成方法、装置、电子设备及可读存储介质
CN116108175A (zh) 基于语义解析和数据构造的语言转化方法及***
CN115470232A (zh) 模型训练和数据查询方法、装置、电子设备和存储介质
CN111400449A (zh) 一种正则表达式抽取方法及装置
CN115408506B (zh) 联合语义解析和语义成分匹配的nl2sql的方法
CN117473054A (zh) 基于知识图谱的通用智能问答方法及装置
CN116166789A (zh) 一种方法命名精准推荐和审查方法
CN116360794A (zh) 数据库语言解析方法、装置、计算机设备及存储介质
CN114840657A (zh) 一种基于混合模式的api知识图谱自适应构建及智能问答方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination