掌桥专利:专业的专利平台
掌桥专利
首页

语句处理方法及装置

文献发布时间:2024-04-18 19:57:31


语句处理方法及装置

技术领域

本申请涉及计算机领域,尤其涉及语句处理方法及装置。

背景技术

大模型(large language model,LLM),具有庞大的神经网络结构,且采用的参数更多。LLM在理解用户语言或行为后,依赖于调用相应的数据,如应用程序接口(application programming interface,API)或结构查询语言(structured querylanguage,SQL)来响应该语言或行为,如大模型输出语句或图像等。

以API为例进行说明,LLM根据用户语言或行为,调用API的准确率依赖于API的描述。对于API的描述常采用设定的API文档标准进行描述,得到API描述语句。由于各API描述语句间相对独立,导致多个API描述语句中的内容存在相互重叠或描述不清等,进而影响LLM对该多个API的确定,从而降低了大模型输出语句或图像的准确率。

因此,如何提高大模型的输出结果的准确率成为目前亟待解决的问题。

发明内容

本申请提供了语句处理方法及装置,解决了数据的描述语句间内容存在重叠或描述不清,导致模型调用数据不准确,降低了模型输出结果准确度的问题。

第一方面,本申请提供了一种语句处理方法,该语句处理方法可应用于计算机系统或应用于支持该计算机系统实现语句处理方法的计算设备,例如该计算设备可为服务器或终端。该语句处理方法可以包括:获取数据的第一描述语句集,并确定第一描述语句集包括的第一描述语句中两两之间的相似度大于第一阈值的第二描述语句。然后,将第二描述语句发送至计算设备,并接收计算设备反馈的基于第二描述语句编辑得到的第三描述语句。其中,第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句中,两两间的相似度小于第一阈值。

在本申请中,通过将数据的第一描述语句集中相似度大于第一阈值的第二描述语句进行编辑,使得数据对应的第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句中,两两相似度小于第一阈值,提高了数据关联的描述语句(第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句)间的差异度,这样一来,模型在调用数据时,能准确识别出不同数据关联的多个描述语句间的区别,就可以准确的确定出与用户的语言或行为相匹配的数据,从而提高根据匹配的数据向用户反馈结果的准确率。

另外,本申请提供的方案,仅对从第一描述语句集中确定出的第二描述语句进行编辑,得到第三描述语句,实现对第一描述语句集中的部分语句进行针对性处理,减少了语句处理量,提高了处理效率。

示例性的,上述数据可为API或SQL等。

在一种可能的实现方式中,在确定第一描述语句集包括的第一描述语句中两两之间的相似度大于第一阈值的第二描述语句之前,该语句处理方法还包括:根据第一描述语句包括的多种类型的子语句,确定第一描述语句集包括的第一描述语句中两两之间的相似度。

示例性的,若上述数据为API,则该第一描述语句包括的多种类型的子语句可包括:API的名称、API的参数、API的描述、API的使用案例、API-区分、问题-问题解读-调用链等。

若上述数据为SQL,则该第一描述语句包括的多种类型的子语句可包括:名称、参数、易混淆文档属性、描述、质量、SQL-区分、问题-问题解读-SQL。

在本申请中,从多个第一描述语句中确定相似度大于第一阈值的第二描述语句,因此,仅对该第二描述语句发送至计算设备进行编辑,避免了对所有第一描述语句进行编辑,导致的编辑工作量增加,进而降低了对第二描述语句进行编辑的耗时,提高了编辑效率。

在一种可能的实现方式中,将第二描述语句发送至计算设备,并接收计算设备反馈的基于第二描述语句编辑得到的第三描述语句,包括:通过显示第二描述语句对应的控制部件,进而接收用户对控制部件的触发操作,从而响应于该触发操作,确定用户对第二描述语句编辑得到的第三描述语句。

在本申请中,通过显示第二描述语句对应的控制部件的形式,在实现数据可视化的同时,对第二描述语句进行编辑得到第三描述语句,使得第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句中,两两之间的相似度小于第一阈值,增大了两两描述语句间的差异度,进而提高了LLM确定与用户的语音或文本相匹配的数据的准确度。

在一种可能的实现方式中,在将第二描述语句发送至计算设备,并接收计算设备反馈的基于第二描述语句编辑得到的第三描述语句之后,该语句处理方法还包括:确定第四描述语句集包括的第四描述语句中两两之间的相似度,并从该第四描述语句集中,筛选出符合第一条件的第四描述语句。其中,该第四描述语句集包括第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句。该第一条件包括:与大于或等于第二阈值个第四描述语句的相似度大于或等于第三阈值,和/或,与至少一个第四描述语句的相似度大于或等于第四阈值,且对应相同问题的标识信息不同。该第四描述语句包括标识信息,标识信息,用于指示第四描述语句对应的问题的处理结果。

在本申请中,利用描述语句包括的问题解读进行匹配,实现以问题为导向的方式进行匹配,筛选出解决问题相同或相近的第四描述语句。进而在多个第四描述语句包括相同或相近的问题解读下,筛选出符合第一条件的第四描述语句,实现缩小描述语句集包括的描述语句数量。从而,在利用该少量的描述语句与用户的问题进行匹配时,能提高匹配速度,进而提高了处理效率。以及,由于缩小了描述语句集包括的描述语句数量,因此,占用的存储空间减少,提高了存储空间的利用率。

在一种可能的实现方式中,在将第二描述语句发送至计算设备,并接收计算设备反馈的基于第二描述语句编辑得到的第三描述语句之后,该语句处理方法还包括:确定第四描述语句集中的第四描述语句包括的调用链的两两之间的相似度,并从第四描述语句集中,筛选出包含的调用链符合第二条件的第四描述语句。其中,该第四描述语句集包括第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句;第四描述语句包括一个或多个调用链,第四描述语句包括的第一调用链用于指示调用第四描述语句对应的数据解决一个问题的调用顺序。一个调用链包括一个或多个调用对;第二调用链包括的调用对用于指示第二调用链调用的多个数据中具有调用关系的两个数据。第二条件包括:与对应的参考调用链之间的相似度大于或等于第五阈值,和/或,与至少一个调用链的相似度大于或等于第六阈值,且对应相同问题的标识信息不同。第三调用链对应的参考调用链为第四描述语句集中包括调用对的数量小于或等于第三调用链的其他调用链,该第四描述语句包括调用链对应的标识信息,第四调用链对应的标识信息,用于指示第四调用链对应的问题的处理结果。上述第一调用链、第二调用链、第三调用链或第四调用链为任一调用链。

在本申请中,利用描述语句包括的调用链进行匹配,实现以处理方式为导向的方式进行匹配,筛选出调用链相同或相近的第四描述语句。进而,在多组描述语句包括相同或相近的调用链下,筛选出符合第二条件的第四描述语句,实现缩小描述语句集包括的描述语句数量。从而,在利用该少量的描述语句与用户的问题进行匹配时,能提高匹配速度,进而提高了处理效率。以及,由于缩小了描述语句集包括的描述语句数量,因此,占用的存储空间减少,提高了存储空间的利用率。

在一种可能的实现方式中,该第一描述语句的多个翻译概率间的差值大于或等于第七阈值。

在本申请中,LLM利用的编辑后的混淆语句和除混淆语句外的描述语句中不存在混淆的语句,即第一描述语句的多个翻译概率间的差值大于或等于第七阈值,进而大模型能准确判断描述语句所表达的含义,提高了确定与用户的语言或行为相匹配的数据。从而提高了根据匹配的数据向用户反馈结果的准确率。

第二方面,本申请提供了一种语句处理装置,该装置应用于计算机系统或应用于支持该计算机系统实现语句处理方法的计算设备,该语句处理装置包括用于执行第一方面或第一方面任一种可选实现方式中的语句处理方法的各个模块。如该语句处理装置包括:获取模块、确定模块、发送模块和接收模块。其中:

获取模块,用于获取数据的第一描述语句集。

确定模块,用于确定第一描述语句集包括的第一描述语句中两两之间的相似度大于第一阈值的第二描述语句。

发送模块,用于将第二描述语句发送至计算设备。

接收模块,用于接收计算设备反馈的基于第二描述语句编辑得到的第三描述语句;该第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句中,两两间的相似度小于第一阈值。

在一种可能的实现方式中,该语句处理装置还包括:相似度确定模块,用于根据所述第一描述语句包括的多种类型的子语句,确定所述第一描述语句集包括的第一描述语句中两两之间的相似度。

在一种可能的实现方式中,该语句处理装置还包括显示模块,该显示模块,用于显示第二描述语句对应的控制部件。该接收模块,具体用于接收用户对控制部件的触发操作;响应于触发操作,确定用户对第二描述语句编辑得到的第三描述语句。

在一种可能的实现方式中,该语句处理装置还包括:第一相似度确定模块和第一筛选模块;该第一相似度确定模块,用于确定第四描述语句集包括的第四描述语句中两两之间的相似度。该第一筛选模块,用于从第四描述语句集中,筛选出符合第一条件的第四描述语句。其中,该第四描述语句集包括第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句。该第一条件包括:与大于或等于第二阈值个第四描述语句的相似度大于或等于第三阈值,和/或,与至少一个第四描述语句的相似度大于或等于第四阈值,且对应相同问题的标识信息不同。第四描述语句包括标识信息,标识信息,用于指示第四描述语句对应的问题的处理结果。

在一种可能的实现方式中,该语句处理装置还包括:第二相似度确定模块和第二筛选模块;该第二相似度确定模块,用于确定第四描述语句集中的第四描述语句包括的调用链的两两之间的相似度。该第二筛选模块,用于从第四描述语句集中,筛选出包含的调用链符合第二条件的第四描述语句。其中,该第四描述语句集包括第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句。第四描述语句包括一个或多个调用链,第四描述语句包括的第一调用链用于指示调用第四描述语句对应的数据解决一个问题的调用顺序。一个调用链包括一个或多个调用对;第二调用链包括的调用对用于指示第二调用链调用的多个数据中具有调用关系的两个数据。该第二条件包括:与对应的参考调用链之间的相似度大于或等于第五阈值,和/或,与至少一个调用链的相似度大于或等于第六阈值,且对应相同问题的标识信息不同。第三调用链对应的参考调用链为第四描述语句集中包括调用对的数量小于或等于第三调用链的其他调用链,第四描述语句包括调用链对应的标识信息,第四调用链对应的标识信息,用于指示第四调用链对应的问题的处理结果。第一调用链、第二调用链、第三调用链或第四调用链为任一调用链。

在一种可能的实现方式中,该第一描述语句的多个翻译概率间的差值大于或等于第七阈值。

第三方面,本申请提供了一种计算设备。该计算设备包括存储器和处理器,该存储器用于存储计算机指令;该处理器执行计算机指令时,实现上述第一方面或第一方面中任一种可能实现方式中的方法。该计算设备可以是指服务器、个人电脑等。

第四方面,本申请提供了一种计算设备集群。该计算设备集群包括至少一个如第三方面所示的计算设备。

第五方面,本申请提供一种计算机可读存储介质,该存储介质中存储有计算机程序或指令,当计算机程序或指令被处理设备执行时,实现上述第一方面和第一方面中任一种可选实现方式中的方法。

第六方面,本申请提供一种计算机程序产品,该计算程序产品包括计算机程序或指令,当该计算机程序或指令被处理设备执行时,实现上述第一方面和第一方面中任一种可选实现方式中的方法。

第七方面,本申请提供一种芯片,该芯片包括:接口电路和供电电路;该接口电路用于获取数据的第一描述语句集,该控制电路用于执行上述第一方面或第一方面中任一种可能实现方式中的方法。

以上第二方面至第七方面的有益效果可参照第一方面或第一方面中任一种实现方式,在此不予赘述。本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。

附图说明

图1为一种大模型处理方法的流程示意图;

图2为本申请提供的一种计算机系统的示意图;

图3为本申请提供的语句处理方法的整体流程示意图;

图4为本申请提供的语句处理方法的流程示意图;

图5为本申请提供的一种混淆语句处理方法的流程示意图;

图6为本申请提供的两条调用链的示意图;

图7为本申请提供的一种语句处理装置的结构示意图一;

图8为本申请提供的一种语句处理装置的结构示意图二;

图9为本申请提供的一种计算设备的结构示意图。

具体实施方式

为了便于理解,首先对本申请所涉及的技术术语进行介绍。

API,为一个软件提供给其他软件使用的接口。API定义了软件之间的通信协议,包括数据格式、错误处理、认证方式等。通过API不同的软件之间可以相互通信,共享数据和功能。

SQL,为一种用于管理关系型数据库的编程语言。如通过SQL可以创建、修改、查询和删除数据库中的数据,还可以控制数据库的访问权限、事务处理、备份恢复等。

统一资源定位符(uniform resource locator,URL),为互联网上用于定位和访问资源的地址。URL由多个部分组成,包括协议(如超文本传输协议(hyper texttransferprotocol,http)、超文本传输安全协议(hyper text transfer protocol oversecure socket layer,https)、文件传输协议(file transferprotocol,ftp)等)、服务器名或互联网地址(internet protocol address)、端口号、路径或查询字符串等。

基于生成预训练聊天模型(chat generative pre-trained,ChatGPT),为transformer架构,通过预训练大量文本数据来学习生成文本。ChatGPT通过接收用户输入的语言或行为等对应输出文本以实现对话。

随着人工智能的不断发展,LLM已经成为人机交互控制的新趋势。用户通过语音或文本的形式与机器交互,降低了人机交互的门槛,进而提升了交互效率。该LLM通过对用户输入的输入数据以及运行LLM的计算设备存储的调用数据进行分析和建模,确定与输入数据相匹配的调用数据,进而根据与输入数据相匹配的调用数据执行处理,得到处理结果。

示例性的,上述输入数据可为语音或文本等,上述LLM可为ChatGPT,上述调用数据可以包括API或SQL等。

针对于LLM根据用户输入的输入数据,确定与输入数据相匹配的调用数据,进而调用与输入数据相匹配的调用数据执行处理,得到输出结果。以下以调用数据为API为例进行说明。如图1所示,图1为一种大模型处理方法的流程示意图。用户与LLM进行交互的情况下,LLM根据用户输入的语句或语音等,做出相应的反馈。该方法包括以下步骤S110至S150。

S110、获取API文档。

示例性的,获取存储器中存储的API文档或者接收由用户输入的API文档,如API文档1和API文档2等。一个API对应一个API文档。

该API文档为用户按照文档标准a的格式进行编辑得到,API文档包括了描述API的多个语句。

以下表1示出了文档标准a的一种可能示例。

表1

值得注意的是,每个API都将根据如上表1所示的格式进行描述,得到该API的API文档。各API文档间相互独立,因此存在各API文档间的描述近似或者描述重叠。

S120、对API文档进行向量化,得到第一向量。

通过采用词嵌入(word embedding)等方式将API文档中的语句进行向量化,得到API文档对应的第一向量。

示例性的,该词嵌入方式可采用word2vec、doc2vec或者bert等。对上述API文档1向量化得到101234745899,对上述API文档2向量化得到101743648369。

S130、根据输入的问题,对第一向量进行筛选,得到第一向量中的第二向量。

运行有LLM的终端或服务器接收用户输入的文本或语音形式的问题,通过采用词嵌入方式将该文本或者语音向量化,得到问题向量。将问题向量分别与每个第一向量进行匹配,得到问题向量与每个第一向量间的相似度,进而将与问题向量的相似度大于或等于阈值a的第一向量,作为第二向量。将第二向量对应的API作为候选API。

示例性的,可采用深度网络语义模型(deep structured semantic model,DSSM)、欧式距离或余弦相似度等方式来计算问题向量与第一向量间的相似度。

S140、利用LLM对第二向量进行筛选,得到目标向量,并获取目标向量对应的目标API。

在一种可能的实现方式中,LLM利用S130中确定的第二向量与问题向量间的相似度,将与问题向量的相似度满足输出条件的第二向量,作为目标向量。并根据该目标向量获取对应的目标API。

在另一种可能的实现方式中,LLM利用用户输入的文本或语音对应的问题向量与上述第二向量再进行匹配,确定第二向量与问题向量间的特征相似度,进而将与问题向量的特征相似度满足输出条件的第二向量,作为目标向量。并且,根据该目标向量获取对应的目标API。

例如,上述输出条件可为将与问题向量的相似度或特征相似度最高的一个第二向量作为目标向量,或者,将与问题向量的相似度或特征相似度排序在前预设个数的第二向量作为目标向量。

S150、调用目标API执行处理,输出结果。

通过API执行器执行该目标向量对应的目标API,以得到结果。

示例性的,该API执行器可为LLM内置的执行器,API执行器在获取到目标API后可自动调用该目标API的功能去执行处理。

例如,该目标API对应的功能为检索日期,API执行器根据用户输入的文本或语音,调用该目标API进行检索,得到结果为2023年1月1日。

在一种可行的示例中,可在显示界面上显示该结果。

在一种可能的情形中,若上述输出条件为:将与问题向量的相似度排序在前n个的第二向量作为目标向量时,将该n个第二向量对应的API或者API文档发送至显示界面进行显示。用户可从该n个第二向量对应的API或API文档中,选择最终的API,进而执行该最终的API,并输出结果。

示例性的,通过在显示界面显示该n个第二向量对应的API或API文档的控制部件,并接收用户对控制部件的触发操作,根据触发操作,从该n个第二向量对应的API或API文档中确定最终的API。并且,还可在该显示界面上显示对应的结果。该触发操作可为用户在显示界面上对控制部件的点击或滑动操作等。

上述LLM根据用户输入的文本,确定与输入的文本相匹配的目标API,以及调用目标API执行处理,得到处理结果,都依赖于上述S110获取的API文档。在S110中获取的API文档都为人工进行编辑,且各API文档间的描述存在不清楚或描述重叠等情况。导致LLM对API文档的区分度较差,在LLM根据用户输入的文本或语音确定相匹配的API文档时,不能准确得到匹配的API文档,进而影响大模型对目标API的确定,从而降低了大模型输出结果的准确率。

为避免上述API文档间描述不清楚或描述重叠,导致LLM输出结果的准确率较低的问题。本申请提供了一种语句处理方法,该方法应用于计算设备。该计算设备包括服务器或终端等。该语句处理方法包括:获取数据的第一描述语句集,并确定该第一描述语句集包括的第一描述语句中两两之间的相似度大于第一阈值的第二描述语句。进而,将第二描述语句发送至计算设备,并接收该计算设备反馈的基于第二描述语句编辑得到的第三描述语句。其中,第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句中,两两之间的相似度小于第一阈值。

在本申请中,通过将数据的第一描述语句集中相似度大于第一阈值的第二描述语句进行编辑,使得数据对应的第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句中,两两相似度小于第一阈值,提高了数据关联的描述语句(第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句)间的差异度,这样一来,模型在调用数据时,能准确识别出不同数据关联的多个描述语句间的区别,就可以准确的确定出与用户的语言或行为相匹配的数据,从而提高根据匹配的数据向用户反馈结果的准确率。另外,本申请提供的方案,仅对从第一描述语句集中确定出的第二描述语句进行编辑,得到第三描述语句,实现对第一描述语句集中的部分语句进行针对性处理,减少了语句处理量,提高了处理效率。

接下来,结合附图对本申请所提供的语句处理方法进行详细介绍。

首先,参见图2,图2为本申请提供的一种计算机系统的示意图。如图2所示,该计算机系统包括服务器210和终端220。在一种可行的示例中,该计算机系统还可包括终端230、终端240。

其中,该服务器210可为计算设备集群中的至少一个设备、数据中心等。在该服务器210上部署有LLM以及LLM需调用的数据,该LLM需调用的数据如API、SQL或URL等。在利用LLM进行对话、处理任务等场景中,LLM根据用户输入的文本或语音等,得到相应的处理结果。在LLM得到相应的处理过程中,LLM理解用户输入的文本或语音,进而确定与该文本或语音匹配的调用数据。在确定与文本或语音匹配的调用数据时,LLM需确定文本或语音与调用数据的描述语句间的相似度,进而需避免描述语句间描述相同或相交,提高描述语句间的差异度。

该终端220、终端230或终端240可为终端计算设备、智能手机、笔记本电脑、平板电脑或个人台式电脑等设备。在一种可行的示例中,该终端220、终端230或终端240可部署LLM以及LLM需调用的数据。

本申请提供的语句处理方法可由计算机系统中的服务器210、终端220、终端230或终端240执行。以下以服务器210执行本申请提供的语句处理方法,与服务器210交互为例进行说明为例进行整体说明。如图3所示,图3为本申请提供的语句处理方法的整体流程示意图。该方法包括以下两个阶段,如差异确定阶段310、编辑阶段320。

该差异确定阶段310包括服务器210获取到数据的第一描述语句集后,确定第一描述语句集中多个语句间的相似度,进而从第一描述语句集包括的多个第一描述语句中,筛选两两间的相似度大于或等于第一阈值的第二描述语句。该编辑阶段320包括:服务器210将该第二描述语句发送至终端220,从而服务器210接收终端220发送的基于第二描述语句编辑得到的第三描述语句。

其中,该多个第三描述语句中,两两间的相似度小于第一阈值。

在一种可能的情形中,上述语句处理方法还包括筛选阶段330。

该筛选阶段330包括:服务器210再对第三描述语句以及第一描述语句集中除第二描述语句外的第一描述语句进行筛选,实现对数据进行筛选,保留多个相近似的描述语句中的一个。

对于差异确定阶段310和编辑阶段320可参见下述图4相关的表述,筛选阶段330可参见下述对描述语句d进行筛选的相关表述,在此不予赘述。

在一种可能的情形中,服务器210在与服务器210连接的显示设备上显示该第二描述语句,并接收用户在显示设备上对第二描述语句进行编辑得到的第三描述语句。

以终端220、终端230或终端240中的终端220为例进行说明,终端220与服务器210之间可通过有线的方式通信,如以太网、光纤以及设置于计算机系统用于连接终端220与服务器210的快捷外围组件互连(peripheral component interconnect express,PCIe)总线、或扩展工业标准结构(extended industry standard architecture,EISA)总线、统一总线(unifiedbus,Ubus或UB)、计算机快速链接(compute express link,CXL)、缓存一致互联协议(cache coherent interconnect for accelerators,CCIX)等;也可以通过无线的方式通信,如因特网、无线通信(wireless fidelity,WIFI)以及超宽带(ultra wide band,UWB)技术等。

为提高LLM输出结果的准确率,本申请提供了两种可能的实施例,该两种可能的实施例可应用在上述图2所示的计算机系统中。

在第一种可能的实施例中,如图4所示,图4为本申请提供的语句处理方法的流程示意图。计算设备可执行该语句处理方法,在本实施例中,以计算设备为服务器210、服务器210发送第二描述语句至的计算设备可为任意终端设备或显示设备等,如该任意终端设备为图2中的终端220、且图3中的数据为API为例进行说明。该API的第一描述语句集可称为描述语句集a,第二描述语句可称为描述语句b,第三描述语句可称为描述语句c。该方法包括以下步骤S410至S440。

S410、服务器210获取API的描述语句集a。

针对于服务器210获取API的描述语句集a,以下提供两种可能的示例。

示例1,服务器210从存储器中获取API的描述语句集a。

该API的描述语句集a包括的描述语句a的多个翻译概率间的差值大于或等于第七阈值。该描述语句a的多个翻译概率间的差值大于或等于第七阈值的内容,可参照下述图5的表述,在此不予赘述。

例如,该描述语句集a包括多个描述语句a,如描述语句a1、描述语句a2等,一个API对应一个描述语句a,一个描述语句a包括多种类型的子语句,如API的参数、API的描述、问题、问题解读、调用链等。

示例2,服务器210接收终端220发送的API的描述语句集a。

上述描述语句a为根据设定的文档标准b进行填写得到,针对一个描述语句a的表现形式,以下表2提供了一种可能的示例。

表2

值得注意的是,文档标准b相较于文档标准a,增加了API间的区分以及不同问题下的API调用链。该不同问题下的API调用链包括了问题、问题的解读、调用链。该问题的解读用于在多个问题相近时,便于区分该多个问题。该问题1-问题解读1-调用链表示解决一个问题时,对多个API的调用顺序。上述表2中的API的名称、API的参数、API的描述、API的使用案例、API-区分、问题-问题解读-调用链为描述语句a包括的不同类型的子语句。上述表2仅为本申请提供的示例,不应理解为对本申请的限定,在一些情况下,表2还可包括更多类型的语句。示例性的,不同问题下的API调用链还可包括对应的标识信息,该标识信息指示了该调用链在解决对应问题时的处理结果。如该处理结果为正确或者错误。

在一种可能的情形中,上述表1中的内容为英文表述。

S420、服务器210确定描述语句集a包括的描述语句a中两两之间的相似度大于第一阈值的描述语句b。

服务器210确定多个描述语句a两两之间的相似度,将两两间的相似度大于第一阈值的描述语句a作为描述语句b。

在一种可能的情形中,服务器210还可将两两间的相似度等于第一阈值的描述语句a作为描述语句b。

示例性的,上述相似度可为文本语义相似度、词距离相似度等。

针对于服务器210确定描述语句集a包括的描述语句a中两两之间的相似度大于第一阈值的描述语句b,以下提供了一种可能的实现方式。

服务器210根据多组描述语句a分别包括的多种类型的子语句中,两两之间的相似度,确定多个描述语句a间的相似度,进而将两两间的相似度大于或等于第一阈值的描述语句a作为描述语句b。前述相似度为不同描述语句a包括的多个语句间的相似度。例如,描述语句a1包括的多个语句与描述语句a2包括的多个语句间的相似度。

在本申请中,服务器210从多个描述语句a中确定两两间的相似度大于或等于第一阈值的描述语句b,因此,仅对该描述语句b发送至终端220进行编辑,避免了对所有描述语句a进行编辑,导致的编辑工作量增加,进而降低了对描述语句b进行编辑的耗时,提高了编辑效率。

以服务器210获取两个描述语句a(描述语句a1,描述语句a2),且描述语句中的API的描述为例进行说明。服务器210为确定该两组描述语句a间的相似度,计算描述语句a1包括的API描述1,与描述语句a2包括的API描述2之间的相似度,进而确定该相似度是否大于或等于第一阈值。若该相似度大于或等于第一阈值,则将描述语句a1,描述语句a2作为两个描述语句b,即描述语句b1、描述语句b2。

在一种可能的情形中,服务器210还可对描述语句a包括的API名称、API的使用案例或者API区分等进行匹配。或者,服务器210可同时对至少两种类型的语句进行匹配,如根据API名称和API的描述进行匹配。

针对于服务器210计算描述语句a1包括的API的描述,与描述语句a2包括的API的描述之间的相似度,以下提供了两种可能的示例。

示例1,服务器210可采用深度学习网络计算描述语句a1包括的API的描述,与描述语句a2包括的API的描述之间的相似度。

例如,该深度学习网络包括DSSM、或多维度语义交互匹配模型(bilateral multi-perspective matching model,BiMPM)等。

示例2,服务器210将描述语句a1包括的API的描述,与描述语句a2包括的API的描述向量化,分别得到向量a1和向量a2。进而,服务器210在计算向量a1和向量a2的欧式距离、或余弦相似度等,以得到描述语句a1和描述语句a2的相似度。

在一种可能的情形中,服务器210获取两个以上的描述语句a时,将该两个以上的描述语句a进行两两匹配,以从多个描述语句a确定出两两间的相似度大于或等于第一阈值的描述语句b。

对于将该两个以上的描述语句a进行两两匹配的内容,可参见上述对描述语句a1,描述语句a2进行匹配的示例,在此不予赘述。

S430、服务器210将描述语句b发送至终端220。

服务器210将上述多个描述语句b发送至终端220进行处理。

示例性的,服务器210将描述语句b显示在服务器210对应的显示界面上。如在服务器210的显示界面上显示描述语句b对应的控制部件。该服务器210可接收用户对描述语句b对应的控制部件进行编辑操作,该编辑操作如点击操作、滑动操作、删除或修改操作等。进而服务器210响应于触发操作,确定描述语句b经编辑操作处理后得到的描述语句c。

例如,用户编辑描述语句b中的API描述或名称等。如将描述语句b1中的API描述1编辑为API描述1_1。

在本申请中,服务器210通过显示描述语句b对应的控制部件的形式,在实现数据可视化的同时,对描述语句b进行编辑得到描述语句c,使得描述语句c和描述语句集a中除描述语句b外的描述语句a中,两两之间的相似度小于第一阈值,增大了两两描述语句间的差异度,进而提高了LLM确定与用户的语音或文本相匹配的数据的准确度。

S440、服务器210接收终端220反馈的基于描述语句b编辑得到的描述语句c。

其中,描述语句c和描述语句集a中除描述语句b外的描述语句a中,两两之间的相似度小于第一阈值。

在一种可能的情形中,若多个描述语句c和描述语句集a中除描述语句b外的多个描述语句a中仍存在两两间的相似度大于或等于第一阈值的描述语句,则再重复上述S520至S540的步骤,对两两间的相似度大于或等于第一阈值的描述语句进行编辑,直至服务器210中保存的多个描述语句间的相似度小于第一阈值。

在本申请中,由于该多个描述语句c和描述语句集a中除描述语句b外的多个描述语句a间的相似度小于第一阈值,提高了数据关联的描述语句(描述语句c和描述语句集a中除描述语句b外的描述语句a)间的差异度,进而,LLM在调用数据时,能准确识别出不同数据关联的多个描述语句间的区域,从而,能准确的确定出与用户的语言或行为相匹配的数据,从而提高根据匹配的数据向用户反馈结果的准确率。

为提高LLM对描述语句更好的理解描述语句,因此,该第一描述语句的多个翻译概率间的差值大于或等于第七阈值,以下提供了一种可能的实现方式。

为避免描述语句集a中的描述语句a存在一个词多义,导致LLM无法确认该描述语句a的具体含义的问题。如图5所示,图5为本申请提供的一种混淆语句处理方法的流程示意图。计算设备可执行该混淆语句处理方法,以该计算设备可为图2中的服务器210,且服务器210与终端220交互为例进行说明,该方法包括以下步骤S510至S540。

S510、服务器210确定描述语句a的翻译概率。

由于描述语句采用的是英文表述,而LLM采用中文与用户进行交互,因此,为避免英文具有多个中文意思时,导致LLM区分不清多个描述语句间的差异,进而不能准确的确定匹配的数据,从而LLM输出结果不准确。服务器210通过对描述语句中的英文语句进行翻译,得到翻译后得到的各中文词语的翻译概率。

例如,服务器210对描述语句a中子语句进行翻译,得到翻译1以及对应的翻译概率1、翻译2以及对应的翻译概率2、和翻译3以及对应的翻译概率3。

示例性的,描述语句的一子语句中示出了“virtual”,服务器210对该“virtual”翻译得到中文翻译以及翻译概率为“事实上的,45%”、“虚拟的,50%”、“很接近的,10%”。

上述仅以描述语句中的一个子语句为例进行说明,不应理解为对本申请的限定。在其他的示例中,还可利用描述语句中的多个子语句等进行翻译。

在一种可能的示例中,服务器210可采用深度学习模型,如bert等对描述语句的英文语句进行翻译,得到翻译后的各中文词语的翻译概率。

S520、服务器210从描述语句a中确定多个翻译概率间的差值小于第七阈值(阈值a)的混淆语句。

在一种可能的情形中,该多个翻译概率间的差值为最小差值。

示例性的,该阈值a为10%。如上述“virtual”翻译得到“事实上的,45%”、“虚拟的,50%”、“很接近的,10%”,服务器210根据该多个翻译概率确定差值为5%、35%、40%。该多个差值中的最小值小于或等于10%,因此该描述语句为混淆语句。若该多个差值中的最小值大于10%,则该描述语句不为混淆语句。

S530、服务器210将混淆语句发送至终端220。

服务器210将上述多个混淆语句发送至终端220进行处理。

在一种可能的实现方式中,服务器210将混淆语句发送至终端220进行显示。如在终端220上显示混淆语句对应的控制部件。该控制部件可接收用户对混淆语句进行编辑操作,该编辑操作如点击操作、滑动操作、删除或修改操作等。进而终端220将混淆语句经编辑操作处理后得到的编辑后的混淆语句发送至服务器210。

其中,该编辑后的混淆语句中各子语句仅对应一个翻译,或者该子语句有多个翻译,该多个翻译对应的多个翻译概率间的差值大于阈值a。

示例性的,终端220编辑混淆语句中多个翻译概率间的差值小于阈值a的子语句,得到子语句_1,该子语句如API描述或名称等。当上述数据为SQL时,终端220还可编辑该SQL的描述语句中的易混淆文档属性。

例如,在描述语句中添加“virtual machine”,进而得到的描述语句中的“virtual”翻译得到“虚拟的”概率为100%。

S540、服务器210接收终端220发送的基于混淆语句得到的编辑后的混淆语句。

服务器210将该编辑后的混淆语句写入存储器中。

在本申请中,LLM利用的编辑后的混淆语句和除混淆语句外的描述语句中不存在混淆的语句,即描述语句a的多个翻译概率间的差值大于或等于第七阈值。进而大模型能准确判断描述语句所表达的含义,提高了确定与用户的语言或行为相匹配的数据,从而服务器210提高根据匹配的数据向用户反馈结果的准确率。

进一步的,上述多个描述语句c和描述语句集a除描述语句b外的多个描述语句a称为第四描述语句集(可称为描述语句集d),该描述语句集d包括多个描述语句d。服务器210还可对多个描述语句d进行筛选。

针对于服务器210对多个描述语句d进行筛选,以下提供了两种可能的实施例。

在第一种可能的实施例中,服务器210确定多个描述语句d中两两之间的相似度,进而从描述语句集d中筛选出符合第一条件的描述语句d。

服务器210确定多个描述语句d中任意两个描述语句d之间的相似度,即每一个描述语句d都与多个描述语句d中其他的描述语句d进行匹配,得到相应的相似度。

以服务器210确定两组描述语句d(描述语句d1,描述语句d2),且根据描述语句d包括的问题解读来匹配为例进行说明。描述语句d1包括问题解读d1,描述语句d2包括问题解读d2,服务器210确定问题解读d1和问题解读d2间的相似度,将该问题解读d1和问题解读d2间的相似度作为描述语句d1和描述语句d2间的相似度。

示例性的,服务器210可采用dssm或bert等神经网络来确定上述问题解读d1与问题解读d2间的相似度。

值得注意的是,服务器210还可根据描述语句包括的问题、使用案例等进行相似度计算,以确定两两描述语句d之间的相似度。或者服务器210根据描述语句包括的多个子语句进行相似度计算,以确定两两描述语句d之间的相似度。例如以问题和问题解读来进行相似度计算。

针对于上述第一条件,以下提供了一种可能的示例。

筛选出的描述语句d与大于或等于第二阈值个描述语句d的相似度大于或等于第三阈值。

以第二阈值为阈值b,第三阈值为阈值c为例,在一种可能的情形中,服务器210根据描述语句集d中任意两个描述语句d间的相似度,确定每一个描述语句d与描述语句集d中其他描述语句d中相似度大于或等于阈值c的个数,若该个数大于或等于阈值b,则将该描述语句d筛选出来。

在另一种可能的情形中,服务器210根据描述语句集d中任意两个描述语句d间的相似度中,选择出两两间的相似度大于或等于阈值c对应的一组描述语句d,并从该相似度大于或等于阈值c对应的一组描述语句d中,筛选出匹配次数大于或等于阈值b的描述语句d。该一组描述语句d包括两个描述语句d。

在本申请中,服务器210利用描述语句包括的问题解读进行匹配,实现以问题为导向的方式进行匹配,筛选出解决问题相同或相近的描述语句d。进而在多个描述语句d包括相同或相近的问题解读下,仅保留一个描述语句,实现缩小描述语句集包括的描述语句数量。从而,在服务器210利用该少量的描述语句与用户的问题进行匹配时,能提高匹配速度,进而提高了处理效率。以及,由于缩小了描述语句集包括的描述语句数量,因此,占用服务器210的存储空间减少,提高了存储空间的利用率。

针对于上述服务器210确定多个描述语句d中两两之间的相似度,进而从描述语句集d中筛选出符合第一条件的描述语句d,以下提供了一种可能的示例。以描述语句d中的问题解读、第二阈值为阈值a,第三阈值为阈值b为例进行说明。

描述语句集d包括:描述语句d1、描述语句d2和描述语句d3,该描述语句d1包括问题解读1,描述语句d2包括问题解读2,描述语句d3包括问题解读3。服务器210将问题解读1分别与问题解读2、问题解读3进行匹配,得到相似度分别为70%、30%,将问题解读2与问题解读3进行匹配,得到相似度为80%。

由于设定的阈值b为2,阈值c为65%,因此问题解读1与问题解读2、问题解读2与问题解读3的相似度满足该阈值c,且由于问题解读2匹配次数为两次,问题解读1和问题解读3匹配次数一次。因此筛选出问题解读2对应的描述语句d2。

在一种可能的示例中,服务器210将描述语句d1和描述语句d3删除。

针对于上述阈值b提供了一种可行的示例。以下示出了两两间的相似度大于或等于阈值c的描述语句对,例如描述语句d1和描述语句d2、描述语句d2和描述语句d3、描述语句d4和描述语句d5、描述语句d5和描述语句d6、描述语句d4和描述语句d7。前述的描述语句对中包括两组具有相似度关联的描述语句。第一组为描述语句d1和描述语句d2、描述语句d2和描述语句d3;第二组为描述语句d4和描述语句d5、描述语句d4和描述语句d6、描述语句d4和描述语句d7。对于第一组该阈值b为2,对与第二组该阈值b为3。进而服务器210确定描述语句d2为最能代表第一组具有相似度关联的描述语句,确定描述语句d4为最能代表第二组具有相似度关联的描述语句,从而将筛选出该描述语句d2和描述语句d4。

在一种可能的情形中,在将多个描述语句d都两两进行匹配后,若存在一描述语句d与其他描述语句d间的相似度都小于阈值b,则该描述语句d应保留。

值得注意的是,上述阈值b为2或3,阈值c为65%仅为示例,不应理解为对本申请的限定。在本申请的其他实施例中,该阈值b为5,该阈值c为50%。

在第二种可能的实施例中,服务器210确定多个描述语句d包括的调用链两两之间的相似度,进而从描述语句集d中筛选出包含的调用链符合第二条件的描述语句d。

其中,该一个描述语句d包括一个或多个调用链,第一调用链用于指示调用描述语句d对应的API解决一个问题的调用顺序;一个调用链包括一个或多个调用对,第二调用链包括的调用对用于指示调用链调用的多个API中具有调用关系的两个API。该第一调用链和第二调用链为描述语句集d中的任一调用链。

