CN117009483A - 问答服务的生成方法、装置、设备及可读存储介质 - Google Patents
问答服务的生成方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN117009483A CN117009483A CN202310914994.7A CN202310914994A CN117009483A CN 117009483 A CN117009483 A CN 117009483A CN 202310914994 A CN202310914994 A CN 202310914994A CN 117009483 A CN117009483 A CN 117009483A
- Authority
- CN
- China
- Prior art keywords
- question
- component
- answer
- service
- answering
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 124
- 230000006870 function Effects 0.000 claims abstract description 194
- 238000004806 packaging method and process Methods 0.000 claims abstract description 137
- 238000012545 processing Methods 0.000 claims abstract description 122
- 238000001914 filtration Methods 0.000 claims abstract description 52
- 238000012790 confirmation Methods 0.000 claims abstract description 18
- 238000004891 communication Methods 0.000 claims description 73
- 230000008569 process Effects 0.000 claims description 73
- 238000012549 training Methods 0.000 claims description 48
- 239000013598 vector Substances 0.000 claims description 24
- 239000012634 fragment Substances 0.000 claims description 20
- 230000002159 abnormal effect Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 19
- 230000015654 memory Effects 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 10
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 238000011161 development Methods 0.000 abstract description 15
- 238000004519 manufacturing process Methods 0.000 abstract description 8
- 230000018109 developmental process Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000013135 deep learning Methods 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 5
- 230000011218 segmentation Effects 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 238000003062 neural network model Methods 0.000 description 4
- 230000000737 periodic effect Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Databases & Information Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种问答服务的生成方法、装置、设备及可读存储介质,该方法包括:在问答编辑应用中显示功能代码封装组件集合;响应问答编辑应用针对功能代码封装组件集合的组件选择操作,在问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;响应问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;问答服务中的触发组件用于调用问答服务中的问答策略组件,问答服务中的问答策略组件用于对业务问题进行问答过滤处理,问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果。可提高问答服务生产效率,降低开发成本。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种问答服务的生成方法、装置、设备及可读存储介质。
背景技术
目前大语言模型问答机器人的技术门槛高,研发成本高,现有的开发方式均是以代码的进行的人工开发,人工开发的开发效率低,需要花费大量时间和精力完成任,实施门槛高,需要技术人员深入理解大语言模型的底层算法,准备庞大的训练数据集,人工成本高昂,需要人工干预开发才能完成任务,实施错误率高,容易出现人为错误和漏洞,从而影响工作的质量和效率。
发明内容
本申请实施例提供了一种问答服务的生成方法、装置、设备及可读存储介质,可以无需编写代码开发问答服务,提高了生产效率,降低了开发成本。
本申请实施例一方面提供了一种问答服务的生成方法,包括:
在问答编辑应用中显示功能代码封装组件集合;功能代码封装组件集合包括一个或多个触发组件、一个或多个问答策略组件以及一个或多个语言问答模型组件;
响应问答编辑应用针对功能代码封装组件集合的组件选择操作,在问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;编辑页面还用于显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系;
响应问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;问答服务中的触发组件用于调用问答服务中的问答策略组件,问答服务中的问答策略组件用于对业务问题进行问答过滤处理,问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果。
本申请实施例一方面提供了一种问答服务的生成装置,包括:
组件显示模块,用于在问答编辑应用中显示功能代码封装组件集合;所述功能代码封装组件集合包括一个或多个触发组件、一个或多个问答策略组件以及一个或多个语言问答模型组件;
组件编辑模块,用于响应所述问答编辑应用针对功能代码封装组件集合的组件选择操作,在所述问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;所述编辑页面还用于显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系;
组件确认模块,用于响应所述问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;所述问答服务中的触发组件用于调用所述问答服务中的问答策略组件,所述问答服务中的问答策略组件用于对所述业务问题进行问答过滤处理,所述问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果。
本申请实施例一方面提供了一种计算机设备,包括:处理器、存储器以及网络接口;
处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能,存储器用于存储计算机程序,计算机程序被处理器执行时,使得该计算机设备执行本申请实施例提供的方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行,以使得具有该处理器的计算机设备执行本申请实施例提供的方法。
本申请实施例一方面提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行本申请实施例提供的方法。
本申请实施例通过在问答编辑应用中显示功能代码封装组件集合;功能代码封装组件集合包括一个或多个触发组件、一个或多个问答策略组件以及一个或多个语言问答模型组件;响应问答编辑应用针对功能代码封装组件集合的组件选择操作,在问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;编辑页面还用于显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系;响应问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;问答服务中的触发组件用于调用问答服务,问答服务中的问答策略组件用于对业务问题进行问答过滤处理,问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果。可以提供各类支持独立部署的功能代码封装组件,实现功能代码封装组件的灵活接入,通过用户所选择的功能代码封装组件之间的处理流程连接关系生成问答服务,可以让不具备专业编程知识的人员,通过可视化的功能代码封装组件和处理流程连接关系来开发问答服务,而非编写代码来开发问答服务,提高了问答服务开发的生产效率和通用性,降低了开发成本和实施错误率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构示意图;
图2是本申请实施例提供的一种生成问答服务的场景示意图一;
图3是本申请实施例提供的一种生成问答服务的场景示意图二;
图4是本申请实施例提供的一种问答服务的生成方法的流程示意图一;
图5是本申请实施例提供的一种生成问答服务的场景示意图三;
图6是本申请实施例提供的一种问答服务的生成方法的流程示意图二;
图7是本申请实施例提供的一种问答服务的生成方法的流程示意图三;
图8是本申请实施例提供的一种问答服务的生成装置的结构示意图;
图9是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
深度学习(Deep Learning,DL)是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。
本申请实施例提供的方案涉及人工智能的深度学习技术,具体通过如下实施例进行说明。
请参见图1,图1是本申请实施例提供的一种网络架构示意。该网络架构示意图可以包括工作服务器100、终端设备200、通信服务器300和终端设备400,其中,工作服务器100可以与终端设备200之间存在通信连接,工作服务器100可以与通信服务器300之间存在通信连接,通信服务器300可以与终端设备400之间存在通信连接。其中,上述通信连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接,还可以通过其它方式,本申请在此不做限定。
应该理解,终端设备200可以安装有问答编辑应用,当该问答编辑应用运行于终端设备200中时,可以与工作服务器100进行数据交互,工作服务器100也即是问答编辑应用的后台服务器。终端设备200可以通过问答编辑应用生成问答服务,问答服务可以通过该通信应用进行访问。终端设备400可以安装有通信应用,当该通信应用运行于终端设备400中时,可以与通信服务器300进行数据交互,通信服务器300也即是通信应用的后台服务器。其中,问答服务是指一种可以通过语言问答模型生成问题回答的智能服务,该问答服务可以为独立的客户端,也可以为集成在通信应用中的嵌入式子客户端。工作服务器100与通信服务器300可以集成为同一服务器,终端设备200与终端设备400也可以是同一终端设备,在此不做限定。
具体的,终端设备200安装有问答编辑应用,终端设备200的问答编辑应用可以显示功能代码封装组件集合,功能代码封装组件集合包括若干个触发组件、若干个问答策略组件以及若干个语言问答模型组件。
其中,功能代码封装组件是指通过使用各种预先编写好的程序模块和库,具有预定的功能函数的组件,功能函数用于对用户输入的业务问题进行函数处理。触发组件是整个问答服务工作流程运行的起始组件,触发组件可以用于检测用户所提出的业务问题是否满足问答触发条件,且可以在问题满足问答触发条件时,调用问答服务中的问答策略组件。问答策略组件是对业务问题进行过滤处理的组件,可以对语言问答模型组件无法处理的业务问题进行过滤。语言问答模型组件可以对过滤处理后的业务问题进行语义识别,输出业务问题的问答服务结果。
终端设备200可以在问答编辑应用中触发组件选择操作,在问答编辑应用的编辑页面中选择功能代码封装组件,通过拖动或者创建的方式,在问答编辑应用的编辑界面显示所选择的功能代码封装组件,再通过连线的方式,创建所选择功能代码封装组件之间的处理流程连接关系,处理流程连接关系可以表征至少两个功能代码封装组件的流程先后顺序。
终端设备200可以在问答编辑应用中触发组件配置操作,显示参数配置页面,进一步在问答编辑应用的参数配置页面中,修改功能代码封装组件的组件信息,组件信息可以包括处理流程连接关系、实例名称标识和实例模板标识,实例名称标识是自定义的功能代码封装组件的名称,实例模板标识用于确定功能代码封装组件所应用的功能函数,通过功能函数对业务问题进行函数处理。例如问答策略组件中的权限判断子组件就可以通过功能函数userlist.find()在拥有提问权限的用户表uesrlist(问题权限范围)中进行查找,将没有返回结果的业务问题进行过滤。
终端设备200可以在问答编辑应用中触发组件确认操作,通过所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务。
该问答服务可以通过通信应用访问,终端设备400安装有通信应用,终端设备400的通信应用可以显示问答窗口,用户可以在问答窗口输入业务问题。其中,业务问题包括触发参数,当触发参数足问答服务中触发组件所指示的问答触发条件时,终端设备400可以将业务问题发送至通信服务器300,通信服务器300再将业务问题转发至工作服务器100,工作服务器100通过问答服务所选择的功能代码封装组件,对业务问题进行处理,得到业务问题的问答服务结果,将问答服务结果返回至通信服务器300,通信服务器300将问答服务结果发送至终端设备400,终端设备400中的通信应用可以在问答窗口中,显示用户输入的业务问题的问答服务结果。
本申请实施例可以提供各类支持独立部署的功能代码封装组件,实现功能代码封装组件的灵活接入,通过用户所选择的功能代码封装组件之间的处理流程连接关系生成问答服务,可以让不具备专业编程知识的人员,通过可视化的功能代码封装组件和处理流程连接关系来开发问答服务,而非编写代码来开发问答服务,提高了问答服务开发的生产效率和通用性,降低了开发成本和实施错误率。
请参见图2,图2是本申请实施例提供的一种生成问答服务的场景示意图一,在终端设备200可以安装有问答编辑应用,在页面场景210中,问答编辑应用可以在页面212中显示功能代码封装组件集合,代码封装组件集合可以包括触发组件(如可以包括应用触发组件和表单触发组件)、问答策略组件(如可以问题判断子组件和频率控制子组件)和多个不同算法类型的语言问答模型组件等。
用户可以点击选择控件211,可以在问答编辑应用中触发组件选择操作,在页面212中拖拽所选择的功能代码封装组件至问答编辑应用的编辑页面213中。
终端设备200中的问答编辑应用可以显示所选择的触发组件、问答策略组件以及语言问答模型组件,例如可以分别为页面场景220中的应用触发组件、问答策略组件(包括问题判断子组件、频率控制子组件和权限判断子组件)和语言问答模型组件。其中,应用触发组件可以是整个问答服务工作流程运行的起始组件,当用户在该问答服务的独立页面输入业务问题时,就可以通过应用触发组件启动问答服务所提供的功能,并调用问答服务中的问答策略组件。问答策略组件中的问题判断子组件用于过滤包含业务禁用词,或者业务问题的文件格式为问题处理异常格式的业务问题,业务禁用词是指业务问题中不允许使用的词语,可以是违法违规的词语,也可以是仅为符号、空格等组成无法表达实际语言含义的词语。问题处理异常格式是针对所选择的语言问答模型组件而具体设置的,例如所选择的语言问答模型组件只能处理文本消息,则可以设置问题处理异常格式为图片、音频等语言问答模型无法处理的业务问题的文件格式。问答策略组件中的频率控制子组件用于过滤同一用户调用问答服务的频率超出频率控制子组件所指示的过滤阈值的业务问题,调用问答服务的频率的单位时间范围可以是一小时、一天或者一周,在此不做限制。问答策略组件中的权限判断子组件用于过滤用户的提问权限不属于问题权限范围的业务问题。
在页面场景220中,用户可以点击连接控件221,在问答编辑应用中触发组件编排操作,在应用触发组件处,拖动连接控件221至问题判断子组件,创建应用触发组件与问题判断子组件的处理流程连接关系,将问题判断子组件确定为应用触发组件的下一流程的功能代码封装组件,同样的,在问题判断子组件处,用户可以通过连接控件221确定频率控制子组件为问题判断子组件的下一流程的功能代码封装组件,同样的,可以确定权限判断子组件为频率控制子组件的下一流程的功能代码封装组件,语言问答模型组件为权限判断子组件的下一流程的功能代码封装组件,从而完成所选择的功能代码封装组件的处理流程连接关系的创建。
用户可以点击连接控件222,在问答编辑应用中触发组件配置操作,点击问题判断子组件,则可以在问答编辑应用中显示参数配置页面223,配置所选择的问题判断子组件的业务禁用词和问题处理异常格式,例如可以是将业务禁用词设置为禁用词组A,确定图片格式和音频格式为问题处理异常格式。
用户可以点击保存控件224,在问答编辑应用中触发问答服务确认操作,问答编辑应用通过用户所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务。
可以理解的是,在本申请的具体实施方式中,涉及到的用户数据(如业务问题、提问频率及提问权限等),当本申请以上以及以下实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
请参见图3,图3是本申请实施例提供的一种生成问答服务的场景示意图二,在终端设备400可以安装有通信应用,终端设备400可以通过通信应用访问问答服务。在页面场景410中,终端设备400可以在通信应用中显示问答窗口,用户可以在问答窗口中输入业务问题A,业务问题A中包括触发参数,若触发参数满足该问答服务中触发组件所指示的问答触发条件(可以是当用户在该问答服务的独立页面输入业务问题时,调用问答服务),则通过触发组件将业务问题A发送至通信服务器300,通信服务器300将业务问题A转发至工作服务器100,工作服务器100通过问答服务所选择功能代码封装组件,对业务问题A进行处理,得到业务问题A的问答服务结果,将问答服务结果返回至通信服务器300,通信服务器300将问答服务结果发送至终端设备400,如页面场景420所示,终端设备400中的通信应用可以在问答窗口中,显示用户输入的业务问题A的问答服务结果A。
请参见图4,图4是本申请实施例提供的一种问答服务的生成方法的流程示意图一,该问答服务的生成方法可以由计算机设备执行,计算机设备可以是如图1所示的终端设备200或者工作服务器100。如图4所示,该方法可以包括:
步骤S101,在问答编辑应用中显示功能代码封装组件集合;功能代码封装组件集合包括一个或多个触发组件、一个或多个问答策略组件以及一个或多个语言问答模型组件;
具体的,计算机设备可以在问答编辑应用中显示功能代码封装组件集合,功能代码封装集合可以包括若干个触发组件、若干个问答策略组件和若干个语言问答模型组件。功能代码封装组件集合还可以包括用于消息通知,调用其他平台的API接口,终止流程和空操作等其他功能组件,本申请实施例在此不做限制。
其中,功能代码封装组件是指具有功能函数且具有预定义的行为和属性(即内部的代码逻辑和名称、参数、返回值等属性)的组件,功能函数可以是通过使用各种预先编写好的程序模块和库填充到功能代码封装组件中。触发组件可以用于检测用户所提出的业务问题是否满足问答触发条件,且可以在问题满足问答触发条件时,调用问答服务中的问答策略组件。问答策略组件是对业务问题进行过滤处理的组件,可以对语言问答模型组件无法处理的业务问题进行过滤。语言问答模型组件可以对过滤处理后的业务问题进行语义识别,输出业务问题的问答服务结果。
不同触发组件所指示的问题触发条件不同,例如触发组件可以包括应用触发组件、表单触发组件、提及触发组件、切入触发组件和周期触发组件等。其中,应用触发组件的问题触发条件可以是用户通过在单聊页面进行输入业务问题的方式来调用问答服务;表单触发组件的问题触发条件可以是用户提交表单来调用问答服务;提及触发组件的问题触发条件可以是用户在聊天中提及(可以是艾特,@)问答服务(或者表征问答服务的特定名称)来调用问答服务;切入触发组件的问题触发条件可以是,用户从聊天页面切入到问答服务的单聊页面来调用问答服务;周期触发组件问题触发条件可以不需要用户主动调用,而由时间周期,工作(事件)周期等自动调用问答服务,例如可以每隔1天周期性的调用问答服务中的问答策略组件。触发组件的问题触发条件可以通过不同的功能函数以及具体的工作流程来确定,本申请实施例在此不做限制。
不同问答策略组件过滤业务问答的方式不同,例如问答策略组件可以包括问题判断子组件、频率控制子组件和权限判断子组件。其中,问题判断子组件可以过滤包含业务禁用词,或者业务问题的文件格式为问题处理异常格式的业务问题,业务禁用词是指业务问题中不允许使用的词语,可以是违法违规的词语,也可以是仅为符号、空格等组成无法表达实际语言含义的词语。问题处理异常格式是针对所选择的语言问答模型组件而具体设置的,例如所选择的语言问答模型组件只能处理文本消息,则可以设置问题处理异常格式为图片、音频等语言问答模型无法处理的业务问题的文件格式。频率控制子组件用于过滤同一用户调用问答服务的频率超出频率控制子组件所指示的过滤阈值的业务问题,调用问答服务的频率的单位时间范围可以是一小时、一天或者一周,在此不做限制。权限判断子组件用于过滤用户的提问权限不属于问题权限范围的业务问题。
可以理解,问答策略组件可以通过各种逻辑判断,来过滤业务问题,并让流程走向不同的流向,如权限判断子组件中用户的提问权限属于问题权限范围的业务问题可以流向语言问答模型组件,而用户的提问权限不属于问题权限范围的业务问题可以流向进行空操作的功能代码封装组件和“无提问权限”的消息通知的功能代码封装组件。
不同语言问答模型组件中所搭建的语言问答模型的算法类型不同,算法类型可以是指语言问答模型的训练文本集来自不同垂直领域,例如垂直领域可以分别为电商客服、通信聊天助手、智能教育问答等。也可以是所采用的初始语言模型不同,训练方法不同,如循环神经网络(Recurrent Neural Network,RNN)、长短期记忆网络(Long Short-TermMemory,LSTM)等,本申请实施例在此不做限制。
其中,语言问答模型组件中所搭建的语言问答模型的训练过程可以是:获取训练文本集,过滤训练文本集中的业务停用词,对过滤后的训练文本集进行文本划分,得到M个文本片段,对M个文本片段的出现次数进行统计,得到M个文本片段分别对应的文本频率;M为正整数;获取初始语言模型,基于M个文本片段和M个文本频率建立初始语言模型的文本词典;文本词典包括M个文本片段分别对应的词向量;获取问答样本,通过文本词典构建问答样本对应的问答词向量,通过问答词向量对初始语言模型的模型参数进行调整,直至初始语言模型满足模型收敛条件时,得到语言问答模型组件。
具体的,计算机设备可以获取训练文本集,训练文本集可以包括常规的自然预料(网页文本、新闻文本、小说文本等等),还可以包括针对业务需求的技术性语料(如教育文本等等),计算机设备可以对训练文本集进行数据清洗,对训练文本集进行重新审查和校验,删除重复的、有缺失值的、有无效值的训练文本,得到具有数据一致性的训练文本集。
计算机设备可以对数据清洗后的训练文本集去除业务停用词,业务停用词是指在自然语言文本中常见,但在语义分析中无特定含义的词语或者标点符号,如在中文文本中,业务停用词可以包括:“的”、“了”、“是”、“在”、“有”等。在英文文本中,业务停用词可以包括:“the”、“a”、“an”、“in”等。
计算机设备可以对去除业务停用词的训练文本集进行文本划分(也可以称之为分词),文本划分可以通过规则匹配的方式或者概率匹配的方式,以概率匹配的方式对训练文本集A中的训练文本C进行文本划分为例,对于训练文本C的文本划分会有分词方案S,文本划分的任务就是在分词方案S中找出划分的词语在训练文本集A中出现概率P(S|C)最大的方案,根据贝叶斯公式可以计算P(S|C)概率如公式(1)所示:
其中,P(C)是训练文本C在训练文本集A中出现的概率,P(C|S)为分词方案还原训练文本C的概率,分词方案S将训练文本集划分为M个文本片段(文本片段W1、文本片段W2、……、文本片段WM),那么P(S)=∑M=iP(Wi),P(Wi)为文本片段Wi在训练文本集A中出现的次数与训练文本集A中的总词数的比值。
计算机设备可以统计文本划分后的文本片段Wi在训练文本集A中的出现次数,得到M个文本片段分别对应的文本频率,文本频率也可以是文本片段在训练文本集A中的概率,即P(Wi)。
计算机设备可以通过M个文本片段和M个文本频率建立初始语言模型的文本词典。其中,文本词典可以包括M个文本片段分别对应的词向量,词向量是将文本数据转换为模型可接受的数值表示形式,可以还包括文本片段Wi在训练文本C中位置、文本片段Wi的编号和文本片段Wi的还原词形。还原词形是指将考虑文本片段的上下文语境和词性还原为文本片段的原始形态,例如,将“吃饭了”和“吃了饭”都还原为“吃饭”。
初始语言模型可以是神经网络模型,如循环神经网络、长短期记忆网络。其中,初始语言模型可以由多个隐藏层和一个输出层组成。
计算机设备可以设置初始语言模型的隐藏层大小、学习率等。其中,学习率,是指根据模型收敛条件确定的梯度下降步长幅度,影响模型收敛速度。梯度是指在梯度下降算法(Gradient Descent)中,调整初始语言模型中隐藏层的参数值。
计算机设备可以将文本词典中的词向量转换为初始语言模型的问答训练序列和问答目标序列,问答训练序列和问答目标序列也就是问答样本。
计算机设备可以将问答训练序列输入至初始语言模型中,并根据预定义的损失函数进行训练,得到初始语言模型在输出层输出的问答预测结果。其中,损失函数可以是交叉熵(Cross Entropy)损失函数、均方误差(Mean Squared Error)损失函数等,在此不做限制。
计算机设备可以根据计算的梯度来调整初始语言模型隐藏层中的参数值来最小化损失函数,当初始语言模型的问答预测结果与问答目标序列之间满足预设的模型收敛条件时,得到语言问答模型组件。其中,模型收敛条件是指问答预测结果与问答目标序列之间的性能度量低于预设值,性能度量可以包括准确率(Accuracy)、精确率(Precision)、召回率(Recall)等。
可以理解,在初始语言模型的训练过程中,可以使用dropout(dropout,神经网络模型中的一种隐藏层,用于在训练过程中随机将一些神经元设置为0,以降低神经网络模型的过拟合风险)、批量归一化(Batch Normalization,可以通过对每个小批量的输入进行归一化操作,使得训练数据中每个特征的均值接近0,方差接近1,来加速训练过程并提高神经网络模型的稳定性和泛化能力)等技巧来提高模型的训练效果。
步骤S102,响应问答编辑应用针对功能代码封装组件集合的组件选择操作,在问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;编辑页面还用于显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系;
具体的,再请一并参见图5,图5是本申请实施例提供的一种生成问答服务的场景示意图三,如图5所示,问答编辑应用可以主要包括流编排画布、应用选择器、图像渲染引擎、应用参数配置器、调试器和版本控制器等组件。
其中,流编排画布,可以用于承载功能代码封装组件的显示效果。应用选择器,可以在拖拽功能代码封装组件时在编辑页面中进行定位,保证用户选中正确的功能代码封装组件。图形渲染引擎可以将功能代码封装组件及其之间的连线(处理流程连接关系)进行图形化呈现的渲染工作。可以用圆形模块表示触发组件;菱形模块主要表示问答策略组件;方形模块表示具体的应用动作,比如发消息,调用其他平台的API接口,终止流程和空操作等。应用参数配置器可以对功能代码组件进行图形化配置,并在应用参数配置器中输入相关的配置信息,如下述的实例模板标识等。调试器可以运行问答服务,生成下述的执行日志表,以便通过日志信息统计问答服务的运行状态和服务质量。版本控制器可以保存问答服务的不同版本,可以通过版本控制器实现问答服务不同版本之间的切换和记录每次版本变更的信息。
计算机设备可以响应问答编辑应用对功能代码封装组件集合的组件选择操作(可以是通过图5所示的应用选择器),将所选择的功能代码封装组件拖拽至问答编辑应用的编辑页面中,也可以先选择所需的功能代码封装组件,在问答编辑应用的编辑页面的指定位置,直接创建所选择的功能代码封装组件。
计算机设备可以响应问答编辑应用的组件编排操作,通过连线创建功能代码封装组件之间的处理流程连接关系,例如创建触发组件与问答策略组件之间的处理流程连接关系,可以在触发组件处,连线至问答策略组件,将问答策略组件确定为触发组件的下一流程的功能代码封装组件。可选的,计算机设备可以响应对触发组件与问答策略组件之间的第一组件编排操作和问答策略组件与语言问答模型组件之间的第二组件编排操作,编排的过程可以是:响应问答编辑应用针对编辑页面中所选择的功能代码封装组件的第一组件编排操作,为所选择的触发组件和问答策略组件之间创建处理流程连接关系,基于所选择的触发组件和问答策略组件之间的处理流程连接关系,将所选择的触发组件确定为用于执行问答服务起始流程的功能代码封装组件,将所选择的问答策略组件确定为用于执行触发组件的下一流程的功能代码封装组件;响应问答编辑应用针对编辑页面中所选择的功能代码封装组件的第二组件编排操作,为所选择的问答策略组件和语言问答模型组件之间创建处理流程连接关系,基于所选择的问答策略组件和语言问答模型组件之间的处理流程连接关系,将所选择的语言问答模型组件确定为用于执行问答策略组件的下一流程的功能代码封装组件。
具体的,计算机设备可以响应问答编辑应用针对编辑页面中,对所选择触发组件与问答策略组件之间的第一组件编排操作,可以在触发组件处,连线至问答策略组件,为所选择的触发组件和问答策略组件之间创建处理流程连接关系,将所选择的触发组件确定为用于执行问答服务起始流程的功能代码封装组件,将所选择的问答策略组件确定为用于执行触发组件的下一流程的功能代码封装组件。
同样的,计算机设备还可以响应问答编辑应用针对编辑页面中,对所选择的问答策略组件和语言问答模型组件之间的第二组件编排操作,可以在问答策略组件处,连线至语言问答模型组件,为所选择的问答策略组件和语言问答模型组件之间创建处理流程连接关系,将所选择的语言问答模型组件确定为用于执行问答策略组件的下一流程的功能代码封装组件。其中,问答策略组件可以包括问题判断子组件、频率控制子组件和权限判断子组件。
可选的,计算机设备针对问题判断子组件、频率控制子组件和权限判断子组件编排的过程可以是:响应问答编辑应用针对编辑页面中所选择的问题判断子组件和频率控制子组件的第三组件编排操作,为所选择的问题判断子组件和频率控制子组件之间创建处理流程连接关系,基于所选择的问题判断子组件和频率控制子组件之间的处理流程连接关系,将所选择的问题判断子组件确定为用于执行问答策略起始流程的功能代码封装组件,将所选择的频率控制子组件确定为用于执行问题判断子组件的下一流程的功能代码封装组件;响应问答编辑应用针对编辑页面中所选择的频率控制子组件和权限判断子组件的第四组件编排操作,为所选择的频率控制子组件和权限判断子组件之间创建处理流程连接关系,基于所选择的频率控制子组件和权限判断子组件之间的处理流程连接关系,将所选择的权限判断子组件确定为用于执行频率控制子组件的下一流程的功能代码封装组件。
具体的,计算机设备可以响应问答编辑应用针对编辑页面中,对所选择问题判断子组件与频率控制子组件之间的第三组件编排操作,可以在问题判断子组件处,连线至频率控制子组件,为所选择的问题判断子组件与频率控制子组件之间创建处理流程连接关系,将所选择的问题判断子组件确定为用于执行问答策略起始流程的功能代码封装组件,将所选择的频率控制子组件确定为用于执行问题判断子组件的下一流程的功能代码封装组件。
同样的,计算机设备可以响应问答编辑应用针对编辑页面中,对所选择的频率控制子组件和权限判断子组件之间的第四组件编排操作,可以在问题判断子组件处,连线至频率控制子组件,为所选择的频率控制子组件和权限判断子组件之间创建处理流程连接关系,将所选择的权限判断子组件确定为用于执行频率控制子组件的下一流程的功能代码封装组件。
计算机设备中的问答编辑应用可以在编辑页面显示所选择的触发组件、问答策略组件以及语言问答模型组件,及以显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系。
可选的,计算机设备可以响应对功能代码封装组件的组件配置操作,配置的过程可以是:响应问答编辑应用针对编辑页面中所选择的功能代码封装组件的组件配置操作,在问答编辑应用的参数配置页面中,显示多个实例模板标识,在多个实例模板标识中确定目标实例模板标识;多个实例模板标识包括目标实例模板标识;在问答编辑应用的编辑页面中,基于目标实例模板标识更新所选择的功能代码封装组件;实例模板标识用于确定功能代码封装组件所对应的功能函数,功能函数用于对业务问题进行函数处理。
具体的,计算机设备可以响应对功能代码封装组件的组件配置操作(可以是通过图5所示的应用参数配置器),在问答编辑应用的参数配置页面中,显示多个实例模板标识,实例模板标识可以用于确定该功能代码封装组件所对应的功能函数,功能代码封装组件通过功能函数对业务问题进行函数处理。计算机设备可以在多个实例模板标识中选择所需的实例模板标识,通过所选择的实例模板标识更新该功能代码封装组件。例如在周期触发组件中,选择时间触发(Timer Trigger)模板标识,或者事件触发(Event Trigger)模板标识。例如,在周期触发器中,选择时间触发模板标识,修改实例参数为86400秒,即1天,那么问答服务就会在每隔1天周期性的触发。选择事件触发模板标识,修改实例参数(事件)为气温超过36℃,那么问答服务就会在气温超过36℃时被自动触发。
可选的,计算机设备还可以在问答编辑应用的参数配置页面中,配置功能代码封装组件的实例名称标识、上一流程节点的实例名称标识、下一流程节点的实例名称标识、实例参数等。其中,实例名称标识和下一流程节点的实例名称标识可以共同表征处理流程连接关系,实例参数可以是实例模板标识所对应的功能函数的辅助参数。
计算机设备可以通过修改上一流程节点的实例名称标识、或者下一流程节点的实例名称标识来修改该功能代码封装组件与上一流程节点的功能代码封装组件、或者下一流程节点的功能代码封装组件的处理流程连接关系。计算机设备可以修改实例参数,例如在周期触发器中,选择时间触发模板标识,修改实例参数为86400秒,即1天,那么问答服务就会在每隔1天周期性的触发。
计算机设备可以在问答编辑应用的编辑页面中,通过所选择实例模板标识(或者所确定实例名称标识、所选择的上一流程节点的实例名称标识、所选择的下一流程节点的实例名称标识、所确定的实例参数等)更新该功能代码封装组件。
可选的,计算机设备可以响应对问答策略组件中问题判断子组件的第一组件配置操作、频率控制子组件的第二组件配置操作和权限判断子组件的第三组件配置操作,配置的过程可以是:响应问答编辑应用针对编辑页面中所选择的问题判断子组件的第一组件配置操作,在问答编辑应用的参数配置页面中,配置所选择的问题判断子组件的业务禁用词和问题处理异常格式;响应问答编辑应用针对编辑页面中所选择的频率控制子组件的第二组件配置操作,在参数配置页面中,配置所选择的频率控制子组件的频率阈值;响应问答编辑应用针对编辑页面中所选择的权限判断子组件的第三组件配置操作,在参数配置页面中,配置所选择的权限判断子组件的问题权限范围。
具体的,计算机设备可以响应问答编辑应用针对编辑页面中所选择的问题判断子组件的第一组件配置操作,在问答编辑应用的参数配置页面中,配置所选择的问题判断子组件的业务禁用词和问题处理异常格式。
因为问答服务需要较高的计算成本,因此计算机设备可以选择通过问题判断子组件对用户输入的业务问题进行一层有效性判断,将一些典型的无效问题进行过滤,例如可以将包含业务禁用词,或者业务问题的文件格式为问题处理异常格式的业务问题进行过滤,过滤出来的业务问题引入空操作中不做任何处理。
其中,问题处理异常格式是针对所选择的语言问答模型组件而具体设置的,例如所选择的语言问答模型组件只能处理文本消息,则可以设置问题处理异常格式为图片、音频等语言问答模型无法处理的业务问题的文件格式。业务禁用词可以是指业务问题中不允许使用的词语,可以是违法违规的词语,也可以是自定义的词语。
可选的,问题判断子组件还可以过滤只包含触发参数(例如在切入触发组件中,用户切入至单聊页面,但未进行输入业务问题),以及其他没有业务问题内容(例如在传输过程中缺失业务问题内容的空消息)的业务问题。以及无实际自然语义的业务问题,如仅由符号、表情(如emoji的/s等)、空格、特殊字符(如色值的#66ccff、标记语言的<table>等)等组成的业务问题。
计算机设备可以响应问答编辑应用针对编辑页面中所选择的频率控制子组件的第二组件配置操作,在参数配置页面中,配置所选择的频率控制子组件的频率阈值,控制用户的提问频率(调用问答服务的频率),将同一用户的提问频率超出频率控制子组件所设置的过滤阈值的业务问题进行过滤。
其中,提问频率的单位时间范围可以是一小时、一天或者一周,在此不做限制。例如可以设置单位时间范围为86400秒,即1天。提问次数设置为100。也就是每天允许同一用户调用100次问答服务,用户调用问答服务超过100次之后,后续调用的业务问题就会被过滤。
计算机设备可以响应问答编辑应用针对编辑页面中所选择的权限判断子组件的第三组件配置操作,在参数配置页面中,配置所选择的权限判断子组件的问题权限范围,过滤用户的提问权限不属于问题权限范围的业务问题。
可以将调用问答服务的用户与内置的用户列表对比。如果调用问答服务的用户不在内置的用户列表之内,则过来调用问答服务的用户的业务问题,并返回该用户一个无权限提问的提醒。
步骤S103,响应问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;问答服务中的触发组件用于调用问答服务中的问答策略组件,问答服务中的问答策略组件用于对业务问题进行问答过滤处理,问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果;
具体的,计算机设备可以响应问答编辑应用的问答服务确认操作,通过所选择触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务。问答服务是指通过语言问答模型,生成问题回答的服务,生成的问答服务可以直接在问答编辑应用所支持的应用中接入使用,例如问答编辑应用中支持在通信应用中直接嵌入问答服务,那么在该通信应用中就可以访问问答服务。
可选的,计算机设备可以显示问答服务在运行过程中的日志信息,通过日志信息对问答服务进行调整,显示问答服务在运行过程中的日志信息的过程可以是:基于所选择的触发组件、问答策略组件以及语言问答模型组件,创建针对问答服务的执行日志表,通过执行日志表记录问答服务中功能代码封装组件的日志信息;通过执行日志表显示问答服务运行过程中的日志信息,根据日志信息统计针对问答服务的运行状态和服务质量,基于问答服务的运行状态和服务质量对问答服务中的触发组件、问答策略组件、语言问答模型组件或者处理流程连接关系中的至少一个进行调整。
具体的,计算机设备可以通过所选择的触发组件、问答策略组件以及语言问答模型组件,创建问答服务的执行日志表,执行日志表可以记录问答服务中功能代码封装组件的日志信息,执行日志表可以还包括日志等级和日志内容分类,日志等级可以如表1所示:
表1
/>
日志内容分类可以如表2所示:
表2
分类 | 说明 |
配置日志 | 记录用户新增,删除,修改配置的行为 |
检测日志 | 记录系统运行的检测行为 |
告警日志 | 记录系统运行告警信息 |
运行日志 | 记录整个系统后台运行过程中的行为 |
计算机设备可以通过执行日志表显示问答服务运行过程中的日志信息,通过日志信息统计问答服务的运行状态和服务质量。例如用户再对问答服务的周期触发组件进行配置,将所选择时间触发(Timer Trigger)模板标识更新为事件触发(Event Trigger)模板标识,但是未配置触发的事件(即事件触发模板标识所对应的实例参数),导致周期触发组件无法调用问答服务。则执行日志表可以记录该日志信息的日志等级为ERROR,日志内容分类为配置日志,并详细记录用户的修改行为。其中,服务质量可以是错误日志等级的出现率、问答服务结果的错误率等,在此不做限制。
计算机设备可以通过问答服务的运行状态和服务质量,对问答服务中的触发组件、问答策略组件、语言问答模型组件、上述组件之间的处理流程连接关系、实例模板标识以及实例参数等进行调整,从而可以减少工作失误和人工介入,提高问答服务的准确性和一致性。例如问答服务的运行状态展示出负荷过高,那么可以对问答策略组件中频率控制子组件的频率阈值进行调整,提高频率阈值,来降低问答服务的运行负荷,提高问答服务的服务质量。
可以理解,本申请实施例可以提供各类支持独立部署的功能代码封装组件,实现功能代码封装组件的灵活接入,通过用户所选择的功能代码封装组件之间的处理流程连接关系生成问答服务,问答服务中一般包含触发组件、问答策略组件和语言问答模型组件三个类别,而非采用固定的功能代码封装组件及功能代码封装组件的处理流程关系,用户可以根据业务需求,灵活选择所需的功能代码封装组件,调整其中的处理流程连接关系,来生成符合业务需求的问答服务。
本申请实施例通过在问答编辑应用中显示功能代码封装组件集合;功能代码封装组件集合包括一个或多个触发组件、一个或多个问答策略组件以及一个或多个语言问答模型组件;响应问答编辑应用针对功能代码封装组件集合的组件选择操作,在问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;编辑页面还用于显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系;响应问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;问答服务中的触发组件用于调用问答服务,问答服务中的问答策略组件用于对业务问题进行问答过滤处理,问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果。可以提供各类支持独立部署的功能代码封装组件,实现功能代码封装组件的灵活接入,通过用户所选择的功能代码封装组件之间的处理流程连接关系生成问答服务,可以让不具备专业编程知识的人员,通过可视化的功能代码封装组件和处理流程连接关系来开发问答服务,而非编写代码来开发问答服务,提高了问答服务开发的生产效率和通用性,降低了开发成本和实施错误率。
请参见图6,图6是本申请实施例提供的一种问答服务的生成方法的流程示意图二,该问答服务的生成方法可以由计算机设备执行,计算机设备可以是如图1所示的终端设备400或者通信服务器300。如图6所示,该方法可以包括:
步骤S201,获取问答服务的执行记录表;
具体的,在问答服务完成后,计算机设备可以通过该问答服务所选择的触发组件、问答策略组件以及语言问答模型组件中的组件信息,创建针对问答服务的执行记录表,即将功能代码封装组件所代表的DSL Json结构体保存至后台数据库。当触发组件调用问答策略组件时,计算机设备就可以读取执行记录表带完成问答服务的执行。
其中,组件信息可以包括实例名称标识、下一流程节点的实例名称标识、实例参数、上一流程节点的实例名称标识和实例模板标识实例名称标识与下一流程节点的实例名称标识,或者上一流程节点的实例名称标识可以表征处理流程连接关系。问答策略组件可以包括问题判断子组件、频率控制子组件和权限判断子组件。DSL Json是一个快速、轻量级的JSON解析库。它支持基本的JSON类型,如数字、字符串、数组和对象。
例如执行记录表对周期触发组件的记录可以如表3所示:
表3
组件信息 | 内容 |
实例名称标识 | 周期触发组件 |
实例模板标识 | 时间触发模板标识 |
实例参数 | 86400秒 |
上一流程节点的实例名称标识 | 无 |
下一流程节点的实例名称标识 | 问题判断子组件 |
计算机设备可以通过执行记录表中的实例名称标识,获取功能代码封装组件所对应的功能函数的输入数据变量和输出数据变量,在调用问答服务时,可以通过执行记录表将输入数据变量和输出数据变量替换成对应的数据(如业务问题)。
其中,输入数据变量是指功能代码封装组件在处理流程中的输入,输出数据变量是指功能代码封装组件在处理流程中的输出。步骤S202,在通信应用中显示问答窗口,在问答窗口中输入业务问题;业务问题包括触发参数;若触发参数满足触发组件所指示的问答触发条件,则通过触发组件调用问答服务中的问答策略组件;
具体的,计算机设备可以在通信应用中显示问答窗口,用户在问答窗口中输入业务问题。其中,业务问题可以包括触发参数,触发参数是指用户在发送业务问题时所携带的参数。
业务问题也可以包括提示词(prompt),提示词可以是根据用户需求和应用场景而设计的字词或句子,例如在“今天吃什么”的业务问题中可以包括“午饭”、“中餐”、“外卖”等提示词。提示词也即图4实施例步骤S101中初始语言模型在训练时所使用的还原词形(包括上下文信息和语义信息)。
若触发参数满足问答服务中的触发组件所指示的问答触发条件,则计算机设备就可以通过触发组件启动问答服务所提供的功能,并调用问答服务中的问答策略组件。其中,问答服务是指通过语言问答模型,生成问题回答的服务。
可选的,计算机设备可以将调用问答服务中问答策略组件的业务问题进行加密,开始问答服务的起始流程,过程可以是:在通信应用中显示问答窗口,在问答窗口中输入业务问题;业务问题包括触发参数;若触发参数满足触发组件所指示的问答触发条件,则通过触发组件将业务问题以及消息凭证发送至通信应用对应的通信服务器,以使通信服务器根据消息凭证对业务问题进行加密处理,得到加密密文,将加密密文发送至问答编辑应用对应的工作服务器;消息凭证还存储于工作服务器;工作服务器用于通过消息凭证对加密密文进行解密处理,得到业务问题,工作服务器还用于通过问答服务输出业务问题对应的问答服务结果。
具体的,工作服务器可以对问答服务进行封装,通过对外提供接口来调用问答服务,例如构造网络请求(HTTP请求),计算机设备可以将业务问题写在网络请求报文的请求体(Body部分),工作服务器将最后的问答服务结果通过过报文(HTTP Response)的方式返回给计算机设备。
计算机设备可以在通信应用中建立问答服务,得到问答服务的消息凭证,其中,消息凭据可以包括工作服务器的回调地址(webhook)、加密令牌(Token)和通信密钥(Adaptive Communication Environment key,ACE key)。计算机设备可以在通信应用中设置问答服务的回调地址为工作服务器的回调地址。
计算机设备可以在通信应用中显示问答窗口,用户可以在问答窗口中输入业务问题。其中,业务问题可以包括触发参数,触发参数是指用户在发送业务问题时所携带的参数。
若触发参数满足问答服务中的触发组件所指示的问答触发条件,则计算机设备就可以通过触发组件将业务问题以及消息凭证发送至通信应用对应的通信服务器。
通信服务器可以将收到的业务问题通过加密令牌和通信密钥进行加密,得到加密密文,通信服务器可以将加密密文发送至工作服务器。
工作服务器可以通过触发组件接收该加密密文,使用存储在工作服务器中的加密令牌和通信密钥对加密密文进行解密,得到业务问题,并调用问答服务中的问答策略组件。工作服务器可以通过问答服务中的问答策略组件对业务问题进行过滤处理,通过问答服务中的语言问答模型组件对过滤处理后的业务问题进行问答识别,输出问答服务结果,将问答服务结果发送至计算机设备,在通信应用中的问答窗口中显示问答服务结果。
步骤S203,将业务问题确定为触发组件的输出数据变量,将触发组件的输出数据变量确定为问答策略组件的输入数据变量;
步骤S204,基于执行记录表中的实例模板标识确定问答策略组件所对应的功能函数,通过问答策略组件所对应的功能函数对问答策略组件的输入数据变量进行函数处理,将问答策略组件的输出数据变量确定为语言问答模型组件的输入数据变量;
具体的,计算机设备可以通过触发组件,将所接受到的业务问题作为问答策略组件的输入数据变量,计算机设备可以通过执行记录表中的实例模板标识确定问答策略组件所对应的功能函数。例如问答策略组件中的权限判断子组件就可以通过功能函数userlist.find()在拥有提问权限的用户表uesrlist(问题权限范围)中进行查找,将没有返回结果的业务问题进行过滤。
计算机设备可以通过问答策略组件所对应的功能函数对问答策略组件的输入数据变量进行函数处理,得到问答策略组件的输出数据变量(即问答策略组件过滤后的业务问题)。计算机设备可以将问答策略组件的输出数据变量确定为语言问答模型组件的输入数据变量。
计算机设备通过问答策略组件中的问题判断子组件、频率控制子组件和权限判断子组件过滤业务问题的过程可以是:获取发起业务问题的业务对象的问答统计信息;问答统计信息包括提问频率和提问权限,提问频率是业务对象调用问答服务的频率;提问权限是基于业务对象的对象权限所确定的;获取业务问题,通过问题判断子组件所指示的业务禁用词和问题处理异常格式对业务问题进行过滤处理,将经过问题判断子组件过滤处理后的业务问题传输至频率控制子组件;通过频率控制子组件所指示的频率阈值以及提问频率,对经过问题判断子组件过滤处理后的业务问题进行过滤处理,将经过频率控制子组件过滤处理后的业务问题传输至权限判断子组件;通过权限判断子组件所指示的问题权限范围以及提问权限,对经过频率控制子组件过滤处理后的业务问题进行过滤处理,将经过权限判断子组件过滤处理后的业务问题传输至问答服务中的语言问答模型组件。
具体的,计算机设备可以获取发起业务问题的用户(也可以称之为用户)的问答统计信息。其中,问答统计信息包括提问频率和提问权限,提问频率是业务对象调用问答服务的频率,提问权限是用户的对象权限所确定的。
计算机设备可以获取触发组件传输的业务问题(即触发组件的输出数据变量),通过问题判断子组件所指示的业务禁用词和问题处理异常格式对业务问题进行过滤处理,过滤包含业务禁用词,或者业务问题的文件格式为问题处理异常格式的业务问题,业务禁用词是指业务问题中不允许使用的词语,可以是违法违规的词语,也可以是仅为符号、空格等组成无法表达实际语言含义的词语。问题处理异常格式是针对所选择的语言问答模型组件而具体设置的,例如所选择的语言问答模型组件只能处理文本消息,则可以设置问题处理异常格式为图片、音频等语言问答模型无法处理的业务问题的文件格式。
计算机设备可以将经过问题判断子组件过滤处理后的业务问题传输至频率控制子组件,通过频率控制子组件所指示的频率阈值以及提问频率,对经过问题判断子组件过滤处理后的业务问题进行过滤处理,过滤同一用户调用问答服务的频率超出频率控制子组件所指示的过滤阈值的业务问题,调用问答服务的频率的单位时间范围可以是一小时、一天或者一周,在此不做限制。
计算机设备可以将经过频率控制子组件过滤处理后的业务问题传输至权限判断子组件,通过权限判断子组件所指示的问题权限范围以及提问权限,对经过频率控制子组件过滤处理后的业务问题进行过滤处理,过滤用户的提问权限不属于问题权限范围的业务问题。其中,提问权限也可以通过业务对象的对象权限进行确定,对象权限是指例如在通信应用中,用户为管理员或者聊天群组成员等对象。
计算机设备可以将经过权限判断子组件过滤处理后的业务问题传输至问答服务中的语言问答模型组件(将权限判断子组件过滤处理后的业务问题确定为语言问答模型组件输入数据变量)。本申请实施例通过问答策略组件(可以包括问题判断子组件、频率控制子组件和权限判断子组件等)过滤部分业务问题,可以减少语言问答模型的计算成本的浪费,提高问答服务质量和生产效率。
步骤S205,基于执行记录表中的实例模板标识确定语言问答模型组件所对应的功能函数,通过语言问答模型组件所对应的功能函数对语言问答模型组件的输入数据变量进行函数处理,将语言问答模型组件的输出数据变量确定为问答服务结果;
具体的,计算机设备可以通过执行记录表中的实例模板标识确定语言问答模型组件所对应的功能函数,通过语言问答模型组件所对应的功能函数对语言问答模型组件的输入数据变量(经过权限判断子组件过滤处理后的业务问题)进行函数处理。
语言问答模型组件可以先权限判断子组件对过滤处理后的业务问题进行数据预处理(包括过滤业务停用词和文本划分),并转换为文本词向量,再进行问答识别的过程可以是:获取问答策略组件过滤处理后的业务问题,去除过滤处理后的业务问题中的业务停用词,得到更新业务问题,对更新业务问题进行文本划分,得到N个文本片段;N为正整数;将N个文本片段分别转换为文本词向量,对文本词向量进行编码,得到文本词向量的上下文信息和语义信息,基于语言问答模型组件对上下文信息和语义信息进行语义识别,得到针对业务问题的问答服务结果。
具体的,计算机设备可以对权限判断子组件过滤处理后的业务问题进行数据预处理(包括过滤业务停用词和文本划分)并转换为文本词向量的过程可以参见图4实施例步骤S101的具体描述,在此不再赘述。
计算机设备可以对文本词向量进行编码,得到文本词向量的上下文信息和语义信息。其中文本词向量的上下文信息和语义信息也即是文本片段的还原词形,计算机设备可以通过语言问答模型组件对上下文信息和语义信息进行语义识别,得到业务问题的问答服务结果。在问答服务处理完毕后,执行记录表还会存储各个功能代码封装组件的输入数据变量和输出数据变量。
步骤S206,在问答窗口中显示针对业务问题的问答服务结果。
具体的,计算机设备可以在通信应用中的问答窗口中显示业务问题的问答服务结果。
本申请实施例通过在通信应用中显示问答窗口,在问答窗口中输入业务问题;业务问题包括触发参数;若触发参数满足触发组件所指示的问答触发条件,则通过触发组件调用问答服务中的问答策略组件;基于所选择的触发组件、问答策略组件以及语言问答模型组件,创建针对问答服务的执行记录表,通过执行记录表记录问答服务中功能代码封装组件的组件信息;组件信息包括处理流程连接关系、用于表征问答服务中功能代码封装组件的实例名称标识和实例模板标识;将业务问题确定为触发组件的输出数据变量,根据执行记录表所指示的处理流程连接关系,将触发组件的输出数据变量确定为问答策略组件的输入数据变量;基于执行记录表中的实例模板标识确定问答策略组件所对应的功能函数,通过问答策略组件所对应的功能函数对问答策略组件的输入数据变量进行函数处理,得到问答策略组件的输出数据变量,将问答策略组件的输出数据变量确定为语言问答模型组件的输入数据变量;基于执行记录表中的实例模板标识确定语言问答模型组件所对应的功能函数,通过语言问答模型组件所对应的功能函数对语言问答模型组件的输入数据变量进行函数处理,得到语言问答模型组件的输出数据变量,将语言问答模型组件的输出数据变量确定为问答服务结果;在问答窗口中显示针对业务问题的问答服务结果。可以通过问答服务反复执行重复性任务,减少人工成本和人工介入,问答服务使用便捷易操作,可以降低实施错误率,提高生产效率,从而提升企业的竞争力。
请参见图7,图7是本申请实施例提供的一种问答服务的生成方法的流程示意图三,该问答服务的生成方法可以由计算机设备执行,计算机设备可以是如图1所示的终端设备200或者工作服务器100。如图7所示,该方法可以包括:
具体的,计算机设备中的问答编辑应用可以通过如图5所示的图形渲染引擎对用户所选择的功能代码封装组件,进行图形化化渲染呈现。
例如用户可以选择应用触发组件(应用触发组件可以是整个问答服务工作流程运行的起始组件,当用户在该问答服务的独立页面输入业务问题时,就可以通过应用触发组件启动问答服务所提供的功能,并调用问答服务中的问答策略组件。如问题判断子组件)、问题判断子组件、频率控制子组件、权限判断子组件和语言问答模型组件,以及答案返回组件(在问答窗口中显示问答服务结果)、日志记录组件(记录问答服务中功能代码封装组件的日志信息)、消息通知组件(在问答窗口中显示消息通知)、流程终止组件(问答服务出现错误或者异常,终止流程)和流程结束组件(问答服务完毕,结束流程)等功能代码封装组件。创建上述功能代码封装组件的处理流程关系如图7所示,并通过所选择的功能代码封装组件的处理流程关系确认生成问答服务。
问答服务中的应用触发组件的的具体功能实现方式可以参见图6对应实施例中的步骤S202的描述,这里不再进行赘述。应用触发组件可以将业务问题传输至问题判断子组件。
问答服务中的问题判断子组件、频率控制子组件和权限判断子组件的具体功能实现方式可以参见图6对应实施例中的步骤S204的描述,这里不再进行赘述。计算机设备可以将包含业务禁用词,或者业务问题的文件格式为问题处理异常格式的业务问题的流程逻辑确定为“否”,终止为“否”的流程。将不包含业务禁用词并且业务问题的文件格式不为问题处理异常格式的业务问题传输至频率控制组件。计算机设备可以将同一用户的提问频率(调用问答服务的频率)超出频率控制子组件所指示的过滤阈值的业务问题的流程逻辑确定为“否”,终止为“否”的流程。将提问频率小于或者等于过滤阈值的业务问题传输至权限判断子组件,计算机设备可以将用户的提问权限不属于问题权限范围的业务问题的流程逻辑确定为“否”,在问答窗口中进行“无提问权限”的消息提醒,终止为“否”的流程。将属于问题权限范围的业务问题传输至语言问答模型组件,通过语言问答模型组件对业务问题进行语义识别,得到问答服务结果。计算机设备可以通过答案返回组件在问答窗口中显示该业务问题的问答服务结果,以及通过日志记录组件记录问答服务中功能代码封装组件的日志信息,最后结束此次问答服务的流程。
本申请实施例可以提供各类支持独立部署的功能代码封装组件,实现功能代码封装组件的灵活接入,通过用户所选择的功能代码封装组件之间的处理流程连接关系生成问答服务,可以让不具备专业编程知识的人员,通过可视化的功能代码封装组件和处理流程连接关系来开发问答服务,而非编写代码来开发问答服务,提高了问答服务开发的生产效率和通用性,降低了开发成本和实施错误率。
请参见图8,图8是本申请实施例提供的一种问答服务的生成装置的结构示意图。如图8所示,该问答服务的生成装置1包括训练文本获取模块2001、模型训练模块2002、组件显示模块2003、组件编辑模块2004、组件确认模块2005、第一编排模块2006、第二编排模块2007、第三编排模块2008、第四编排模块2009、第一配置模块2010、第二配置模块2011、第三配置模块2012、第四配置模块2014、配置更新模块2015、日志表创建模块2016、日志处理模块2017、第一输入模块2018、传输处理模块2019、第二输入模块2020、问答处理模块2021和结果显示模块2032。其中,问答处理模块包括执行表创建单元2022、第一组件处理单元2023、第二组件处理单元2024、第三组件处理单元2025、统计信息获取单元2026、第一过滤单元2027、第二过滤单元2028、第三过滤单元2029、预处理单元2030和语义识别单元2031。
训练文本获取模块2001,用于获取训练文本集,过滤训练文本集中的业务停用词,对过滤后的训练文本集进行文本划分,得到M个文本片段,对M个文本片段的出现次数进行统计,得到M个文本片段分别对应的文本频率;M为正整数;
模型训练模块2002,用于获取初始语言模型,基于M个文本片段和M个文本频率建立初始语言模型的文本词典;文本词典包括M个文本片段分别对应的词向量;
训练文本获取模块2001和模型训练模块2002的具体功能实现方式可以参见图4对应实施例中的步骤S101的描述,这里不再进行赘述。
组件显示模块2003,用于在问答编辑应用中显示功能代码封装组件集合;所述功能代码封装组件集合包括一个或多个触发组件、一个或多个问答策略组件以及一个或多个语言问答模型组件;组件显示模块2003的具体功能实现方式可以参见图4对应实施例中的步骤S101的描述,这里不再进行赘述。
组件编辑模块2004,用于响应所述问答编辑应用针对功能代码封装组件集合的组件选择操作,在所述问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;所述编辑页面还用于显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系;组件编辑模块2004的具体功能实现方式可以参见图4对应实施例中的步骤S102的描述,这里不再进行赘述。
组件确认模块2005,用于响应所述问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;所述问答服务中的触发组件用于调用所述问答服务中的问答策略组件,所述问答服务中的问答策略组件用于对所述业务问题进行问答过滤处理,所述问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果。组件确认模块2005的具体功能实现方式可以参见图4对应实施例中的步骤S103的描述,这里不再进行赘述。
第一编排模块2006,用于响应问答编辑应用针对编辑页面中所选择的功能代码封装组件的第一组件编排操作,为所选择的触发组件和问答策略组件之间创建处理流程连接关系,基于所选择的触发组件和问答策略组件之间的处理流程连接关系,将所选择的触发组件确定为用于执行问答服务起始流程的功能代码封装组件,将所选择的问答策略组件确定为用于执行触发组件的下一流程的功能代码封装组件;
第二编排模块2007,用于响应问答编辑应用针对编辑页面中所选择的功能代码封装组件的第二组件编排操作,为所选择的问答策略组件和语言问答模型组件之间创建处理流程连接关系,基于所选择的问答策略组件和语言问答模型组件之间的处理流程连接关系,将所选择的语言问答模型组件确定为用于执行问答策略组件的下一流程的功能代码封装组件。
第三编排模块2008,用于响应问答编辑应用针对编辑页面中所选择的问题判断子组件和频率控制子组件的第三组件编排操作,为所选择的问题判断子组件和频率控制子组件之间创建处理流程连接关系,基于所选择的问题判断子组件和频率控制子组件之间的处理流程连接关系,将所选择的问题判断子组件确定为用于执行问答策略起始流程的功能代码封装组件,将所选择的频率控制子组件确定为用于执行问题判断子组件的下一流程的功能代码封装组件;
第四编排模块2009,用于响应问答编辑应用针对编辑页面中所选择的频率控制子组件和权限判断子组件的第四组件编排操作,为所选择的频率控制子组件和权限判断子组件之间创建处理流程连接关系,基于所选择的频率控制子组件和权限判断子组件之间的处理流程连接关系,将所选择的权限判断子组件确定为用于执行频率控制子组件的下一流程的功能代码封装组件。
第一编排模块2006、第二编排模块2007、第三编排模块2008和第四编排模块2009的具体功能实现方式可以参见图4对应实施例中的步骤S102的描述,这里不再进行赘述。
第一配置模块2010,用于响应问答编辑应用针对编辑页面中所选择的问题判断子组件的第一组件配置操作,在问答编辑应用的参数配置页面中,配置所选择的问题判断子组件的业务禁用词和问题处理异常格式;
第二配置模块2011,用于响应问答编辑应用针对编辑页面中所选择的频率控制子组件的第二组件配置操作,在参数配置页面中,配置所选择的频率控制子组件的频率阈值;
第三配置模块2012,用于响应问答编辑应用针对编辑页面中所选择的权限判断子组件的第三组件配置操作,在参数配置页面中,配置所选择的权限判断子组件的问题权限范围。
第四配置模块2014,用于响应问答编辑应用针对编辑页面中所选择的功能代码封装组件的组件配置操作,在问答编辑应用的参数配置页面中,显示多个实例模板标识,在多个实例模板标识中确定目标实例模板标识;多个实例模板标识包括目标实例模板标识;
配置更新模块2015,用于在问答编辑应用的编辑页面中,基于目标实例模板标识更新所选择的功能代码封装组件;实例模板标识用于确定功能代码封装组件所对应的功能函数,功能函数用于对业务问题进行函数处理。
第一配置模块2010、第二配置模块2011、第三配置模块2012、第四配置模块2014和配置更新模块2015的具体功能实现方式可以参见图4对应实施例中的步骤S102的描述,这里不再进行赘述。
日志表创建模块2016,用于基于所选择的触发组件、问答策略组件以及语言问答模型组件,创建针对问答服务的执行日志表,通过执行日志表记录问答服务中功能代码封装组件的日志信息;
日志处理模块2017,用于通过执行日志表显示问答服务运行过程中的日志信息,根据日志信息统计针对问答服务的运行状态和服务质量,基于问答服务的运行状态和服务质量对问答服务中的触发组件、问答策略组件、语言问答模型组件或者处理流程连接关系中的至少一个进行调整。
日志表创建模块2016和日志处理模块2017的具体功能实现方式可以参见图4对应实施例中的步骤S103的描述,这里不再进行赘述。
第一输入模块2018,用于在通信应用中显示问答窗口,在问答窗口中输入业务问题;业务问题包括触发参数;
传输处理模块2019,用于若触发参数满足触发组件所指示的问答触发条件,则通过触发组件将业务问题以及消息凭证发送至通信应用对应的通信服务器,以使通信服务器根据消息凭证对业务问题进行加密处理,得到加密密文,将加密密文发送至问答编辑应用对应的工作服务器;消息凭证还存储于工作服务器;工作服务器用于通过消息凭证对加密密文进行解密处理,得到业务问题,工作服务器还用于通过问答服务输出业务问题对应的问答服务结果。
第一输入模块2018和传输处理模块2019的具体功能实现方式可以参见图6对应实施例中的步骤S202的描述,这里不再进行赘述。
第二输入模块2020,用于在通信应用中显示问答窗口,在问答窗口中输入业务问题;业务问题包括触发参数;第二输入模块2020的具体功能实现方式可以参见图6对应实施例中的步骤S202的描述,这里不再进行赘述。
问答处理模块2021,用于若触发参数满足触发组件所指示的问答触发条件,则通过触发组件调用问答服务中的问答策略组件;
问答处理模块2021,还用于通过问答服务中的问答策略组件对业务问题进行过滤处理,通过问答服务中的语言问答模型组件对过滤处理后的业务问题进行问答识别,输出问答服务结果;
执行表创建单元2022,用于基于所选择的触发组件、问答策略组件以及语言问答模型组件,创建针对问答服务的执行记录表,通过执行记录表记录问答服务中功能代码封装组件的组件信息;组件信息包括处理流程连接关系、用于表征问答服务中功能代码封装组件的实例名称标识和实例模板标识;执行表创建单元2022的具体功能实现方式可以参见图6对应实施例中的步骤S201的描述,这里不再进行赘述。
第一组件处理单元2023,用于将业务问题确定为触发组件的输出数据变量,根据执行记录表所指示的处理流程连接关系,将触发组件的输出数据变量确定为问答策略组件的输入数据变量;第一组件处理单元2023的具体功能实现方式可以参见图6对应实施例中的步骤S203的描述,这里不再进行赘述。
第二组件处理单元2024,用于基于执行记录表中的实例模板标识确定问答策略组件所对应的功能函数,通过问答策略组件所对应的功能函数对问答策略组件的输入数据变量进行函数处理,得到问答策略组件的输出数据变量,将问答策略组件的输出数据变量确定为语言问答模型组件的输入数据变量;
第二组件处理单元2024的具体功能实现方式可以参见图6对应实施例中的步骤S204的描述,这里不再进行赘述。
第三组件处理单元2025,用于基于执行记录表中的实例模板标识确定语言问答模型组件所对应的功能函数,通过语言问答模型组件所对应的功能函数对语言问答模型组件的输入数据变量进行函数处理,得到语言问答模型组件的输出数据变量,将语言问答模型组件的输出数据变量确定为问答服务结果;执行记录表还用于存储问答服务中功能代码封装组件的输入数据变量和输出数据变量。第三组件处理单元2025的具体功能实现方式可以参见图6对应实施例中的步骤S205的描述,这里不再进行赘述。
统计信息获取单元2026,用于获取发起业务问题的业务对象的问答统计信息;问答统计信息包括提问频率和提问权限,提问频率是业务对象调用问答服务的频率;提问权限是基于业务对象的对象权限所确定的;
第一过滤单元2027,用于获取业务问题,通过问题判断子组件所指示的业务禁用词和问题处理异常格式对业务问题进行过滤处理,将经过问题判断子组件过滤处理后的业务问题传输至频率控制子组件;
第二过滤单元2028,用于通过频率控制子组件所指示的频率阈值以及提问频率,对经过问题判断子组件过滤处理后的业务问题进行过滤处理,将经过频率控制子组件过滤处理后的业务问题传输至权限判断子组件;
第三过滤单元2029,用于通过权限判断子组件所指示的问题权限范围以及提问权限,对经过频率控制子组件过滤处理后的业务问题进行过滤处理,将经过权限判断子组件过滤处理后的业务问题传输至问答服务中的语言问答模型组件。
第一过滤单元2027、第二过滤单元2028和第三过滤单元2029的具体功能实现方式可以参见图6对应实施例中的步骤S204的描述,这里不再进行赘述。
预处理单元2030,用于获取问答策略组件过滤处理后的业务问题,去除过滤处理后的业务问题中的业务停用词,得到更新业务问题,对更新业务问题进行文本划分,得到N个文本片段;N为正整数;
语义识别单元2031,用于将N个文本片段分别转换为文本词向量,对文本词向量进行编码,得到文本词向量的上下文信息和语义信息,基于语言问答模型组件对上下文信息和语义信息进行语义识别,得到针对业务问题的问答服务结果。
预处理单元2030和语义识别单元2031的具体功能实现方式可以参见图6对应实施例中的步骤S205的描述,这里不再进行赘述。
结果显示模块2032,用于在问答窗口中显示针对业务问题的问答服务结果。结果显示模块2032的具体功能实现方式可以参见图6对应实施例中的步骤S206的描述,这里不再进行赘述。
请参见图9,图9是本申请实施例提供的一种计算机设备的结构示意图。如图9所示,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图9所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在如图9所示的计算机设备1000中,网络接口1004可提供网络通讯网元;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
在问答编辑应用中显示功能代码封装组件集合;功能代码封装组件集合包括一个或多个触发组件、一个或多个问答策略组件以及一个或多个语言问答模型组件;
响应问答编辑应用针对功能代码封装组件集合的组件选择操作,在问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;编辑页面还用于显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系;
响应问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;问答服务中的触发组件用于调用问答服务中的问答策略组件,问答服务中的问答策略组件用于对业务问题进行问答过滤处理,问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图4、图6和图7任一个所对应实施例中对该问答服务的生成方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有计算机程序,当上述处理器执行上述计算机程序时,能够执行前文图4、图6和图7任一个所对应实施例中对上述问答服务的生成方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
上述计算机可读存储介质可以是前述任一实施例提供的问答服务的生成装置或者上述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经显示或者将要显示的数据。
此外,这里需要指出的是:本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行前文图4、图6和图7任一个所对应实施例提供的方法。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照网元一般性地描述了各示例的组成及步骤。这些网元究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的网元,但是这种实现不应认为超出本申请的范围。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (16)
1.一种问答服务的生成方法,其特征在于,包括:
在问答编辑应用中显示功能代码封装组件集合;所述功能代码封装组件集合包括一个或多个触发组件、一个或多个问答策略组件以及一个或多个语言问答模型组件;
响应所述问答编辑应用针对功能代码封装组件集合的组件选择操作,在所述问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;所述编辑页面还用于显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系;
响应所述问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;所述问答服务中的触发组件用于调用所述问答服务中的问答策略组件,所述问答服务中的问答策略组件用于对业务问题进行问答过滤处理,所述问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果。
2.根据权利要求1所述的方法,其特征在于,在所述基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务之后,还包括:
在通信应用中显示问答窗口,在所述问答窗口中输入业务问题;所述业务问题包括触发参数;
若所述触发参数满足所述触发组件所指示的问答触发条件,则通过所述触发组件将所述业务问题以及消息凭证发送至所述通信应用对应的通信服务器,以使所述通信服务器根据所述消息凭证对所述业务问题进行加密处理,得到加密密文,将所述加密密文发送至所述问答编辑应用对应的工作服务器;所述消息凭证还存储于所述工作服务器;所述工作服务器用于通过所述消息凭证对所述加密密文进行解密处理,得到所述业务问题,所述工作服务器还用于通过所述问答服务输出所述业务问题对应的问答服务结果。
3.根据权利要求1所述的方法,其特征在于,在所述基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务之后,还包括:
在通信应用中显示问答窗口,在所述问答窗口中输入业务问题;所述业务问题包括触发参数;
若所述触发参数满足所述触发组件所指示的问答触发条件,则通过所述触发组件调用问答服务中的问答策略组件;
通过所述问答服务中的问答策略组件对所述业务问题进行过滤处理,通过所述问答服务中的语言问答模型组件对过滤处理后的业务问题进行问答识别,输出问答服务结果;
在所述问答窗口中显示针对所述业务问题的所述问答服务结果。
4.根据权利要求3所述的方法,其特征在于,所述通过所述问答服务中的问答策略组件对所述业务问题进行过滤处理,通过所述问答服务中的语言问答模型组件对过滤处理后的业务问题进行问答识别,输出问答服务结果,包括:
获取所述问答服务的执行记录表;
将所述业务问题确定为所述触发组件的输出数据变量,将所述触发组件的输出数据变量确定为所述问答策略组件的输入数据变量;
基于所述执行记录表中的所述实例模板标识确定所述问答策略组件所对应的功能函数,通过所述问答策略组件所对应的功能函数对所述问答策略组件的输入数据变量进行函数处理,将所述问答策略组件的输出数据变量确定为所述语言问答模型组件的输入数据变量;
基于所述执行记录表中的所述实例模板标识确定所述语言问答模型组件所对应的功能函数,通过所述语言问答模型组件所对应的功能函数对所述语言问答模型组件的输入数据变量进行函数处理,将所述语言问答模型组件的输出数据变量确定为问答服务结果;所述执行记录表还用于存储所述问答服务中功能代码封装组件的输入数据变量和输出数据变量。
5.根据权利要求3所述的方法,其特征在于,所述通过所述问答服务中的语言问答模型组件对过滤处理后的业务问题进行问答识别,输出问答服务结果,包括:
获取所述问答策略组件过滤处理后的业务问题,去除所述过滤处理后的业务问题中的业务停用词,得到更新业务问题,对所述更新业务问题进行文本划分,得到N个文本片段;N为正整数;
将所述N个文本片段分别转换为文本词向量,对所述文本词向量进行编码,得到所述文本词向量的上下文信息和语义信息,基于所述语言问答模型组件对所述上下文信息和所述语义信息进行语义识别,得到针对所述业务问题的问答服务结果。
6.根据权利要求3所述的方法,其特征在于,所述问答策略组件包括问题判断子组件、频率控制子组件和权限判断子组件;所述通过所述问答服务中的问答策略组件对所述业务问题进行问题过滤处理,包括:
获取发起所述业务问题的业务对象的问答统计信息;所述问答统计信息包括提问频率和提问权限,所述提问频率是所述业务对象调用所述问答服务的频率;所述提问权限是基于所述业务对象的对象权限所确定的;
获取所述业务问题,通过所述问题判断子组件所指示的业务禁用词和问题处理异常格式对所述业务问题进行过滤处理,将经过所述问题判断子组件过滤处理后的业务问题传输至所述频率控制子组件;
通过所述频率控制子组件所指示的频率阈值以及所述提问频率,对经过所述问题判断子组件过滤处理后的业务问题进行过滤处理,将经过所述频率控制子组件过滤处理后的业务问题传输至所述权限判断子组件;
通过所述权限判断子组件所指示的问题权限范围以及所述提问权限,对经过所述频率控制子组件过滤处理后的业务问题进行过滤处理,将经过所述权限判断子组件过滤处理后的业务问题传输至所述问答服务中的语言问答模型组件。
7.根据权利要求1所述的方法,其特征在于,所述问答策略组件包括问题判断子组件、频率控制子组件和权限判断子组件,在所述响应所述问答编辑应用中的问答服务确认操作之前,还包括:
响应所述问答编辑应用针对所述编辑页面中所选择的问题判断子组件的第一组件配置操作,在所述问答编辑应用的参数配置页面中,配置所选择的问题判断子组件的业务禁用词和问题处理异常格式;
响应所述问答编辑应用针对所述编辑页面中所选择的频率控制子组件的第二组件配置操作,在所述参数配置页面中,配置所选择的频率控制子组件的频率阈值;
响应所述问答编辑应用针对所述编辑页面中所选择的权限判断子组件的第三组件配置操作,在所述参数配置页面中,配置所选择的权限判断子组件的问题权限范围。
8.根据权利要求1所述的方法,其特征在于,在所述响应所述问答编辑应用中的问答服务确认操作之前,还包括:
响应所述问答编辑应用针对所述编辑页面中所选择的功能代码封装组件的组件配置操作,在所述问答编辑应用的参数配置页面中,显示多个实例模板标识,在所述多个实例模板标识中确定目标实例模板标识;所述多个实例模板标识包括所述目标实例模板标识;
在所述问答编辑应用的编辑页面中,基于所述目标实例模板标识更新所选择的功能代码封装组件;所述实例模板标识用于确定所述功能代码封装组件所对应的功能函数,所述功能函数用于对所述业务问题进行函数处理。
9.根据权利要求1所述的方法,其特征在于,在所述响应所述问答编辑应用中的问答服务确认操作之前,还包括:
响应所述问答编辑应用针对所述编辑页面中所选择的功能代码封装组件的第一组件编排操作,为所选择的触发组件和问答策略组件之间创建处理流程连接关系,基于所选择的触发组件和问答策略组件之间的处理流程连接关系,将所选择的触发组件确定为用于执行问答服务起始流程的功能代码封装组件,将所选择的问答策略组件确定为用于执行所述触发组件的下一流程的功能代码封装组件;
响应所述问答编辑应用针对所述编辑页面中所选择的功能代码封装组件的第二组件编排操作,为所选择的问答策略组件和语言问答模型组件之间创建处理流程连接关系,基于所选择的问答策略组件和语言问答模型组件之间的处理流程连接关系,将所选择的语言问答模型组件确定为用于执行所述问答策略组件的下一流程的功能代码封装组件。
10.根据权利要求1所述的方法,其特征在于,所述问答策略组件包括问题判断子组件、频率控制子组件和权限判断子组件,在所述响应所述问答编辑应用中的问答服务确认操作之前,还包括:
响应所述问答编辑应用针对所述编辑页面中所选择的问题判断子组件和频率控制子组件的第三组件编排操作,为所选择的问题判断子组件和频率控制子组件之间创建处理流程连接关系,基于所选择的问题判断子组件和频率控制子组件之间的处理流程连接关系,将所选择的问题判断子组件确定为用于执行问答策略起始流程的功能代码封装组件,将所选择的频率控制子组件确定为用于执行所述问题判断子组件的下一流程的功能代码封装组件;
响应所述问答编辑应用针对所述编辑页面中所选择的频率控制子组件和权限判断子组件的第四组件编排操作,为所选择的频率控制子组件和权限判断子组件之间创建处理流程连接关系,基于所选择的频率控制子组件和权限判断子组件之间的处理流程连接关系,将所选择的权限判断子组件确定为用于执行所述频率控制子组件的下一流程的功能代码封装组件。
11.根据权利要求1所述的方法,其特征在于,在所述在问答编辑应用中显示功能代码封装组件集合之前,还包括:
获取训练文本集,过滤所述训练文本集中的业务停用词,对过滤后的训练文本集进行文本划分,得到M个文本片段,对所述M个文本片段的出现次数进行统计,得到所述M个文本片段分别对应的文本频率;M为正整数;
获取初始语言模型,基于所述M个文本片段和所述M个文本频率建立所述初始语言模型的文本词典;所述文本词典包括所述M个文本片段分别对应的词向量;
获取问答样本,通过所述文本词典构建所述问答样本对应的问答词向量,通过所述问答词向量对所述初始语言模型的模型参数进行调整,直至所述初始语言模型满足模型收敛条件时,得到所述语言问答模型组件。
12.根据权利要求1所述的方法,其特征在于,在所述基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务之后,还包括:
基于所选择的触发组件、问答策略组件以及语言问答模型组件,创建针对所述问答服务的执行日志表,通过所述执行日志表记录所述问答服务中功能代码封装组件的日志信息;
通过所述执行日志表显示所述问答服务运行过程中的日志信息,根据所述日志信息统计针对所述问答服务的运行状态和服务质量,基于所述问答服务的运行状态和服务质量对所述问答服务中的触发组件、问答策略组件、语言问答模型组件或者所述处理流程连接关系中的至少一个进行调整。
13.一种问答服务的生成装置,其特征在于,包括:
组件显示模块,用于在问答编辑应用中显示功能代码封装组件集合;所述功能代码封装组件集合包括一个或多个触发组件、一个或多个问答策略组件以及一个或多个语言问答模型组件;
组件编辑模块,用于响应所述问答编辑应用针对功能代码封装组件集合的组件选择操作,在所述问答编辑应用的编辑页面中,显示所选择的触发组件、问答策略组件以及语言问答模型组件;所述编辑页面还用于显示所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系;
组件确认模块,用于响应所述问答编辑应用中的问答服务确认操作,基于所选择的触发组件、问答策略组件以及语言问答模型组件之间的处理流程连接关系生成问答服务;所述问答服务中的触发组件用于调用所述问答服务中的问答策略组件,所述问答服务中的问答策略组件用于对所述业务问题进行问答过滤处理,所述问答服务中的模型组件用于根据过滤处理后的业务问题输出问答服务结果。
14.一种计算机设备,其特征在于,包括:处理器、存储器以及网络接口;
所述处理器与所述存储器、所述网络接口相连,其中,所述网络接口用于提供数据通信功能,所述存储器用于存储计算机程序,所述处理器用于调用所述程序代码,以使得所述计算机设备执行权利要求1-12任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-12任一项所述的方法。
16.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中,且适于由处理器读取并执行,以使得具有所述处理器的计算机设备执行权利要求1-12任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310914994.7A CN117009483A (zh) | 2023-07-24 | 2023-07-24 | 问答服务的生成方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310914994.7A CN117009483A (zh) | 2023-07-24 | 2023-07-24 | 问答服务的生成方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117009483A true CN117009483A (zh) | 2023-11-07 |
Family
ID=88564781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310914994.7A Pending CN117009483A (zh) | 2023-07-24 | 2023-07-24 | 问答服务的生成方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117009483A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117234525A (zh) * | 2023-11-15 | 2023-12-15 | 北京轻松怡康信息技术有限公司 | 机器人搭建方法、装置、电子设备和存储介质 |
CN117370537A (zh) * | 2023-12-08 | 2024-01-09 | 浙江口碑网络技术有限公司 | 基于aigc的问答应用开发方法和平台 |
-
2023
- 2023-07-24 CN CN202310914994.7A patent/CN117009483A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117234525A (zh) * | 2023-11-15 | 2023-12-15 | 北京轻松怡康信息技术有限公司 | 机器人搭建方法、装置、电子设备和存储介质 |
CN117234525B (zh) * | 2023-11-15 | 2024-01-30 | 北京轻松怡康信息技术有限公司 | 机器人搭建方法、装置、电子设备和存储介质 |
CN117370537A (zh) * | 2023-12-08 | 2024-01-09 | 浙江口碑网络技术有限公司 | 基于aigc的问答应用开发方法和平台 |
CN117370537B (zh) * | 2023-12-08 | 2024-04-19 | 浙江口碑网络技术有限公司 | 基于aigc的问答应用开发方法和平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Is this the era of misinformation yet: combining social bots and fake news to deceive the masses | |
CN113377850B (zh) | 认知物联网大数据技术平台 | |
CN117009483A (zh) | 问答服务的生成方法、装置、设备及可读存储介质 | |
CN107315810B (zh) | 一种物联网设备行为画像方法 | |
US9672467B2 (en) | Systems and methods for creating and implementing an artificially intelligent agent or system | |
US11784948B2 (en) | Cognitive determination of message suitability | |
CN109684370A (zh) | 日志数据处理方法、系统、设备及存储介质 | |
EP4028874A1 (en) | Techniques for adaptive and context-aware automated service composition for machine learning (ml) | |
CN110956956A (zh) | 基于策略规则的语音识别方法及装置 | |
US20200134018A1 (en) | Mixed-initiative dialog automation with goal orientation | |
US11803395B1 (en) | Virtual assistant transfer protocol | |
US20210334593A1 (en) | Recommending scripts for constructing machine learning models | |
CN108366052A (zh) | 验证短信的处理方法及系统 | |
CN111833021A (zh) | 一种事件提醒方法、装置、设备及计算机可读存储介质 | |
CN110598869A (zh) | 基于序列模型的分类方法、装置、电子设备 | |
AU2023203892A1 (en) | Natural solution language | |
US11194869B2 (en) | Method and apparatus for enriching metadata via a network | |
US20210406931A1 (en) | Contextual marketing system based on predictive modeling of users of a system and/or service | |
CN116797195A (zh) | 工单处理方法、装置、计算机设备和计算机可读存储介质 | |
CN114662452A (zh) | 去隐私化的文本标签分析方法及装置 | |
CN112948341A (zh) | 用于识别异常的网络设备日志的方法和装置 | |
CN117874211B (zh) | 基于saas软件的智能问答方法、系统、介质及电子设备 | |
US20230196477A1 (en) | Solver-based media assignment for content moderation | |
US20230409969A1 (en) | Providing Fairness in Fine-Tuning of Pre-Trained Language Models | |
CN117973523A (zh) | 模型调用的方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |