CN117891458A - 一种sql语句生成方法、装置、设备及存储介质 - Google Patents

一种sql语句生成方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117891458A
CN117891458A CN202311577509.8A CN202311577509A CN117891458A CN 117891458 A CN117891458 A CN 117891458A CN 202311577509 A CN202311577509 A CN 202311577509A CN 117891458 A CN117891458 A CN 117891458A
Authority
CN
China
Prior art keywords
sql
statement
sentence
generation model
model
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
CN202311577509.8A
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.)
Transwarp Technology Shanghai Co Ltd
Original Assignee
Transwarp Technology Shanghai Co Ltd
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 Transwarp Technology Shanghai Co Ltd filed Critical Transwarp Technology Shanghai Co Ltd
Priority to CN202311577509.8A priority Critical patent/CN117891458A/zh
Publication of CN117891458A publication Critical patent/CN117891458A/zh
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种SQL语句生成方法、装置、设备及存储介质。该方法包括:获取自然语言查询语句;将所述自然语言查询语句输入预先训练好的目标SQL语句生成模型,生成目标SQL语句,所述目标SQL语句生成模型具有语法自检功能和逻辑自检功能。本发明实施例适用场景广泛,生成的SQL语句准确率高,符合语法和逻辑规范,可以极大的降低二次修改SQL语句的工作量,解决了目前SQL语句生成技术局限于特定场景、开发成本高、生成语句准确率较低等问题。

Description