服务器210确定多个描述语句d中任意两个调用链之间的相似度,即每一个调用链都与多个描述语句d中的其他调用链进行匹配,得到相应的相似度。

示例性的,服务器210可采用dssm或bert等神经网络来确定两个调用链之间的相似度。

根据第二条件筛选出的调用链为多个调用链中具有代表性的调用链,在一定的范围内,该筛选出的调用链可代表该多个调用链。

针对于上述第二条件,以下提供了三种可能的示例。

示例1,与对应的参考调用链之间的相似度大于或等于第五阈值。

其中,第三调用链对应的参考调用链为描述语句集d中包括调用对的数量小于或等于该第三调用链的其他调用链,该第三调用链为描述语句集d中的任一调用链。

以第五阈值为阈值d,服务器210根据第三调用链包括的调用对的数量,确定描述语句集d中包括调用对的数量小于或等于该第三调用链的其他调用链,并将该其他调用链作为参考调用链。进而,服务器210根据描述语句集d中任意两个调用链的相似度,确定第三调用链与参考调用链间的相似度,若存在一个或多个参考调用链与第三调用链间的相似度大于或等于阈值d,则筛选出该第三调用链。

在一种可能的示例中,服务器210还可将与第三调用链的相似度大于或等于阈值d的一个或多个参考调用链删除。

在本申请中,服务器210利用描述语句包括的调用链进行匹配,实现以处理方式为导向的方式进行匹配,筛选出调用链相同或相近的描述语句d。进而,在多组描述语句包括相同或相近的调用链下,仅保留一组描述语句d,实现缩小服务器210中描述语句集包括的描述语句数量。从而,在服务器210利用该少量的描述语句与用户的问题进行匹配时,能提高匹配速度,进而提高了处理效率。以及,由于缩小了服务器210中描述语句集包括的描述语句数量,因此,占用服务器210的存储空间减少,提高了存储空间的利用率。

例如,描述语句d1包括调用链1,该调用链1包括两个调用对,如API_1→API2,API2→API_3。描述语句d2包括调用链2,该调用链2包括三个调用对,如API_1→API2,API2→API_3,API3→API_4。服务器将调用链1与调用链2进行匹配,得到相似度为66%。由于该阈值d为60%,因此,该调用链1与调用链2间的相似度大于该阈值d,将调用链1和调用链2中调用对多的调用链2对应的描述语句d2保留,将调用链d1对应的描述语句d2删除。

若还包括描述语句d3的调用链3,如API_1→API2,API2→API_3,API3→API_4,API4→API_2。服务器210将该调用链3与调用链2进行匹配,得到的相似度为75%,该调用链3与调用链2间的相似度大于该阈值d。因此,将调用对多的调用链3对应的描述语句d3保留,将调用链2对应的描述语句d2删除。

在一种可能的情形中,保留的调用链并非完全包括删除的调用链,且调用对的顺序并不影响调用链间的匹配。

如图6所示,图6为本申请提供的两条调用链的示意图。该图示出了调用链2为API_1→API2,API2→API_3,API3→API_4,以及调用链4为API_1→API2,API_2→API_5,API_5→API_2,API_2→API_3,API_3→API_4,该调用链4由于包含调用链2,且调用链2与调用链4的相似度大于阈值d。因此,该调用链4以及调用链4所属的描述语句d将被筛选出。

在一种可能的示例中,若一个描述语句d中存在被筛选出的调用链以及未被筛选出的调用链,则该描述语句d将被筛选出,并且该描述语句d中未被筛选出的调用链将被删除。

例如,上述调用链2与调用链4属于同一描述语句d,服务器210将描述语句d中的调用链2删除后,将删除后的描述语句d进行保留。

值得注意的是,上述阈值d为60%仅为示例,不应理解为对本申请的限定,该阈值d还可以为70%等。

示例2,与至少一个调用链的相似度大于或等于第六阈值,且对应相同问题的标识信息不同。

其中,描述语句d包括调用链对应的标识信息,第四调用链对应的标识信息用于指示,第四调用链对应的问题的处理结果。该第四调用链为描述语句集d中的任一调用链。

如上表2所示的问题1-问题解读1-调用链,表示在需要解决问题1时,根据问题1和问题解读1对应的调用链指示的API调用顺序,依次调用多个API来执行。在一问题下具有多个调用链时,会存在该调用链对应的标识信息。以表示在该问题下该多个调用链对应的处理结果可能是不同的。如易混淆或者相反的。

以第五阈值为阈值e,服务器判断出第四调用链与描述语句集d中除第四调用链外的至少一个相似度大于或等于阈值e的第五调用链,进而判断该第四调用链和第五调用链对问题的处理结果是否具有不同或相混淆的结果。

示例性的,上述问题为第四调用链和第五调用链解决相同或相似的问题。

针对于上述判断第四调用链和第五调用链对问题的处理结果,以下提供了一种可能的示例。

服务器210从描数据语句集d中获取第四调用链所属的描述语句d4,和第五调用链所属的描述语句d5,进而从该描述语句d4中确定第四调用链对应的问题解读d4以及标识信息d4,以及从该描述语句d5中确定第五调用链对应的问题解读d5以及标识信息d5。服务器210判断问题解读d4与问题解读d5的相似度,若问题解读d4与问题解读d5的相似度大于设定阈值,则表示第四调用链和第五调用链解决相同或相似的问题。进而,服务器210判断标识信息d4与标识信息d5是否不同,若不同,则将筛选出第四调用链以及对应的描述语句d,和第五调用链以及对应的描述语句d。若相同,则筛选出第四调用链与第五调用链中包括调用对最多的调用链,以及对应的描述语句。

在一种可能的情形中,该第四调用链与第五调用链属于同一描述语句d,在该第四调用链与第五调用链解决相同或相似的问题下,若第四调用链与第五调用链对应的标识信息不同,则在描述语句d中该第四调用链和第五调用链都保留。若第四调用链与第五调用链对应的标识信息相同,则服务器210对第四调用链与第五调用链中包括调用对少的调用链进行删除,并将进行删除处理后的描述语句d保留。

值得注意的是,上述是以调用链对应的问题解读来判断两个调用链解决的问题是否相同或相似的,在本申请的其他实施例中,还可根据调用链对应的问题来进行判断,或者根据调用链对应的问题和问题解读来进行判断。以及上述设定的阈值可为阈值c。

示例3,与对应的参考调用链之间的相似度大于或等于第四阈值,以及与至少一个调用链的相似度大于或等于第五阈值,且对应相同问题的标识信息不同。

该示例3为示例1和示例2的组合,因此,对于示例3的内容,可参考上述示例1和示例2的表述在此不予赘述。

针对于上述语句处理方法,本申请还提供了第二种可能的实施例。

在LLM应用于数据库场景时,LLM需要根据用户的语音或行为匹配相对应的SQL语句,进而利用该SQL语句增加、删除、修改或查询等数据库中的数据。计算设备可执行该语句处理方法,该计算设备可为如图2中的服务器210,服务器210发送第二描述语句至的计算设备可为任意终端设备或显示设备等,如该任意终端设备为图2中的终端220、且图3中的数据为SQL为例进行说明。第一描述语句可称为描述语句a,第二描述语句可称为描述语句b,第三描述语句可称为描述语句c。

本实现方式与上述语句处理方法的第一种可能的实现方式存在以下区别。

区别1:SQL的描述语句a为根据设定的文档标准c填写得到的,针对于一个SQL的描述语句a的表现形式,以下表3示出了一种可能的示例。

表3

值得注意的是,文档标准c相较于文档标准a,增加了易混淆的文档属性,质量、SQL间的区分、问题-问题解读-SQL,上述正确/错误为对应的标识信息。上述名称、参数、易混淆文档属性、描述、质量、SQL-区分、问题-问题解读-SQL为描述语句a包括的多种类型的子语句。上表3仅为本申请提供的示例,不应理解为对本申请的限定,在一些情况下,表3还可包括更多类型的语句。示例性的,还可包括使用案例,如该SQL用于检索数据库中的空表。