一种SQL语句生成方法、装置、设备及存储介质
技术领域
本发明涉及数据处理技术领域,尤其涉及一种SQL语句生成方法、装置、设备及存储介质。
背景技术
随着大模型(Large Model,LM)技术的快速发展,大语言大模型(Large LanguageModels,LLM)的性能不断得到提升,在文本生成领域展现出了良好用户体验,可以根据用户提问,生成逻辑通顺、内容多样的回答。然而,当前对NL2SQL(将自然语言NL转化为SQL语句)这一垂直专业领域的研究还不够深入。
目前,生成SQL语句的方法主要有以下几种:
1、模型驱动的SQL生成。这种方法采用形式化建模语言建立严格的需求和设计模型,再通过基于编译规则的SQL生成方法,从形式语言模型等语义转换到SQL语句,以保证所生成的SQL语句和需求的一致。该方法的主要问题是:模型驱动SQL生成方法成立的前提是需要建立一个形式语言模型,因此需要有理解需求并熟悉形式语言建模的人才来理解自然语言,根据问题需求建立相应的模型。这一步相对困难,且消耗代价高,无法在SQL查询的所有场景中得到大规模推广。
2、基于大模型的SQL生成。这种方法是基于SQL的预训练,获得一个能够理解SQL的大语言模型,基于这样的大语言模型可以利用自然语言的需求描述或其他提示,由其直接生成SQL语句。该方法的主要问题是:目前的SQL大模型是使用和自然语言大模型相同的架构来实现的,但是SQL比起自然语言,具有语法简单、层次结构清晰、语义严格确定、表达不具有二义性的特点,由此导致生成的SQL语句质量不高,容易出现语法和逻辑上的错误。
综上,目前现有的生成SQL技术都有不同程度的缺点,存在着局限于特定场景、开发成本高、生成的SQL语句准确率较低等问题。在如何按使用者意图生成符合语法规范的SQL语句方面尚缺乏有效方法,给NL2SQL的应用落地及普及推广带来了挑战。
发明内容
本发明提供了一种SQL语句生成方法、装置、设备及存储介质,以实现准确生成符合语法和逻辑规范的SQL语句。
根据本发明的一方面,提供了一种SQL语句生成方法,该方法包括:
获取自然语言查询语句;
将所述自然语言查询语句输入预先训练好的目标SQL语句生成模型,生成目标SQL语句,所述目标SQL语句生成模型具有语法自检功能和逻辑自检功能。
可选的,所述目标SQL语句生成模型的训练步骤包括:
构建初始SQL语句生成模型;
基于训练样本和SQL编译器对所述初始SQL语句生成模型进行语法自检训练,得到备用SQL语句生成模型;
基于所述训练样本、工作流图生成模型和所述SQL编译器对所述备用SQL语句生成模型进行逻辑自检训练,得到目标SQL语句生成模型。
可选的,所述基于训练样本和SQL编译器对所述初始SQL语句生成模型进行语法自检训练,得到备用SQL语句生成模型,包括:
获取训练样本,所述训练样本包含训练查询语句和对应的标准SQL语句;
运用所述初始SQL语句生成模型和SQL编译器生成所述训练查询语句对应的初始SQL语句,所述初始SQL语句通过所述SQL编译器的语法规范检查;
根据所述标准SQL语句和所述初始SQL语句,获得训练损失函数;
通过所述训练损失函数对所述初始SQL语句生成模型进行反向传播,得到备用SQL语句生成模型。
可选的,所述运用所述初始SQL语句生成模型和SQL编译器生成所述训练查询语句对应的初始SQL语句,所述初始SQL语句通过所述SQL编译器的语法规范检查,包括:
将所述训练查询语句输入所述初始SQL语句生成模型,得到候选SQL语句;
运用SQL编译器对所述候选SQL语句进行编译,若所述候选SQL语句未通过所述SQL编译器编译,则将编译结果反馈至所述初始SQL语句生成模型,并重新生成新的候选SQL语句,直至通过所述SQL编译器编译;
将通过所述SQL编译器编译的候选SQL语句作为初始SQL语句。
可选的,所述基于所述训练样本、工作流图生成模型和所述SQL编译器对所述备用SQL语句生成模型进行逻辑自检训练,得到目标SQL语句生成模型,包括:
获取包含训练查询语句的训练样本;
运用工作流图生成模型生成所述训练查询语句对应的查询语句工作流图;
利用所述备用SQL语句生成模型生成所述训练查询语句对应的备用SQL语句,并运用所述SQL编译器生成所述备用SQL语句对应的SQL工作流图;
根据所述查询语句工作流图和所述SQL工作流图,获得图对比损失函数;
通过所述图对比损失函数对所述备用SQL语句生成模型进行反向传播,得到目标SQL语句生成模型。
可选的,所述运用工作流图生成模型包括问题步骤分解模型、步骤图表生成模型和工作流图生成子模型;
相应的,所述运用工作流图生成模型生成所述训练查询语句对应的查询语句工作流图,包括:
采用问题步骤分解模型对所述训练查询语句进行步骤分解,得到问题解决步骤集;
采用步骤图表生成模型生成所述问题解决步骤集对应的问题解决结构图;
采用工作流图生成子模型生成所述问题解决结构图对应的查询语句工作流图。
可选的,所述根据所述查询语句工作流图和所述SQL工作流图,获得图对比损失函数,包括:
计算所述查询语句工作流图和所述SQL工作流图的图相似度,所述图相似度包括结构相似度和属性相似度;
根据所述图相似度,结合给定的损失函数表达式,确定图对比损失函数。
可选的,在生成目标SQL语句之后,还包括:
运用SQL编译器和/或工作流图生成模型对所述目标SQL语句进行验证,若所述目标SQL语句验证失败,则将验证结果返回至所述目标SQL语句生成模型,并重新生成新的目标SQL语句,直至验证通过。
可选的,所述运用SQL编译器和/或工作流图生成模型对所述目标SQL语句进行验证,包括:
运用SQL编译器对所述目标SQL语句进行语法验证,和/或,运用工作流图生成模型对所述目标SQL语句进行逻辑验证;
若所述目标SQL语句未通过语法验证或逻辑验证,则确定所述目标SQL语句验证失败;否则,
确定所述目标SQL语句验证通过。
根据本发明的另一方面,提供了一种SQL语句生成装置,该装置包括:
语句获取模块,用于获取自然语言查询语句;
语句生成模块,用于将所述自然语言查询语句输入预先训练好的目标SQL语句生成模型,生成目标SQL语句,所述目标SQL语句生成模型具有语法自检功能和逻辑自检功能。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的SQL语句生成方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的SQL语句生成方法。
本发明实施例的技术方案,通过将获取到的自然语言查询语句输入预先训练好的目标SQL语句生成模型,生成目标SQL语句,其中,目标SQL语句生成模型具有语法自检功能和逻辑自检功能,解决了目前SQL语句生成技术局限于特定场景、开发成本高、生成语句准确率较低等问题,本发明实施例适用场景广泛,生成的SQL语句准确率高,符合语法和逻辑规范,可以极大的降低二次修改SQL语句的工作量。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种SQL语句生成方法的流程图;
图2是本发明实施例一提供的一种SQL语句生成方法中目标SQL语句生成模型的训练方法流程图;
图3是本发明实施例一提供的一种SQL语句生成方法中初始SQL语句生成模型到备用SQL语句生成模型的训练过程示意图;
图4是本发明实施例一提供的一种SQL语句生成方法中备用SQL语句生成模型到目标SQL语句生成模型的训练过程示意图;
图5是本发明实施例一提供的一种SQL语句生成方法中查询语句工作流图生成的第一效果示意图;
图6是本发明实施例一提供的一种SQL语句生成方法中查询语句工作流图生成的第二效果示意图;
图7是本发明实施例一提供的一种SQL语句生成方法中查询语句工作流图生成的第三效果示意图;
图8是本发明实施例一提供的一种SQL语句生成方法中SQL工作流图生成的第一效果示意图;
图9是本发明实施例一提供的一种SQL语句生成方法中查询语句工作流图生成的第四效果示意图;
图10是本发明实施例一提供的一种SQL语句生成方法中SQL工作流图生成的第二效果示意图;
图11是根据本发明实施例二提供的一种SQL语句生成装置的结构示意图;
图12是实现本发明实施例的SQL语句生成方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1为本发明实施例一提供了一种SQL语句生成方法的流程图,本实施例可适用于生成自然语言查询语句对应的SQL语句的情况,该方法可以由SQL语句生成装置来执行,该SQL语句生成装置可以采用硬件和/或软件的形式实现,该SQL语句生成装置可配置于计算机设备中。如图1所示,该方法包括:
S110、获取自然语言查询语句。
其中,自然语言查询语句可以理解为由自然语言构成的问题,如,在证券平台上由用户提问的问题:2022年每个交易日的上证指数是多少?“2022年每个交易日的上证指数是多少”就可以作为本实施例中的自然语言查询语句。
S120、将自然语言查询语句输入预先训练好的目标SQL语句生成模型,生成目标SQL语句,目标SQL语句生成模型具有语法自检功能和逻辑自检功能。
在本实施例中,当获取到自然语言查询语句时,可以将自然语言查询语句作为输入数据输入目标SQL语句生成模型中,输出目标SQL语句,目标SQL语句即为自然语言查询语句对应语义的SQL查询语句。在实际应用中,目标SQL语句生成模型可以预先训练得到,目标SQL语句生成模型可以具有语法自检功能和逻辑自检功能,即由目标SQL语句生成模型生成的SQL语句符合SQL语法规范和逻辑规范。
可选的,图2是本发明实施例提供的一种SQL语句生成方法中目标SQL语句生成模型的训练方法流程图。如图2所示,本实施例提供的SQL语句生成方法中目标SQL语句生成模型的训练步骤可以包括:
A1、构建初始SQL语句生成模型。
在本实施例中,可以采用任意模型构建方法构建初始SQL语句生成模型,初始SQL语句生成模型具有生成自然语言查询语句对应SQL语句的功能。可以理解的是,相对于本实施例最终训练得到的目标SQL语句生成模型,初始SQL语句生成模型生成的SQL语句的准确率较低。
在实际应用中,可以基于LLM的NL2SQL模型学习遵循大模型通用的学习范式,经过Mask学习、指令学习、微调学习等获得初始SQL语句生成模型。Mask学习阶段可以主要使用包含SQL语句的文本语料,指令学习与微调学习可以主要使用类似{Query-SQL}形式的问答对语料,其中,“Query”是用户所需要查询的问题,“SQL”是与“Query”相对应的查询语句。经过训练,NL2SQL模型可以具备根据Query问题生成相关SQL语句的能力,得到的初始SQL语句生成模型可以记为NL2SQL-llm_init模型。
A2、基于训练样本和SQL编译器对初始SQL语句生成模型进行语法自检训练,得到备用SQL语句生成模型。
在本实施例中,可以通过SQL编译器检测初始SQL语句生成模型生成的SQL语句是否符合语法规范,并且将检测到的结果信息返回给初始SQL语句生成模型,使初始SQL语句生成模型进行增强学习,以此来提升初始SQL语句生成模型生成正确语法的SQL语句的能力。经过增强学习后,可以得到备用SQL语句生成模型,可以记为NL2SQL-llm_rltf模型。
进一步的,图3是本发明实施例提供的SQL语句生成方法中初始SQL语句生成模型到备用SQL语句生成模型的训练过程示意图。如图3所示,A2中由初始SQL语句生成模型到备用SQL语句生成模型的训练过程可以包括以下步骤:
A21、获取训练样本,训练样本包含训练查询语句和对应的标准SQL语句。
具体的,训练备用SQL语句生成模型的训练样本可以和构建初始SQL语句生成模型时所用的样本集一样,如包含训练查询语句和对应的标准SQL语句,即{Query-SQL}形式的问答对语料,“Query”可以表示训练查询语句,也就是用户所需要查询的问题,“SQL”表示与“Query”对应的标准SQL语句。
A22、运用初始SQL语句生成模型和SQL编译器生成训练查询语句对应的初始SQL语句,初始SQL语句通过SQL编译器的语法规范检查。
具体的,可以将SQL编译器作为初始SQL语句生成模型生成SQL语句结果的评估器,SQL编译器对初始SQL语句生成模型生成的SQL语句进行语法评估,使初始SQL语句生成模型生成的初始SQL语句可以通过语法规范检查,从而达到提高SQL语句生成准确率的效果。
在一个实施例中,A22可以通过以下方式实现:
将训练查询语句输入初始SQL语句生成模型,得到候选SQL语句;运用SQL编译器对候选SQL语句进行编译,若候选SQL语句未通过SQL编译器编译,则将编译结果反馈至初始SQL语句生成模型,并重新生成新的候选SQL语句,直至通过SQL编译器编译;将通过SQL编译器编译的候选SQL语句作为初始SQL语句。
此步骤可以理解为训练过程中的前向计算过程,其中,候选SQL语句可以理解为还未确定语法正确性的SQL语句。当初始SQL语句生成模型生成的候选SQL语句出现语法错误时,初始SQL语句生成模型可以接收SQL编译器的错误反馈信息,根据反馈信息重新生成候选SQL语句,直至新生成的候选SQL语句通过SQL编译器编译时,将其作为初始SQL语句输出。本实施例可以选择Calcite作为SQL编译器。
A23、根据标准SQL语句和初始SQL语句,获得训练损失函数。
具体的,由于标准SQL语句是根据实际需求进行标注的,初始SQL语句是由未训练好的SQL语句生成模型转化输出的,标准SQL语句与初始SQL语句必然会存在误差,可以计算标准SQL语句和初始SQL语句之间的损失,形成训练损失函数,以实现对初始SQL语句生成模型的训练调参。
A24、通过训练损失函数对初始SQL语句生成模型进行反向传播,得到备用SQL语句生成模型。
具体的,在得到训练损失函数后,可以通过训练损失函数对初始SQL语句生成模型进行反向传播,不断调整模型参数,最终得到备用SQL语句生成模型。
A3、基于训练样本、工作流图生成模型和SQL编译器对备用SQL语句生成模型进行逻辑自检训练,得到目标SQL语句生成模型。
在本实施例中,可以通过工作流图生成模型和SQL编译器检测备用SQL语句生成模型生成的SQL语句是否逻辑自洽,并且将检测到的结果信息返回给备用SQL语句生成模型,使备用SQL语句生成模型进行增强学习,以此来提升备用SQL语句生成模型生成逻辑自洽的SQL语句的能力。经过增强学习后,可以得到目标SQL语句生成模型,可以记为NL2SQL-llm模型。
进一步的,图4是本发明实施例提供的SQL语句生成方法中备用SQL语句生成模型到目标SQL语句生成模型的训练过程示意图。如图4所示,A3中由备用SQL语句生成模型到目标SQL语句生成模型的训练过程可以包括以下步骤:
A31、获取包含训练查询语句的训练样本。
具体的,训练备用SQL语句生成模型的训练样本可以和构建初始SQL语句生成模型时所用的样本集一样,如{Query-SQL}形式的问答对语料,“Query”可以表示训练查询语句,也就是用户所需要查询的问题,“SQL”表示与“Query”对应的标准SQL语句。
A32、运用工作流图生成模型生成训练查询语句对应的查询语句工作流图。
具体的,可以预先训练能生成训练查询语句对应的查询语句工作流图的工作流图生成模型,此模型的训练不是本发明的重点,在此不再赘述。另外,也可以使用现有的工作流图生成模型,生成训练查询语句对应的查询语句工作流图,可以记为Query-workflow-DAG。
在一个实施例中,运用工作流图生成模型可以包括问题步骤分解模型、步骤图表生成模型和工作流图生成子模型。
相应的,A32中查询语句工作流图的生成操作可以通过以下方式实现:
采用问题步骤分解模型对训练查询语句进行步骤分解,得到问题解决步骤集;采用步骤图表生成模型生成问题解决步骤集对应的问题解决结构图;采用工作流图生成子模型生成问题解决结构图对应的查询语句工作流图。
在本实施例中,问题步骤分解模型(solve steps decomposition LLM model)可以使用现有大模型,如GPT-4、Claude等。也可以自研大模型,使用{Query-COT}形式的语料对大模型进行训练,“Query”可以表示训练查询语句,也就是用户所需要查询的问题,“COT”可以表示“Query”对应的问题解决步骤,训练后的模型可具有根据问题生成对应的解题思维链的能力。模型完成学习后,将训练查询语句输入问题步骤分解模型模型,可以输出该训练查询语句的问题解决步骤集,可以记为Solve-COTs。
步骤图表生成模型可以包括语义分析算法,使用语义分析算法解析问题步骤分解模型的输出结果Solve-COTs,解析出Solve-COTs每一步骤中的实体以及实体之间的处理操作,可以简记为[Xi->OPi->Yi]},可以表示操作OPi的输入为Xi、输出为Yi,i可以表示操作步骤的序号。需要注意的是,OP之间的输出与输入可能是同一对象。将同一对象的三元组链接在一起,则可以组成了一个图结构,即为步骤图表生成模型输出的问题解决结构图,可以记为COT-Graph。
工作流图生成子模型可以按Solve-COTs步骤的时间顺序,将COT-Graph从左至右展开,即为如何解决训练查询语句Query的工作流图workflow-DAG。具体展开方法可以为:选择只有出度没有入度的顶点作为起点,并按时间顺序分stage排列,在同一stage的起点即为可同时并行;以已选择起点开始,按OP操作的时间顺序,沿深度展开,对于可同时并行的操作,则放入同一stage。COT-Graph展开工作结束后,即得到训练查询语句对应的查询语句工作流图,可以记为Query-workflow-DAG。
在一个具体的示例中,图5是本发明实施例提供的SQL语句生成方法中查询语句工作流图生成的第一效果示意图;图6是本发明实施例提供的SQL语句生成方法中查询语句工作流图生成的第二效果示意图;图7是本发明实施例提供的SQL语句生成方法中查询语句工作流图生成的第三效果示意图。以查询问题“A地区B类型企业的企业数量及其在近3个月的激励金额总和”为例,问题步骤分解模型输出的问题解决步骤集Solve-COTs为“第一步:使用WHERE子句筛选出A地区B类型企业的记录,使用AND连接条件筛选出B类型企业在近3个月的记录。第二步:使用DATE函数将preplan_ann_date的日期格式化为YYYY-MM-DD格式,并使用ADD_MONTHS函数将3个月加到当前日期上,得到最后一天。第三步:使用SUM函数计算每个记录的s_inc_quantity之和,使用COUNT函数计算A地区B类型企业的记录数量。第四步:使用GROUP BY子句将计算结果按照公司数量分组,并使用SUM函数计算每个公司的总激励金额之和。”使用步骤图表生成模型中的语义分析算法解析Solve-COTs,解析出Solve-COTs每一步骤中的实体以及实体之间的处理操作,简记为形如图5所示的[Xi->OPi->Yi]三元组。将同一对象的三元组链接在一起,则组成了一个图结构,即为步骤图表生成模型生成的问题解决结构图COT-Graph,如图6所示。工作流图生成子模型按Solve-COTs步骤的时间顺序,将COT-Graph从左至右展开,则生成训练查询语句对应的查询语句工作流图Query-workflow-DAG,如图7所示。
A33、利用备用SQL语句生成模型生成训练查询语句对应的备用SQL语句,并运用SQL编译器生成备用SQL语句对应的SQL工作流图。
具体的,可以将训练查询语句输入备用SQL语句生成模型,得到备用SQL语句。将备用SQL语句输入SQL编译器,可以基于Spark或Flink中使用的SQL解析、逻辑计划、物理计划生成等技术,得到与备用SQL语句对应的SQL工作流图,可以记为SQL-workflow-DAG。
在一个具体的示例中,图8是本发明实施例提供的SQL语句生成方法中SQL工作流图生成的第一效果示意图。以查询问题“A地区B类型企业的企业数量及其在近3个月的激励金额总和”为例,利用备用SQL语句生成模型生成的备用SQL语句为“SELECT COUNT(DISTINCT company_name)AS company_count,SUM(incentive_amount)AS total_incentive_amount FROM enterprises WHERE province='A地区'AND enterprise_type='B类型企业'AND date>=DATE_SUB(CURRENT_DATE(),INTERVAL 3MONTH)”。基于Spark中使用的SQL解析、逻辑计划、物理计划生成技术,可得到与备用SQL语句对应的SQL的DAG工作流图,记为SQL-workflow-DAG,如图8所示。
A34、根据查询语句工作流图和SQL工作流图,获得图对比损失函数。
具体的,由于查询语句工作流图是根据训练查询语句生成的,SQL工作流图是根据未训练好的备用SQL语句生成模型生成的备用SQL语句生成的,查询语句工作流图和SQL工作流图必然会存在误差,可以计算查询语句工作流图和SQL工作流图之间的损失,形成图对比损失函数,以实现对备用SQL语句生成模型的训练调参。
在一个实施例中,A34可以通过以下方式实现:
计算查询语句工作流图和SQL工作流图的图相似度,图相似度包括结构相似度和属性相似度;根据图相似度,结合给定的损失函数表达式,确定图对比损失函数。
在本实施例中,可以主要基于图的结构和属性来计算两个工作流图的图相似度,可以包括子图同构、节点相似度、边相似度等,可使用Graph kernel等算法,确定图对比损失函数。另外,可以以argmin(GraphKernel(G1,G2))为优化函数,持续训练,不断减少Query-workflow-DAG和SQL-workflow-DAG之间的损失。
A35、通过图对比损失函数对备用SQL语句生成模型进行反向传播,得到目标SQL语句生成模型。
具体的,在得到图对比损失函数后,可以通过图对比损失函数对备用SQL语句生成模型进行反向传播,不断调整模型参数,最终得到目标SQL语句生成模型。
在另一个具体的示例中,图9是本发明实施例一提供的一种SQL语句生成方法中查询语句工作流图生成的第四效果示意图,图10是本发明实施例一提供的一种SQL语句生成方法中SQL工作流图生成的第二效果示意图。获取到的自然语言查询语句为“查询2022年上证指数最高的10个交易日”,在目标SQL语句生成模型的处理过程中,生成的Query-workflow-DAG如图9所示,经过SQL编译器Calcite检查通过后的SQL语句为“SELECT date,shanghai_index FROM stock_prices WHERE date>='2022-01-01'AND date<='2022-12-31'ORDER BY shanghai_index DESC LIMIT 10”,生成的SQL-workflow-DAG如图10所示。两张图比较的结果是:相似度高,因此对生成的SQL语句予以采用,使用此SQL语句查询数据库,可以得到2022年上证指数最高的10个交易日。
可选的,本实施例提供的SQL语句生成方法,还可以包括以下步骤:
在生成目标SQL语句之后,运用SQL编译器和/或工作流图生成模型对目标SQL语句进行验证,若目标SQL语句未通过验证,则将验证结果返回至目标SQL语句生成模型,并重新生成新的目标SQL语句,直至验证通过。
在本实施例中,由于目标SQL语句生成模型的训练过程包括语法自检功能和逻辑自检功能的学习训练,因此目标SQL语句生成模型具有语法自检功能和逻辑自检功能。但是,为了更进一步的确保目标SQL语句生成的准确性,可以在目标SQL语句生成模型生成目标SQL语句后,再对生成的目标SQL语句进行语法验证和/或逻辑验证。在实际应用中,可以通过SQL编译器对目标SQL语句进行语法验证,或者通过工作流图生成模型对目标SQL语句进行逻辑验证,或者同时通过SQL编译器和工作流图生成模型对目标SQL语句进行语法和逻辑验证,若验证通过可以结束本次SQL语句的生成操作;若验证失败,则需要重新生成新的目标SQL语句,并再次进行验证,直至验证通过。
在实际应用中,若重点是追求生成SQL语句的速度快、效率高时,也可以不使用SQL编译器和/或工作流图生成模型的验证,直接使用S120生成的目标SQL语句。
进一步的,运用SQL编译器和/或工作流图生成模型对目标SQL语句进行验证的过程可以包括以下具体步骤:
运用SQL编译器对目标SQL语句进行语法验证,和/或,运用工作流图生成模型对目标SQL语句进行逻辑验证;若目标SQL语句未通过语法验证或逻辑验证,则确定目标SQL语句验证失败;否则,确定目标SQL语句验证通过。
在实际应用中,可以使用与训练目标SQL语句生成模型时使用的SQL编译器和工作流图生成模型对目标SQL语句进行验证。
本发明实施例的技术方案,通过将获取到的自然语言查询语句输入预先训练好的目标SQL语句生成模型,生成目标SQL语句,其中,目标SQL语句生成模型具有语法自检功能和逻辑自检功能,解决了目前SQL语句生成技术局限于特定场景、开发成本高、生成语句准确率较低等问题,本发明实施例适用场景广泛,生成的SQL语句准确率高,符合语法和逻辑规范,可以极大的降低二次修改SQL语句的工作量。
实施例二
图11为本发明实施例三提供了一种SQL语句生成装置的结构示意图。如图11所示,该装置包括语句获取模块210和语句生成模块220。
语句获取模块210,用于获取自然语言查询语句。
语句生成模块220,用于将所述自然语言查询语句输入预先训练好的目标SQL语句生成模型,生成目标SQL语句,所述目标SQL语句生成模型具有语法自检功能和逻辑自检功能。
可选的,所述目标SQL语句生成模型的训练步骤包括:
构建初始SQL语句生成模型;
基于训练样本和SQL编译器对所述初始SQL语句生成模型进行语法自检训练,得到备用SQL语句生成模型;
基于所述训练样本、工作流图生成模型和所述SQL编译器对所述备用SQL语句生成模型进行逻辑自检训练,得到目标SQL语句生成模型。
可选的,所述基于训练样本和SQL编译器对所述初始SQL语句生成模型进行语法自检训练,得到备用SQL语句生成模型,包括:
获取训练样本,所述训练样本包含训练查询语句和对应的标准SQL语句;
运用所述初始SQL语句生成模型和SQL编译器生成所述训练查询语句对应的初始SQL语句,所述初始SQL语句通过所述SQL编译器的语法规范检查;
根据所述标准SQL语句和所述初始SQL语句,获得训练损失函数;
通过所述训练损失函数对所述初始SQL语句生成模型进行反向传播,得到备用SQL语句生成模型。
可选的,所述运用所述初始SQL语句生成模型和SQL编译器生成所述训练查询语句对应的初始SQL语句,所述初始SQL语句通过所述SQL编译器的语法规范检查,包括:
将所述训练查询语句输入所述初始SQL语句生成模型,得到候选SQL语句;
运用SQL编译器对所述候选SQL语句进行编译,若所述候选SQL语句未通过所述SQL编译器编译,则将编译结果反馈至所述初始SQL语句生成模型,并重新生成新的候选SQL语句,直至通过所述SQL编译器编译;
将通过所述SQL编译器编译的候选SQL语句作为初始SQL语句。
可选的,所述基于所述训练样本、工作流图生成模型和所述SQL编译器对所述备用SQL语句生成模型进行逻辑自检训练,得到目标SQL语句生成模型,包括:
获取包含训练查询语句的训练样本;
运用工作流图生成模型生成所述训练查询语句对应的查询语句工作流图;
利用所述备用SQL语句生成模型生成所述训练查询语句对应的备用SQL语句,并运用所述SQL编译器生成所述备用SQL语句对应的SQL工作流图;
根据所述查询语句工作流图和所述SQL工作流图,获得图对比损失函数;
通过所述图对比损失函数对所述备用SQL语句生成模型进行反向传播,得到目标SQL语句生成模型。
可选的,所述运用工作流图生成模型包括问题步骤分解模型、步骤图表生成模型和工作流图生成子模型;
相应的,所述运用工作流图生成模型生成所述训练查询语句对应的查询语句工作流图,包括:
采用问题步骤分解模型对所述训练查询语句进行步骤分解,得到问题解决步骤集;
采用步骤图表生成模型生成所述问题解决步骤集对应的问题解决结构图;
采用工作流图生成子模型生成所述问题解决结构图对应的查询语句工作流图。
可选的,所述根据所述查询语句工作流图和所述SQL工作流图,获得图对比损失函数,包括:
计算所述查询语句工作流图和所述SQL工作流图的图相似度,所述图相似度包括结构相似度和属性相似度;
根据所述图相似度,结合给定的损失函数表达式,确定图对比损失函数。
可选的,所述装置还包括语句验证模块230,用于:
运用SQL编译器和/或工作流图生成模型对所述目标SQL语句进行验证,若所述目标SQL语句验证失败,则将验证结果返回至所述目标SQL语句生成模型,并重新生成新的目标SQL语句,直至验证通过。
可选的,所述运用SQL编译器和/或工作流图生成模型对所述目标SQL语句进行验证,包括:
运用SQL编译器对所述目标SQL语句进行语法验证,和/或,运用工作流图生成模型对所述目标SQL语句进行逻辑验证;
若所述目标SQL语句未通过语法验证或逻辑验证,则确定所述目标SQL语句验证失败;否则,
确定所述目标SQL语句验证通过。
本发明实施例所提供的SQL语句生成装置可执行本发明任意实施例所提供的SQL语句生成方法,具备执行方法相应的功能模块和有益效果。
实施例三
图12示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图12所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如SQL语句生成方法。
在一些实施例中,SQL语句生成方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM13并由处理器11执行时,可以执行上文描述的SQL语句生成方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行SQL语句生成方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (12)

1.一种SQL语句生成方法,其特征在于,包括:
获取自然语言查询语句;
将所述自然语言查询语句输入预先训练好的目标SQL语句生成模型,生成目标SQL语句,所述目标SQL语句生成模型具有语法自检功能和逻辑自检功能。
2.根据权利要求1所述的方法,其特征在于,所述目标SQL语句生成模型的训练步骤包括:
构建初始SQL语句生成模型;
基于训练样本和SQL编译器对所述初始SQL语句生成模型进行语法自检训练,得到备用SQL语句生成模型;
基于所述训练样本、工作流图生成模型和所述SQL编译器对所述备用SQL语句生成模型进行逻辑自检训练,得到目标SQL语句生成模型。
3.根据权利要求2所述的方法,其特征在于,所述基于训练样本和SQL编译器对所述初始SQL语句生成模型进行语法自检训练,得到备用SQL语句生成模型,包括:
获取训练样本,所述训练样本包含训练查询语句和对应的标准SQL语句;
运用所述初始SQL语句生成模型和SQL编译器生成所述训练查询语句对应的初始SQL语句,所述初始SQL语句通过所述SQL编译器的语法规范检查;
根据所述标准SQL语句和所述初始SQL语句,获得训练损失函数;
通过所述训练损失函数对所述初始SQL语句生成模型进行反向传播,得到备用SQL语句生成模型。
4.根据权利要求3所述的方法,其特征在于,所述运用所述初始SQL语句生成模型和SQL编译器生成所述训练查询语句对应的初始SQL语句,所述初始SQL语句通过所述SQL编译器的语法规范检查,包括:
将所述训练查询语句输入所述初始SQL语句生成模型,得到候选SQL语句;
运用SQL编译器对所述候选SQL语句进行编译,若所述候选SQL语句未通过所述SQL编译器编译,则将编译结果反馈至所述初始SQL语句生成模型,并重新生成新的候选SQL语句,直至通过所述SQL编译器编译;
将通过所述SQL编译器编译的候选SQL语句作为初始SQL语句。
5.根据权利要求2所述的方法,其特征在于,所述基于所述训练样本、工作流图生成模型和所述SQL编译器对所述备用SQL语句生成模型进行逻辑自检训练,得到目标SQL语句生成模型,包括:
获取包含训练查询语句的训练样本;
运用工作流图生成模型生成所述训练查询语句对应的查询语句工作流图;
利用所述备用SQL语句生成模型生成所述训练查询语句对应的备用SQL语句,并运用所述SQL编译器生成所述备用SQL语句对应的SQL工作流图;
根据所述查询语句工作流图和所述SQL工作流图,获得图对比损失函数;
通过所述图对比损失函数对所述备用SQL语句生成模型进行反向传播,得到目标SQL语句生成模型。
6.根据权利要求5所述的方法,其特征在于,
所述运用工作流图生成模型包括问题步骤分解模型、步骤图表生成模型和工作流图生成子模型;
相应的,所述运用工作流图生成模型生成所述训练查询语句对应的查询语句工作流图,包括:
采用问题步骤分解模型对所述训练查询语句进行步骤分解,得到问题解决步骤集;
采用步骤图表生成模型生成所述问题解决步骤集对应的问题解决结构图;
采用工作流图生成子模型生成所述问题解决结构图对应的查询语句工作流图。
7.根据权利要求5所述的方法,其特征在于,所述根据所述查询语句工作流图和所述SQL工作流图,获得图对比损失函数,包括:
计算所述查询语句工作流图和所述SQL工作流图的图相似度,所述图相似度包括结构相似度和属性相似度;
根据所述图相似度,结合给定的损失函数表达式,确定图对比损失函数。
8.根据权利要求1所述的方法,其特征在于,在生成目标SQL语句之后,还包括:
运用SQL编译器和/或工作流图生成模型对所述目标SQL语句进行验证,若所述目标SQL语句验证失败,则将验证结果返回至所述目标SQL语句生成模型,并重新生成新的目标SQL语句,直至验证通过。
9.根据权利要求8所述的方法,其特征在于,所述运用SQL编译器和/或工作流图生成模型对所述目标SQL语句进行验证,包括:
运用SQL编译器对所述目标SQL语句进行语法验证,和/或,运用工作流图生成模型对所述目标SQL语句进行逻辑验证;
若所述目标SQL语句未通过语法验证或逻辑验证,则确定所述目标SQL语句验证失败;否则,
确定所述目标SQL语句验证通过。
10.一种SQL语句生成装置,其特征在于,包括:
语句获取模块,用于获取自然语言查询语句;
语句生成模块,用于将所述自然语言查询语句输入预先训练好的目标SQL语句生成模型,生成目标SQL语句,所述目标SQL语句生成模型具有语法自检功能和逻辑自检功能。
11.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9中任一项所述的SQL语句生成方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-9中任一项所述的SQL语句生成方法。
CN202311577509.8A 2023-11-23 2023-11-23 一种sql语句生成方法、装置、设备及存储介质 Pending CN117891458A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311577509.8A CN117891458A (zh) 2023-11-23 2023-11-23 一种sql语句生成方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311577509.8A CN117891458A (zh) 2023-11-23 2023-11-23 一种sql语句生成方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN117891458A true CN117891458A (zh) 2024-04-16