区别2:服务器210根据多个描述语句a间的相似度,从多个描述语句a中确定描述语句b时,还可基于易混淆属性、或质量等确定多个描述语句a间的相似度。

区别3:相较于上述服务器210确定多个描述语句d包括的调用链两两之间的相似度,进而从描述语句集d中筛选出包含的调用链符合第二条件的描述语句d,在本实施例中,服务器210确定多个描述语句d包括的SQL语句两两之间的相似度,进而从描述语句集d中筛选出包含的SQL语句符合第三条件的描述语句d。

在本申请中,服务器210利用描述语句包括的SQL语句进行匹配,实现以处理方式为导向的方式进行匹配,筛选出解决SQL语句相同或相近的描述语句d。进而,在多个描述语句d包括相同或相近的SQL语句下,仅保留一个描述语句d,实现缩小描述服务器210中语句集包括的描述语句数量。从而,在服务器210利用该少量的描述语句与用户的问题进行匹配时,能提高匹配速度,进而提高了处理效率。以及,由于缩小了服务器210中描述语句集包括的描述语句数量,因此,占用服务器210的存储空间减少,提高了存储空间的利用率。

针对于确定多个描述语句d包括的SQL语句两两之间的相似度,以下提供了两种可能的实施例。

在第一种可能的实施例中,服务器210将各描述语句d包括的SQL语句进行拆解,得到一组SQL短句,该一组SQL短句包括多条单句形式的语句。进而将多个SQL语句对应的SQL短句进行匹配,得到任意两个SQL语句间的相似度。

服务器210将SQL语句拆解为select、where、group by等单句形式的语句,得到一组SQL短句,避免SQL语句中select、where、group by等的顺序,影响对多个描述语句d的匹配。

例如,描述语句d1包括SQL语句d1如下:

SELECT column_name,aggregate_function(column_name)

FROM table_name

WHERE column_name operatorvalue

GROUPBYcolumn_name

描述语句d2包括SQL语句d2如下:

SELECT*FROM Persons WHERE City='Beijing'

该SQL语句d1和SQL语句d2为连续的,将该SQL语句d1拆分为独立的SELECTcolumn_name,aggregate_function(column_name)FROM table_name,WHERE column_nameoperator value,GROUP BY column_name。该SQL语句d2拆分为独立的SELECT*FROMPersons,WHERE City='Beijing'。

服务器210采用精确匹配方式将上述拆分得到的两组SQL短句进行匹配,得到两组SQL短句间的相似度,如为20%。该两组SQL短句间的相似度即为SQL语句d1和SQL语句d2间的相似度。

在第二种可能的实施例中,服务器210对各SQL语句中的跟表相关的字段进行删除或采用xxx替代,得到编辑后的SQL语句。进而服务器210将多个编辑后的SQL语句进行匹配,得到SQL语句间的相似度。

例如,对上述SQL语句d1和SQL语句d2进行编辑得到如下编辑后的SQL语句。

SELECT xxx,xxx

FROM xxx

WHERE xxx operator value

GROUPBYxxx

以及,SELECT*FROM xxxWHERE City=xxx

服务器210将上述两个编辑后的SQL语句进行匹配,得到SQL语句d1和SQL语句d2间的相似度。

在一种可行的示例中,上述精确匹配方式不仅匹配select、where、group by,还将匹配表名称,如上述的table_name、beijing等。

针对于服务210从描述语句集d中筛选出包含的SQL语句符合第一条件的描述语句d,以下提供了三种可能的实施例。

第一种可能的实施例中,筛选出的SQL语句与大于或等于阈值b个SQL语句的相似度大于或等于阈值c。

本实施例的内容相较于上述第一条件的内容,区别在于,本实施例为对SQL进行筛选,进而确定筛选出的SQL语句所属的描述语句d,而第一条件中根据描述语句d中的问题或问题解读等来对描述语句进行筛选。

对于本实施例的筛选过程与上述第一种可能的实施例中第一条件的筛选过程为一致的,因此,本实施例的筛选过程可参照上述第一种可能的实施例中第一条件对应的筛选过程,在此不予赘述。

第二种可能的实施例中,筛选出的SQL语句与至少一个SQL语句的相似度大于或等于第四阈值,且对应相同问题的标识信息不同。

本实施例的内容相较于上述第二条件中的与至少一个调用链的相似度大于或等于第五阈值,且对应相同问题的标识信息不同,区别仅在于,本实施例根据SQL语句进行筛选,而第二条件根据调用链进行筛选,两者的筛选过程为一致的。因此,本实施例中的内容,可参照上述第二条件中示例2的内容,在此不予赘述。

第三种可能的实施例中,筛选出的SQL语句与大于或等于阈值e个SQL语句的相似度大于或等于阈值f,以及筛选出的SQL语句与至少一个SQL语句的相似度大于或等于阈值f,且对应相同问题的标识信息不同。

针对于第三种可能的实施例的内容,可参照上述第一种可能的实施例和第二种可能的实施例,在此不予赘述。

上文中结合图1至图6,详细描述了根据本申请所提供的语句处理方法,下面将结合图7,图7为本申请提供的一种语句处理装置的结构示意图一,描述根据本申请所提供的语句处理装置。语句处理装置700可以用于实现上述方法实施例中服务器210的功能,因此也能实现上述方法实施例所具备的有益效果。

如图7所示,该语句处理装置700包括获取模块701、确定模块702、发送模块703、接收模块704。该语句处理装置700用于实现上述图3至图5中任一所对应的方法实施例中服务器210的功能。在一种可能的示例中,该语句处理装置700用于实现上述语句处理方法的具体过程包括以下过程:

获取模块701,用于获取数据的第一描述语句集。

确定模块702,用于确定第一描述语句集包括的第一描述语句中两两之间的相似度大于第一阈值的第二描述语句。

发送模块703,用于将第二描述语句发送至计算设备。

接收模块704,用于接收计算设备反馈的基于第二描述语句编辑得到的第三描述语句;第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句中,两两间的相似度小于第一阈值。

为进一步实现上述图3至图5中任一所示的方法实施例中的功能。本申请还提供了一种语句处理装置,如图8所示,图8为本申请提供的一种语句处理装置的结构示意图二,该语句处理装置700还包括相似度确定模块705、显示模块706、第一相似度确定模块707、第一筛选模块708、第二相似度确定模块709、第二筛选模块710。

其中,相似度确定模块705,用于根据第一描述语句包括的多种类型的子语句,确定第一描述语句集包括的第一描述语句中两两之间的相似度。

显示模块706,用于显示所述第二描述语句对应的控制部件。

第一相似度确定模块707,确定第四描述语句集包括的第四描述语句中两两之间的相似度。第四描述语句集包括第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句。

第一筛选模块708,用于从第四描述语句集中,筛选出符合第一条件的第四描述语句。

其中,第一条件包括:与大于或等于第二阈值个第四描述语句的相似度大于或等于第三阈值,和/或,与至少一个第四描述语句的相似度大于或等于第四阈值,且对应相同问题的标识信息不同。第四描述语句包括标识信息,该标识信息用于指示第四描述语句对应的问题的处理结果。

第二相似度确定模块709,用于确定第四描述语句集中的第四描述语句包括的调用链的两两之间的相似度。

其中,第四描述语句集包括第三描述语句和第一描述语句集中除第二描述语句外的第一描述语句。第四描述语句包括一个或多个调用链,第四描述语句包括的第一调用链用于指示调用第四描述语句对应的数据解决一个问题的调用顺序。一个调用链包括一个或多个调用对;第二调用链包括的调用对用于指示第二调用链调用的多个数据中具有调用关系的两个数据。

第一调用链或第二调用链为任一调用链。