Family

ID=90647735

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311577509.8A Pending CN117891458A (zh) 2023-11-23 2023-11-23 一种sql语句生成方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117891458A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118093641A (zh) * 2024-04-29 2024-05-28 创意信息技术股份有限公司 一种基于因果推断的自然语言转sql查询语句方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118093641A (zh) * 2024-04-29 2024-05-28 创意信息技术股份有限公司 一种基于因果推断的自然语言转sql查询语句方法及装置

Similar Documents

Publication Publication Date Title
US20220004714A1 (en) Event extraction method and apparatus, and storage medium
CN109960810B (zh) 一种实体对齐方法及装置
US11113048B1 (en) Utilizing artificial intelligence and machine learning models to reverse engineer an application from application artifacts
CN111930906A (zh) 基于语义块的知识图谱问答方法及装置
Dey et al. Representation of developer expertise in open source software
CN114862656A (zh) 基于多gpu的分布式深度学习模型训练代价的获取方法
CN117891458A (zh) 一种sql语句生成方法、装置、设备及存储介质
CN113487211A (zh) 核电装备质量追溯方法、系统、计算机设备及介质
CN114691658A (zh) 一种数据回溯方法、装置、电子设备及存储介质
CN113849162A (zh) 一种利用模型驱动和深度神经网络相结合的代码生成方法
US20220179889A1 (en) Method for generating query statement, electronic device and storage medium
WO2022198835A1 (zh) 电子地图的测试方法、装置、电子设备及存储介质
CN117633184A (zh) 一种模型构建和智能回复方法、设备及介质
CN116167445B (zh) 量子测量模式的处理方法、装置及电子设备
CN117235280A (zh) 一种操作票生成方法、装置、设备及介质
CN117473054A (zh) 基于知识图谱的通用智能问答方法及装置
CN114897183A (zh) 问题数据处理方法、深度学习模型的训练方法和装置
CN113282519A (zh) 一种用于软件测试的用例数据推荐方法、系统和介质
CN114443493A (zh) 一种测试案例生成方法、装置、电子设备和存储介质
Mishra et al. FASCA: Framework for Automatic Scalable Acceleration of ML Pipeline
CN117407514B (zh) 一种解决计划生成方法、装置、设备及存储介质
US20210326514A1 (en) Method for generating interpretation text, electronic device and storage medium
CN116484870B (zh) 提取文本信息的方法、装置、设备及介质
CN113901094B (zh) 一种数据处理方法、装置、设备及存储介质
Chen Identification of Grammatical Errors of English Language Based on Intelligent Translational Model

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