第二筛选模块710,用于从第四描述语句集中,筛选出包含的调用链符合第二条件的第四描述语句。

其中,第二条件包括:与对应的参考调用链之间的相似度大于或等于第五阈值,和/或,与至少一个调用链的相似度大于或等于第六阈值,且对应相同问题的标识信息不同。第三调用链对应的参考调用链为第四描述语句集中包括调用对的数量小于或等于第三调用链的其他调用链。第四描述语句包括调用链对应的标识信息,第四调用链对应的标识信息,用于指示第四调用链对应的问题的处理结果。第三调用链或第四调用链为任一调用链。

在一种可能的示例中,上述获取模块701、确定模块702、发送模块703、接收模块704、相似度确定模块705、显示模块706、第一相似度确定模块707、第一筛选模块708、第二相似度确定模块709、第二筛选模块710均可以通过软件实现,或者可以通过硬件实现。

示例性的,接下来以获取模块701为例,介绍获取模块701的实现方式。类似的,确定模块702、发送模块703、接收模块704、相似度确定模块705、显示模块706、第一相似度确定模块707、第一筛选模块708、第二相似度确定模块709、第二筛选模块710的实现方式可以参考获取模块701的实现方式。

模块作为软件功能单元的一种举例,获取模块701可以包括运行在计算实例上的代码。其中,计算实例可以为物理主机(计算设备)、虚拟机、容器等。

例如,上述计算实例可以是一台或者多台。例如,获取模块701可以包括运行在多个主机/虚拟机/容器上的代码。需要说明的是,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的区域(region)中,也可以分布在不同的region中。

示例性的,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的可用区(availability zone,AZ)中,也可以分布在不同的AZ中,每个AZ包括一个数据中心或多个地理位置相近的数据中心。其中,通常一个region可以包括多个AZ。

同样,用于运行该代码的多个主机/虚拟机/容器可以分布在同一个虚拟私有云(virtual private cloud,VPC)中,也可以分布在多个VPC中。其中,通常一个VPC设置在一个region内,同一region内两个VPC之间,以及不同region的VPC之间跨区通信需在每个VPC内设置通信网关,经通信网关实现VPC之间的互连。

模块作为硬件功能单元的一种举例,获取模块701可以包括至少一个计算设备,如服务器等。或者,获取模块701也可以是利用专用集成电路(application-specificintegrated circuit,ASIC)实现、或可编程逻辑器件(programmable logic device,PLD)实现的设备等。其中,上述PLD可以是复杂程序逻辑器件(complex programmable logicaldevice,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合实现。

获取模块701包括的多个计算设备可以分布在相同的region中,也可以分布在不同的region中。获取模块701包括的多个计算设备可以分布在相同的AZ中,也可以分布在不同的AZ中。同样,获取模块701包括的多个计算设备可以分布在同一个VPC中,也可以分布在多个VPC中。其中,所述多个计算设备可以是服务器、ASIC、PLD、CPLD、FPGA和GAL等计算设备的任意组合。

需要说明的是,在其他实施例中,获取模块701可以用于执行语句处理方法中的任意步骤,确定模块702、发送模块703、接收模块704、相似度确定模块705、显示模块706、第一相似度确定模块707、第一筛选模块708、第二相似度确定模块709、第二筛选模块710可以用于执行语句处理方法中的任意步骤。获取模块701、确定模块702、发送模块703、接收模块704、相似度确定模块705、显示模块706、第一相似度确定模块707、第一筛选模块708、第二相似度确定模块709、第二筛选模块710负责实现的步骤可根据需要指定,通过获取模块701、确定模块702、发送模块703、接收模块704、相似度确定模块705、显示模块706、第一相似度确定模块707、第一筛选模块708、第二相似度确定模块709、第二筛选模块710分别实现语句处理方法中不同的步骤来实现语句处理装置的全部功能。

值得注意的是,前述实施例的服务器210可对应于该语句处理装置700,并可以对应于执行根据本申请实施例的方法图3至图5对应的相应主体,并且语句处理装置700中的各个模块的操作和/或功能分别为了实现图3至图5中对应实施例的各个方法的相应流程,为了简洁,在此不再赘述。

另外,图7或图8所示出的语句处理装置700也可以通过通信设备来实现,这里的通信设备可以是指前述实施例中的服务器210,或者,当该通信设备为应用于服务器210的芯片或芯片系统时,该语句处理装置700也可通过芯片或芯片系统来实现。

本申请实施例还提供一种芯片系统,该芯片系统包括控制电路和接口电路,该接口电路用于获取数据的第一描述语句集,控制电路用于根据该第一描述语句集实现上述方法中服务器210的功能。

在一种可能的设计中,上述芯片系统还包括存储器,用于保存程序指令和/或数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。

本申请还提供一种计算设备。如图9所示,图9为本申请提供的一种计算设备的结构示意图,该计算设备900包括:总线902、处理器904、存储器906和通信接口908。处理器904、存储器906和通信接口908之间通过总线902通信。计算设备900可以是服务器或终端设备。值得注意的是,本申请不限定计算设备900中的处理器、存储器的个数。

总线902可以是,但不限于:PCIe总线、通用串行总线(universal serial bus,USB),或者集成电路总线(inter-integrated circuit,I2C)、EISA总线、UB、CXL、CCIX等。总线902可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。总线902可包括在计算设备900各个部件(例如,存储器906、处理器904、通信接口908)之间传送信息的通路。

处理器904可以包括中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、微处理器(micro processor,MP)或者数字信号处理器(digital signal processor,DSP)等处理器中的任意一种或多种。

存储器906可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。存储器906还可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器,机械硬盘(hard diskdrive,HDD)或固态硬盘(solid state drive,SSD)。

存储器906中存储有可执行的程序代码,处理器904执行该可执行的程序代码以分别实现前述获取模块、确定模块、接收模块的功能,从而实现上述语句处理方法。也即,存储器906上存有用于执行语句处理方法的指令。

或者,存储器906中存储有可执行的代码,处理器904执行该可执行的代码以分别实现前述获取模块、确定模块、接收模块的功能,从而实现语句处理方法。也即,存储器906上存有用于执行语句处理方法的指令。

通信接口908使用例如但不限于网络接口卡、收发器一类的收发模块,来实现计算设备900与其他设备或通信网络之间的通信。

本申请实施例还提供了一种计算设备集群。该计算设备集群包括至少一台计算设备900。该计算设备可以是服务器、光刻机,例如是中心服务器、边缘服务器,或者是本地数据中心中的本地服务器。在一些实施例中,计算设备900也可以是台式机、笔记本电脑或者智能手机等终端设备。

计算设备集群中的一个或多个计算设备900中的存储器906中可以存有相同的用于执语句处理方法的指令。

在一些可能的实现方式中,计算设备集群中的一个或多个计算设备可以通过网络连接。其中,该网络可以是广域网或局域网等等。

本申请实施例还提供了一种包含指令的计算机程序产品。该计算机程序产品可以是包含指令的,能够运行在计算设备上或被储存在任何可用介质中的软件或程序产品。当该计算机程序产品在至少一个计算设备上运行时,使得至少一个计算设备执行语句处理方法。

本申请实施例还提供了一种计算机可读存储介质。该计算机可读存储介质可以是计算设备能够存储的任何可用介质或者是包含一个或多个可用介质的数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘)等。该计算机可读存储介质包括指令,该指令指示计算设备执行语句处理方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其它可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序或指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,数字视频光盘(digital video disc,DVD);还可以是半导体介质,例如,固态硬盘(solid state drive,SSD)。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

相关技术
  • 医学文本识别方法及装置、语句识别模型训练方法及装置
  • 语句处理方法、设备及计算机可读存储介质
  • 数据处理方法、装置、系统、服务端装置和客户端装置
  • 一种语句预处理方法、装置以及语句的解释方法、装置
  • 一种语句预处理方法、装置以及语句的解释方法、装置
技术分类

06120116458991