CN110018823A - 交互式应用程序的处理方法及系统、生成方法及系统 - Google Patents
交互式应用程序的处理方法及系统、生成方法及系统 Download PDFInfo
- Publication number
- CN110018823A CN110018823A CN201910419352.3A CN201910419352A CN110018823A CN 110018823 A CN110018823 A CN 110018823A CN 201910419352 A CN201910419352 A CN 201910419352A CN 110018823 A CN110018823 A CN 110018823A
- Authority
- CN
- China
- Prior art keywords
- user
- attribute
- parameter
- value
- response
- 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.)
- Granted
Links
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 181
- 238000000034 method Methods 0.000 title claims abstract description 92
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 230000004044 response Effects 0.000 claims abstract description 229
- 238000013507 mapping Methods 0.000 claims abstract description 54
- 238000013136 deep learning model Methods 0.000 claims description 25
- 238000012549 training Methods 0.000 claims description 18
- 238000012790 confirmation Methods 0.000 claims description 15
- 238000013527 convolutional neural network Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 13
- 238000003860 storage Methods 0.000 claims description 8
- 238000004519 manufacturing process Methods 0.000 claims description 6
- 241000208340 Araliaceae Species 0.000 claims description 5
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims description 5
- 235000003140 Panax quinquefolius Nutrition 0.000 claims description 5
- 235000008434 ginseng Nutrition 0.000 claims description 5
- 150000001875 compounds Chemical class 0.000 claims 1
- 230000001960 triggered effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 19
- 238000012423 maintenance Methods 0.000 abstract description 11
- 206010037660 Pyrexia Diseases 0.000 description 44
- 206010028748 Nasal obstruction Diseases 0.000 description 22
- 238000010586 diagram Methods 0.000 description 15
- 241000282994 Cervidae Species 0.000 description 12
- 238000011161 development Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 10
- 206010019233 Headaches Diseases 0.000 description 8
- 231100000869 headache Toxicity 0.000 description 8
- 238000010438 heat treatment Methods 0.000 description 8
- 239000007787 solid Substances 0.000 description 8
- 201000010099 disease Diseases 0.000 description 7
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 206010000087 Abdominal pain upper Diseases 0.000 description 5
- 208000024891 symptom Diseases 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 241000233805 Phoenix Species 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 208000021760 high fever Diseases 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 206010041232 sneezing Diseases 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 108091064702 1 family Proteins 0.000 description 1
- 206010016322 Feeling abnormal Diseases 0.000 description 1
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007921 spray Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Machine Translation (AREA)
Abstract
本发明提供了一种交互式应用程序的处理方法及系统、生成方法及系统,该交互式应用程序的处理方法包括:接收用户输入的第一用户表达;根据第一用户表达确定用户的意图,其中针对意图设置有结构化信息,结构化信息包括多个参数、至少一个响应以及至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系;根据第一用户表达识别出至少一个参数的取值;以及根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应,根据将无先序关系的节点扁平化的结构化信息,无需考虑无先序关系的节点信息之间的顺序,可以简化处理过程,同时减小交互式应用程序的维护工作量和复杂度。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种交互式应用程序的处理方法及系统、生成方法及系统。
背景技术
现有交互程序的交互过程为树形结构,如二分法或多分法。例如在诊病场景下,医生首先询问患者“是否喷嚏”,当获得肯定回答时继续询问“是否鼻塞”,当获得否定回答时继续询问“是否头疼”,当获得“是否鼻塞”的肯定回答时继续询问“是否发热”,当获得否定回答时继续询问“是否胃疼”等,以此类推。在此树形结构中,“喷嚏”是“鼻塞”和“头疼”的先序节点,“鼻塞”是“发热”和“胃疼”的先序节点。“喷嚏→鼻塞→发热”、“鼻塞→喷嚏→发热”和“鼻塞→发热→喷嚏”分别对应不同的数据处理过程,大大增加了开发者的开发工作量。
然而在交互过程中,很多节点之间没有明确的先序关系,例如“喷嚏”、“鼻塞”和“发热”,三者的提问顺序可以是随机的。进一步地,由于节点顺序的随机性,如果用户同时提及多个节点信息,例如用户表达“我既打喷嚏又鼻塞”,此时树形结构的维护工作量和复杂度更加巨大。
因此,亟需提供一种能够将无先序关系节点扁平化,简化处理过程,减小维护工作量和复杂度的交互式应用程序。
发明内容
有鉴于此,本发明实施例提供了一种交互式应用程序的处理方法及系统、生成方法及系统,将无先序关系节点扁平化,解决了树形结构交互式应用程序维护工作量和复杂度大的问题。
根据本发明实施例的第一方面,提供一种交互式应用程序的处理方法,包括:接收用户输入的第一用户表达;根据第一用户表达确定用户的意图,其中针对意图设置有结构化信息,结构化信息包括多个参数、至少一个响应以及至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系;根据第一用户表达识别出至少一个参数的取值;以及根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应。
在本发明的一个实施例中,多个参数中的每个参数包括布尔参数或实例参数。
在本发明的一个实施例中,上述根据第一用户表达识别出至少一个参数的取值,包括:通过模型识别出至少一个参数的取值。
在本发明的一个实施例中,上述通过模型识别出至少一个参数的取值,包括:通过特定样本的精确匹配模型识别布尔参数的取值。
在本发明的一个实施例中,当通过特定样本的精确匹配模型识别不出布尔参数的取值时,还包括:通过多个样本训练得到的深度学习模型识别布尔参数的取值;以及当深度学习模型的识别结果的置信度小于预设阈值时,通过特定样本训练得到的卷积神经网络模型识别布尔参数的取值。
在本发明的一个实施例中,上述通过模型识别出至少一个参数的取值,包括:通过模板匹配模型识别实例参数的取值。
在本发明的一个实施例中,至少一个参数包括多个参数,上述根据第一用户表达识别出至少一个参数的取值,包括:根据第一用户表达识别出多个参数中部分参数的取值;通过追问语句的方式,接收关于多个参数中剩余参数的至少一个第二用户表达;以及根据至少一个第二用户表达识别出多个参数中剩余参数的取值。
在本发明的一个实施例中,上述部分参数包括至少一个布尔参数,其中,上述通过追问语句的方式,接收关于多个参数中剩余参数的至少一个第二用户表达,包括:当识别出至少一个布尔参数中的一个布尔参数的取值为“是”时,通过追问语句的方式,接收关于与一个布尔参数相关联的实例参数的至少一个第二用户表达。
在本发明的一个实施例中,上述通过追问语句的方式,接收关于多个参数中剩余参数的至少一个第二用户表达,包括:通过追问语句的方式,接收关于剩余参数中能够区分不同响应的参数的至少一个第二用户表达。
在本发明的一个实施例中,上述根据第一用户表达确定用户的意图,包括:接收第一用户表达;语音识别第一用户表达,将第一用户表达文字化;以及将文字化的第一用户表达与交互式应用程序存储的用户表达示例进行匹配,以确定第一用户表达示例对应的意图技能或实体。
在本发明的一个实施例中,在上述接收用户输入的第一用户表达之前,还包括:接收开发者设置的多个参数和至少一个响应;建立映射关系,以生成结构化信息;以及根据结构化信息,生成交互式应用程序。
根据本发明实施例的第二方面,提供一种交互式应用程序的生成方法,包括:接收开发者针对意图设置的多个参数和至少一个响应;建立至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系,以生成针对意图的结构化信息;以及根据结构化信息,生成交互式应用程序,其中交互式应用程序用于根据用户表达确定用户的意图,根据用户表达识别出至少一个参数的取值,并根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应。
在本发明的一个实施例中,多个参数中的每个参数包括布尔参数或实例参数。
在本发明的一个实施例中,该交互式应用程序的生成方法还包括:接收开发者设置的用于识别至少一个参数的取值的模型。
在本发明的一个实施例中,上述接收开发者设置的用于识别至少一个参数的取值的模型,包括:接收开发者设置的用于识别布尔参数的取值的特定样本的精确匹配模型、多个样本训练得到的深度学习模型或卷积神经网络模型。
在本发明的一个实施例中,上述接收开发者设置的用于识别至少一个参数的取值的模型,包括:接收开发者设置的用于识别实例参数的取值的模板匹配模型。
在本发明的一个实施例中,上述接收开发者针对意图设置的多个参数和至少一个响应,包括:接收开发者输入的针对交互式应用程序的用户的意图的多个属性,接收开发者输入的多个属性中的至少一个属性对应的属性值,并接收开发者输入的针对至少一个属性对应的属性值的响应;上述建立至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系,以生成针对意图的结构化信息,包括:建立响应与至少一个属性对应的属性值之间映射关系,以使得交互式应用程序在接收到的用户表达包括至少一个属性对应的属性值时,输出响应;上述根据结构化信息,生成交互式应用程序,包括:根据多个属性、响应和映射关系,生成交互式应用程序。
在本发明的一个实施例中,该交互式应用程序的生成方法,还包括:接收开发者输入的多个属性对应的多个实体,其中,多个实体中的每个实体为多个属性值的集合,实体包括至少一个属性对应的属性值之一,用于根据响应批量生成多个属性值对应的响应,属性值包括固定值、范围或布尔值。
在本发明的一个实施例中,上述接收开发者输入的多个属性对应的多个实体,包括:接收开发者在实体输入界面的实体输入区输入的多个实体,其中,多个实体中的每个实体对应一个或多个属性,一个或多个属性在属性输入界面输入。
在本发明的一个实施例中,上述属性为复合属性,其中,复合属性的至少一个属性值中的每个属性值由多个子属性的属性值共同确定。
在本发明的一个实施例中,该交互式应用程序的生成方法还包括:接收开发者输入的用户表达示例,用户表达示例用于训练模型,以识别多种用户表达。
在本发明的一个实施例中,上述接收开发者输入的用户表达示例,包括:接收开发者在用户界面的用户表达示例输入区的文本框内输入的用户表达示例。
在本发明的一个实施例中,上述接收开发者输入的针对交互式应用程序的用户的意图的多个属性,包括:基于用户表达示例中的多个属性值自动生成多个属性;或者接收开发者从用户表达示例被点击生成的下拉菜单中选择的多个属性。
在本发明的一个实施例中,上述接收开发者输入的针对交互式应用程序的用户的意图的多个属性,包括:接收开发者在用户界面的属性输入区的文本框内输入的多个属性。
在本发明的一个实施例中,该交互式应用程序的生成方法还包括:接收开发者输入的追问语句,追问语句用于交互式应用程序向用户发送以获取用户表达中未包含的属性对应的属性值。
在本发明的一个实施例中,追问语句用于交互式应用程序向用户发送以获取用户表达中未包含的多个属性中能够区分不同响应的属性对应的属性值。
在本发明的一个实施例中,上述接收开发者输入的追问语句,包括:接收开发者在用户界面的追问语句输入区的文本框内输入的追问语句。
在本发明的一个实施例中,该交互式应用程序的生成方法还包括:接收开发者输入的确认追问语句,确认追问语句用于交互式应用程序向用户发送以便用户对已回复的属性对应的属性值进行再次确认。
在本发明的一个实施例中,该交互式应用程序的生成方法还包括:接收开发者输入的用户表达示例;接收开发者输入的意图属性,意图属性的属性值用于提示用户表达示例是否触发意图,其中建立响应与至少一个属性对应的属性值之间映射关系,包括:当用户表达示例触发意图时,建立响应与至少一个属性对应的属性值之间映射关系。
在本发明的一个实施例中,上述响应包括文本响应、卡片响应和/或地址响应。
在本发明的一个实施例中,上述接收开发者输入的针对意图的响应,包括:接收开发者在用户界面的响应输入区的第一文本框内输入的响应,其中上述接收开发者输入的多个属性中的至少一个属性对应的属性值,包括:接收开发者在用户界面的响应输入区的第二文本框内输入的至少一个属性对应的属性值,其中在开发者输入多个属性之后,在响应输入区呈现多个属性的选项,以便开发者选择触发响应的至少一个属性,并在至少一个属性对应的文本框内接收开发者输入的至少一个属性对应的属性值。
在本发明的一个实施例中,该交互式应用程序的生成方法还包括:接收开发者在用户界面的意图输入区的文本框内输入的意图。
根据本发明实施例的第三方面,提供一种交互式应用程序的处理系统,包括:接收模块,用于接收用户输入的第一用户表达;确定模块,用于根据第一用户表达确定用户的意图,其中针对意图设置有结构化信息,结构化信息包括多个参数和至少一个响应以及至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系;识别模块,用于根据第一用户表达识别出至少一个参数的取值;以及输出模块,用于根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应。
根据本发明实施例的第四方面,提供一种交互式应用程序的生成系统,包括:接收模块,用于接收开发者针对意图设置的多个参数和至少一个响应;建立模块,用于建立至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系,以生成针对意图的结构化信息;以及生成模块,用于根据结构化信息,生成交互式应用程序,其中交互式应用程序用于根据用户表达确定用户的意图,根据用户表达识别出至少一个参数的取值,并根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应。
根据本发明实施例的第五方面,提供一种计算机可读存储介质,其上存储有计算机可执行指令,可执行指令被处理器执行时实现如上所述的方法。
根据本发明实施例提供的技术方案,通过接收用户输入的第一用户表达;根据第一用户表达确定用户的意图;根据第一用户表达识别出至少一个参数的取值;以及根据至少一个参数的取值和意图对应的结构化信息,输出与至少一个参数的取值的组合对应的响应,根据将无先序关系的节点扁平化的结构化信息,在交互过程中无需考虑无先序关系的节点信息之间的顺序,能够简化处理过程,同时减小交互式应用程序的维护工作量和复杂度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1所示为本发明一实施例提供的交互式应用程序的处理方法的流程示意图。
图2所示为本发明一实施例提供的交互式应用程序的生成方法的流程示意图。
图3所示为本发明另一实施例提供的交互式应用程序的生成方法的流程示意图。
图4所示为本发明另一实施例提供的交互式应用程序的生成方法的流程示意图。
图5所示为本发明一实施例提供的交互式应用程序的生成方法的用户界面的示意图。
图6所示为本发明另一实施例提供的交互式应用程序的生成方法的用户界面的示意图。
图7所示为本发明一实施例提供的交互式应用程序的处理系统的框图。
图8所示为本发明一实施例提供的交互式应用程序的生成系统的框图。
图9所示为本发明一实施例提供的计算机装置的框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1所示为本发明一实施例提供的交互式应用程序的处理方法的流程示意图。该方法可以由计算机设备(例如,服务器)执行。如图1所示,该方法包括如下内容。
S110:接收用户输入的第一用户表达。
第一用户表达是用户主动表达的信息,其可以是语音表达或文字表达的自然语言,本发明对此不作限定。
S120:根据第一用户表达确定用户的意图。
针对每个用户的意图均设置有结构化信息,结构化信息包括多个参数、至少一个响应以及至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系。结构化信息通过在参数取值的组合与响应之间建立映射关系,可以将无先序关系的节点做扁平化处理,在交互过程中无需考虑无先序关系节点信息的获取顺序,即可有效地输出响应,简化了数据处理过程,大大地减小了交互式应用程序的维护工作量和复杂度。
应当理解,本发明对参数的类型不作限定,例如,参数可以包括布尔参数和实例参数,布尔参数即布尔类型的参数,其只有两个取值“是(Yes)”和“否(No)”,如布尔参数“发烧”的两个取值“Yes”和“No”分别对应着“发烧”和“不发烧”;实例参数即实例类型的参数,其取值为固定值或范围。例如对于实例参数“城市”的取值可以是“北京”、“上海”等,对于实例参数“日期”的取值可以是“5月20日”等,对于实例参数“温度”的取值可以是具体温度“38℃”,也可以是温度范围“37℃-38℃”等,应当理解,本发明对此不作限定。
具体地,结构化信息的参数可以均为布尔参数。如表1所示,针对“问诊”意图的结构化信息包括“头疼”、“喷嚏”、“鼻塞”、“发热”、“骨折”、“胃疼”等布尔参数以及“发烧”、“感冒”、“头疼”、“骨折”等响应。其中,“喷嚏”、“鼻塞”、“发热”与响应“发烧”建立映射关系,“喷嚏”和“鼻塞”与响应“感冒”建立映射关系等,该结构化信息可以应用于为患者诊病的对话交互场景。根据用户表达“我生病了”或“我得了什么病”等,可确定出该用户的意图是“诊病”,应当理解,上述描述仅为示例性描述,本发明对此不作限定。
表1
结构化信息的参数可以包括布尔参数和实例参数。如表2所示,针对“买演唱会门票”意图的结构化信息包括实例参数“歌手”、“城市”和“日期”以及布尔参数“会员”,针对不同参数取值的组合具有不同的响应。该结构化信息可以应用在关于演唱会售票信息的对话交互场景。应当理解,当不包括“会员”布尔参数时,该结构化信息的参数均为实例参数,本发明对此不作具体限定。根据用户表达“我想买周杰伦演唱会门票”可确定该用户的意图是“买演唱会门票”,应当理解,上述描述仅为示例性描述,本发明对此不作限定。
表2
S130:根据第一用户表达识别出至少一个参数的取值。
具体地,第一用户表达中可以包含至少一个参数的取值信息。根据表2所示的结构化信息,“歌手”、“城市”、“日期”和“会员”四个参数与响应建立有映射关系。当用户表达“我想买周杰伦4月15日北京演唱会会员票”时,可根据用户表达识别出“歌手”的取值为“周杰伦”,“城市”的取值为“北京”,“日期”的取值为“4月15日”,“会员”的取值为“Yes”,此时,四个参数的取值均可被获取。
当至少一个参数包括多个参数时,第一用户表达可以包含多个参数中部分参数的取值信息。根据第一用户表达识别出部分参数的取值;通过追问语句的方式,接收关于多个参数中剩余参数的至少一个第二用户表达;以及根据至少一个第二用户表达识别出多个参数中剩余参数的取值。
具体地,第二用户表达是通过追问的方式获取到的用户表达。根据表2所示的结构化信息,当用户表达“我想买周杰伦北京演唱会门票”时,可根据用户表达识别出“歌手”的取值为“周杰伦”,“城市”的取值为“北京”,此时只识别出“歌手”和“城市”两个参数的取值,“日期”和“会员”的取值尚且空缺,此时可以通过追问语句的方式追问“日期”和“会员”的取值信息,比如“你想看哪天的演唱会?”“你是不是会员?”等,并根据用户回答的第二用户表达实例识别出“日期”和“会员”的取值。应当理解,上述描述仅为示例性描述,本发明对此不作限定。
应当理解,本发明对识别参数取值的方式不作具体限定,可以通过模型识别,也可以通过语音识别等。
S140:根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应。
具体地,无论用户先提供哪个参数的取值,或同时提供多个参数的取值,无需考虑获取参数取值的顺序,当获取至少一个参数的取值时,输出其所对应的响应。例如,根据表2所示的结构化信息,当获取到“歌手”的取值为“周杰伦”,“城市”的取值为“北京”,“日期”的取值为“4月15日”,“会员”的取值为“Yes”,即四个参数的取值均被获取时,便可以输出其对应的响应“周杰伦4月15日的北京演唱会会员票的购票地址”。应当理解,上述描述仅为示例性描述,本发明对此不作限定。
根据本发明实施例提供的技术方案,通过接收用户输入的第一用户表达;根据第一用户表达确定用户的意图并识别出至少一个参数的取值;根据至少一个参数的取值和意图对应的结构化信息,输出与至少一个参数的取值的组合对应的响应,根据将无先序关系的节点扁平化,在交互过程中无需考虑无先序关系的节点信息之间的顺序,能够简化处理过程,减小交互式应用程序的维护工作量和复杂度。
在本发明的另一个实施例中,上述根据第一用户表达识别出至少一个参数的取值,包括:通过模型识别出至少一个参数的取值。
参数的取值可以通过模型来识别,模型可以包括精确匹配模型、深度学习模型、卷积神经网络模型、模板匹配模型等,本发明对模型的种类不作限定。布尔参数和实例参数可以分别通过不同的模型来识别,例如,通过精确匹配模型、深度学习模型、卷积神经网络模型来识别布尔参数,通过模板匹配模型来识别实例参数等,本发明对此不作限定。通过模型识别可以提高参数取值的识别成功率,更精确、有效地获取用户想要表达的信息,提高用户体验。
在本发明的另一个实施例中,上述通过模型识别出至少一个参数的取值,包括:通过特定样本的精确匹配模型识别布尔参数的取值。
具体地,当获取用户表达后,将用户表达与人工撰写的特定样本进行精确匹配,特定样本的输入特征为<问句,人工提供的答句>,其中包括肯定回答语句、否定回答语句或无法确定回答语句。如果匹配成功,则按照匹配到的语句所属的分类(即肯定、否定和无法确定)确定布尔参数的取值“Yes”或“No”,或无法确定布尔参数的取值。通过特定样本的精确匹配模型,可以精确识别出用户表达中布尔参数的信息。
在本发明的另一个实施例中,当通过特定样本的精确匹配模型识别不出布尔参数的取值时,还包括:通过多个样本训练得到的深度学习模型识别布尔参数的取值;当深度学习模型的识别结果的置信度小于预设阈值时,通过特定样本训练得到的卷积神经网络模型识别布尔参数的取值。
具体地,特定样本的精确匹配模型中的样本是有限的,当通过特定样本的精确匹配模型无法识别布尔参数的取值时,可以通过深度学习模型来识别,深度学习模型可以通过多个样本训练得到。通过深度学习模型可以判定给定的<问句,答句>对(pair)中,该答句是否是该问句的相关回答,可以令0表示不相关,1表示相关,2表示无法确定;以及可以判定每个答句的置信度。
例如,给定输入特征<“你发烧吗?”,“今天天气真好”>,深度学习模型输出0和0号标签的置信度;给定输入特征<“你发烧吗?”,“我烧的厉害”>,深度学习模型输出1和1号标签的置信度;给定输入特征<“你发烧吗?”,“我有点难受,不知道是不是烧了”>,深度学习模型输出2和2号标签的置信度。
该深度学习模型使用的训练数据为较大规模的“问答式数据”,训练输入特征为<问句,答句>,输入标签为0,1或2,模型框架可以为深层基于注意力(attention)的语言模型(language model)。通过多个样本训练得到的深度学习模型识别布尔参数的取值,可以基于大数据,有效地识别大部分常用的用户表达中的布尔参数的信息,提高用户体验。
当深度学习模型的识别结果的置信度低于预设阈值时,可以通过特定样本训练得到的卷积神经网络模型识别布尔参数的取值。
卷积神经网络模型可以作为深度学习模型的补充,例如,针对输入特征<“你发烧吗?”,“我烧的厉害”>,深度学习模型应预测的标签为1,其置信度低于预设阈值,此时会试图采用卷积神经网络模型的识别结果。
卷积神经网络模型使用的训练数据为人工撰写的,可以针对深度学习模型识别结果不理想的布尔参数,例如方言表达的布尔参数信息等,人工提供若干肯定回答/否定回答/无法确定回答的“答句”。卷积神经网络模型的训练输入特征为<问句,人工提供的答句>,输入标签为0,1或2。卷积神经网络模型框架区别于深度学习模型,采用的是轻量级的浅层卷积神经网络。卷积神经网络模型作为深度学习模型的补充,可以识别深度学习模型识别结果不理想的布尔参数信息,更有效地获取特殊语言或特殊表达等的信息,提高用户体验。
在本发明的另一个实施例中,上述通过模型识别出至少一个参数的取值,包括:通过模板匹配模型识别实例参数的取值。
例如,针对结构化信息中的两个参数<出发地>和<目的地>,可以设置模板“从<出发地>到<目的地>的……”,当用户表达“买从北京到上海的飞机票”时,根据该模板就可以识别出<出发地>:“北京”,<目的地>:“上海”。通过模板匹配模型可以简单、方便地识别出与模板相匹配的实例参数的取值。
在本发明的另一个实施例中,部分参数包括至少一个布尔参数,上述通过追问语句的方式,接收关于多个参数中剩余参数的至少一个第二用户表达,包括:当识别出至少一个布尔参数中的一个布尔参数的取值为“是”时,通过追问语句的方式,接收关于与一个布尔参数相关联的实例参数的至少一个第二用户表达。
具体地,当获得某个信息的特定值时,才会关注与此相关的另外一些信息。例如,在诊病情景中,医生一般会先询问患者“是否发热”,当得到患者肯定回答时,才会继续询问“发热多长时间了?”、“发热多少度?”等,即“发热”是“发热持续时间”和“发热温度”的先序节点。
具体地,可以采用层级结构化信息来处理“具有先序节点”的问题。如表3所示的结构化信息,“发热”为布尔参数,“发热持续时间”和“发热温度”分别为实例参数。“喷嚏”、“鼻塞”和“发热”为无先序关系的节点,其分别为第一层级结构化信息的参数,“发热持续时间”和“发热温度”为无先序关系的节点,其分别为“发热”对应的第二层级结构化信息的参数。
当布尔参数“发热”的取值为“是(Yes)”时,进入第二层级结构化信息,通过追问语句的方式完成实例参数“发热持续时间”和“发热温度”信息的收集;当布尔参数“发热”的取值为“No”时,则不进入第二层级结构化信息。
表3
在本发明的另一个实施例中,上述通过追问语句的方式,接收关于多个参数中剩余参数的至少一个第二用户表达,包括:通过追问语句的方式,接收关于剩余参数中能够区分不同响应的参数的至少一个第二用户表达。
根据表1所示的结构化信息,当用户具备打喷嚏、鼻塞和发热的症状时,可判断用户发烧,即“喷嚏+鼻塞+发热=发烧”;当用户具备打喷嚏、鼻塞的症状时,可判断用户感冒,即“喷嚏+鼻塞=感冒”。如果已获取参数“喷嚏”的取值为“Yes”,在剩余的参数“鼻塞”和“发热”中,“鼻塞”为两个响应的相同参数,“发热”为能够区分“发烧”和“感冒”这两个响应的区别参数,因此,可以通过追问语句的方式,只追问区别参数“发烧”的取值,而不必追问相同参数“鼻塞”的取值。通过接收关于剩余参数中能够区分不同响应的参数的用户表达,可以减少追问次数,即以较少的交互次数完成参数信息的采集,提高交互效率和信息处理效率。
在本发明的另一个实施例中,上述根据第一用户表达确定用户的意图,包括:接收第一用户表达;语音识别第一用户表达,将第一用户表达文字化;将文字化的第一用户表达与交互式应用程序存储的用户表达示例进行匹配,以确定第一用户表达示例对应的意图技能或实体。
具体地,当接收到语音用户表达后,首先对用户表达进行语音识别,将语音用户表达转化成文字,并将文字化的用户表达与交互式应用程序存储的用户表达实例进行匹配,其中,针对用户的意图的每个意图技能均设置有用户表达示例,当文字化的用户表达与某一意图技能的用户表达示例成功匹配时,即可确定用户的意图。应当理解,针对每个意图技能还可以设置有实体,针对每个实体也可以设置有用户表达示例,当文字化的用户表达与实体的用户表达示例成功匹配时,即可确定实体,进而确定实体对应的意图技能。应当理解,本发明对确定用户意图的方法不作具体限定。
在本发明的另一个实施例中,在上述接收用户输入的第一用户表达之前,还包括:接收开发者设置的多个参数和至少一个响应;建立映射关系,以生成结构化信息;以及根据结构化信息,生成交互式应用程序。
具体地,接收开发者输入的多个参数和至少一个响应;建立至少一个响应中的每个响应与多个参数中的至少一个参数之间的映射关系,以生成结构化信息;以及根据结构化信息,生成交互式应用程序。通过建立响应与参数取值的组合之间的映射关系,生成结构化信息,可以将无先序关系的节点扁平化,无需考虑参数的取值之间的顺序关系,当获取到用户表达中的参数取值的组合时,便可以输出其对应的响应,简化了开发过程,减轻了开发人员开发工作量和维护工作量。
图2所示为本发明一实施例提供的交互式应用程序的生成方法的流程示意图。该方法可以由计算机设备(例如,服务器)执行。如图2所示,该方法包括如下内容。
S210:接收开发者针对意图设置的多个参数和至少一个响应。
例如,接收开发者输入的多个参数和至少一个响应。
S220:建立至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系,以生成针对意图的结构化信息。
例如,选择或输入至少一个参数中每个参数的取值,输入针对上述参数取值的组合的响应,并建立参数取值的组合与响应之间的对应关系,从而将无先序关系的节点扁平化,生成结构化信息。
S230:根据结构化信息,生成交互式应用程序。
交互式应用程序用于根据用户表达确定用户的意图,根据用户表达识别出至少一个参数的取值,并根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应。
根据本发明实施例提供的技术方案,通过接收开发者针对意图设置的多个参数和至少一个响应;建立响应与参数取值的组合之间的映射关系,以生成结构化信息;根据结构化信息,生成交互式应用程序,其中交互式应用程序用于根据用户表达确定用户的意图,根据用户表达识别出至少一个参数的取值,并根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应,可以根据将无先序关系的节点扁平化的结构化信息,无需考虑参数的取值之间的顺序关系,当获取到用户表达中的参数取值的组合时,便可以输出其对应的响应,简化开发过程,减轻开发人员的开发与维护工作量。
本发明实施例可以用于开发各种交互式应用程序,例如,可以用于智能客服、智能导购、智能顾问、企业对话应用、聊天机器人,或任何平台或设备上的语音对话或交互功能的实现,可广泛集成于网站、APP、社交媒体平台、物联网设备、各类机器人中,本发明对此不作限定。
通过本发明实施例开发的交互式应用程序可应用于不同平台,实现一套交互式体验的多维度灵活应用,支持多种使用场景,不受平台、设备的限制,不需要每个平台重复训练和部署。
在本发明的另一个实施例中,多个参数中的每个参数包括布尔参数或实例参数。
在本发明的另一个实施例中,该交互式应用程序的生成方法还包括:接收开发者设置的用于识别至少一个参数的取值的模型。
在本发明的另一个实施例中,上述接收开发者设置的用于识别至少一个参数的取值的模型,包括:接收开发者设置的用于识别布尔参数的取值的特定样本的精确匹配模型、多个样本训练得到的深度学习模型或卷积神经网络模型。
在本发明的另一个实施例中,上述接收开发者设置的用于识别至少一个参数的取值的模型,包括:接收开发者设置的用于识别实例参数的取值的模板匹配模型。
图3所示为本发明另一实施例提供的交互式应用程序的生成方法的流程示意图。该方法可以由计算机设备(例如,服务器)执行。如图3所示,该方法包括如下内容。
S310:接收开发者输入的针对交互式应用程序的用户的意图的多个属性,接收开发者输入的多个属性中的至少一个属性对应的属性值,并接收开发者输入的针对至少一个属性对应的属性值的响应。
参数可以称为属性,参数值即为属性值。具体地,在使用交互式应用程序时,用户会表达出自己的意图,不同的意图可以由多个属性来表征,每个属性可以有不同的属性值。用户表达中具有某个属性的词汇可以为该属性的属性值,或者该词汇经过语意分析后可以对应于该属性值。针对该意图,如果用户表达中包含必要属性的预设属性值,则可以向用户发送该响应。开发者可以在用于开发交互式应用程序的用户界面的文本框中输入属性的标识、对应的属性值以及响应的信息。
比如,当用户使用订票交互式应用程序时,表达“我想订两张罗大佑12月31日武汉的演唱会门票”,用户的意图即是“订演唱会门票”,那么开发者在生成交互式应用程序时,可以输入针对“订演唱会门票”这一意图的多个属性,此时,多个属性可以是歌手、地点、时间、数量以及优先购票权等,本发明对此不作限定。再比如,当用户使用问诊交互式应用程序时,用户的意图是问诊,即想知道“我得了什么病?”,那么在开发者开发问诊交互式应用程序时,可以输入针对问诊这一意图的多个属性,此时,多个属性可以是头疼、喷嚏、鼻塞、发热、骨折、胃疼等属性,本发明对此不作限定。通过接受开发者输入的针对交互式应用程序的用户表达的意图的多个属性,以便于与用户表达语句中提取出的重要信息相匹配,以准确地获知用户的需求,从而更好的为用户提供服务。
在本发明实施例中,每个属性均对应属性值。比如“我想订两张罗大佑12月31日武汉的演唱会门票”中“歌手”属性对应的属性值是“罗大佑”,“数量”属性对应的属性值是“两”,“地点”属性对应的属性值是“武汉”,“时间”属性对应的属性值是“12月31日”。再比如,针对“我得了什么病”这一意图输入的头疼、喷嚏、鼻塞、发热、骨折、胃疼等属性,其属性值可以是“是”或“否”,即具有头疼症状或不具有头疼症状,具有鼻塞症状或不具有鼻塞症状。
在本发明实施例中,接收开发者输入的多个属性中至少一个属性对应的属性值,比如,开发者针对“订演唱会票”这一意图输入的属性包括“歌手”、“地点”、“时间”、“数量”以及“优先购票权”,开发者在输入属性值时,可以选择属性中一个或多个进行设定,比如,设定属性“歌手”的属性值为“鹿晗”;或者,设定属性“歌手”的属性值为“鹿晗”和设定属性“地点”的属性值为“北京”;或者,设定属性“歌手”的属性值为“鹿晗”、设定属性“地点”的属性值为“北京”和设定属性“时间”的属性值为“12月31日”等等,设置的属性的数量和设定的属性对应的属性值可根据开发者的需要进行设定,本发明对此不作限定。应当理解,此处的描述仅是举例说明,并不限定本发明实施例的范围。
在本发明实施例中,接收开发者输入的针对至少一个属性对应的属性值的响应,响应即是在交互式应用程序中对用户的回复,比如,针对“买演唱会门票”这一意图,开发者输入的“歌手”属性对应的属性值是“罗大佑”,输入的“地点”属性的属性值是“武汉”,那么输入的响应即是针对“罗大佑”“武汉”的响应,可以是输入文本“演唱会已为你找到,赶紧点击,开始订票吧!”,输入罗大佑图片,并将输入购买罗大佑武汉演唱会票的网址,也可以只输入购买罗大佑武汉演唱会票的网址,本发明对此不作限定。如果针对“买演唱会门票”这一意图,开发者输入的“歌手”属性对应的属性值是“罗大佑”,输入的“地点”属性的属性值是“武汉”,输入的“时间”属性的“属性值”是“12月31日”,那么输入的响应即是针对“罗大佑”“武汉”“12月31日”的响应,可以是输入文本“演唱会已为你找到,赶紧点击,开始订票吧!”,并输入购买罗大佑武汉12月31日演唱会票的网址,由此可见,输入的属性对应的属性值不同,输入的响应也不同。应当理解,此处的描述仅是举例说明,并不限定本发明实施例的范围。
响应可以是由用户执行的服务或操作,可以是不同服务实体提供的服务信息,本发明对此不作限定。当输入的用户表达示例为空字符时,接收的开发者输入的响应可以是问候语、再见、问题或服务调用的结果等,本发明对此不作限定。通过接收开发者输入的属性值,以及针对不同属性值的响应,可以在用户使用交互式应用程序时,针对用户的不同需求,输出不同的响应。
在本发明的另一个实施例中,开发者可以通过将产品网页、使用手册、客服文档或任何领域的长文本材料等相关文档上传的方式实现属性、属性值以及响应的输入,例如,服务器在接收到上述文档后,可以对文档进行快速理解、推理和摘录的自动识别处理,得到属性、属性值以及响应,本发明对此不作限定。
S320:建立响应与至少一个属性对应的属性值之间映射关系,以使得交互式应用程序在接收到的用户表达包括至少一个属性对应的属性值时,输出响应。
在本发明实施例中,建立响应和属性值之间的映射关系,即建立响应和属性值之间的相关规则,这样,当交互式应用程序根据用户输入的用户表达得到的属性值满足相关规则需要的预设条件时,输出相对应的响应。比如,针对“买演唱会门票”这一意图,开发者输入的“歌手”属性对应的属性值是“罗大佑”,输入的“地点”属性的属性值是“武汉”,输入的响应是文本:“演唱会已为你找到,赶紧点击,开始订票吧!”和购买罗大佑武汉演唱会票的网址,那么,在“罗大佑”“武汉”和文本“演唱会已为你找到,赶紧点击,开始订票吧!”以及购买罗大佑武汉演唱会票的网址之间建立映射关系,就可以在用户表达语句满足“罗大佑”“武汉”条件时,将对应的响应,即文本“演唱会已为你找到,赶紧点击,开始订票吧!”和购买罗大佑武汉演唱会票的网址输出。通过建立响应和输入的属性值之间的映射关系,在用户使用交互式应用程序时,输入包括不同的属性值的用户表达可以得到相应的响应。而且不需要考虑用户回答的顺序,减少了交互式应用程序处理的数据量,提高处理效率。
S330:根据属性、响应和映射关系,生成交互式应用程序。
在本发明实施例中,根据开发者输入的属性、输入的针对不同属性值的不同响应,以及不同属性值与不同响应之间的映射关系,生成开发者所需要的交互式应用程序,可以在开发者不需要输入代码的前提下,快速简便的生成交互式应用程序。
根据本发明实施例提供的技术方案,通过接收开发者输入的针对交互式应用程序的用户的意图的多个属性、多个属性中的至少一个属性对应的属性值以及针对至少一个属性对应的属性值的响应,并建立响应与至少一个属性对应的属性值之间映射关系,使得交互式应用程序在接收到的用户表达包括至少一个属性对应的属性值时,输出响应,可以帮助开发人员快而有效地创建所需要的交互式应用程序,降低了开发门槛。而且,通过建立属性值与响应之间的映射关系,可以不考虑多个属性值之间的顺序,大大减少了数据量,减轻了开发者的负担。
在本发明的另一个实施例中,该交互式应用程序的生成方法还包括:接收开发者输入的多个属性对应的多个实体,其中,多个实体中的每个实体为多个属性值的集合,实体包括至少一个属性对应的属性值之一,用于根据响应批量生成多个属性值对应的响应,属性值包括固定值、范围或布尔值。
开发者输入的属性均对应属性值,属性值的集合便构成了实体。比如“歌手”属性对应的歌手实体可以包括罗大佑、周杰伦、羽泉、凤凰传奇等歌手或组合,“城市”实体可以包括北京、上海、南京、广州等城市。实体中包含的属性值的范围可以由开发者根据需要进行设置,本发明对此不作限定。实体可以通过开发者在实体输入界面上传实体数据文件或手动添加实体数据进行设置,也可以通过添加平台提供的系统实体进行设置。通过在实体输入界面设置实体,当用户界面的属性输入区接收属性时,用户界面的实体显示区可以自动显示属性所对应的实体。
通过接收开发者输入的实体,可以在接收至少一个属性值(包括该实体中的一个属性值)对应的响应的情况下,批量生成该实体中多个属性值对应的响应。比如,如果未接收开发者输入的歌手实体,仅接收开发者输入的用户表达示例:“我想订罗大佑北京演唱会门票”,属性值:“罗大佑”、“北京”和响应:罗大佑北京演唱会门票的订购网址,当用户表达“我想订周杰伦北京演唱会门票”意图时,生成的交互式应用程序中便不能够输出针对“周杰伦”“北京”的响应;如果接收开发者输入的歌手实体,其中包含了属性值“周杰伦”、“罗大佑”等,当用户表达“我想订周杰伦北京演唱会门票”意图时,生成的交互式应用程序便能够根据“罗大佑”“北京”的响应,将“罗大佑”自动替换成“周杰伦”,自动生成针对“周杰伦”“北京”的响应,即将周杰伦北京演唱会门票的订购网址发送给用户。上述描述仅为示例性举例,本发明对此不作限定。通过接收开发者输入的实体,批量生成实体中多个属性值对应的响应,减少了开发者需要输入的数据,减轻了开发者的负担,省时省力。
属性值包括固定值、范围或布尔值,比如“歌手”属性对应的一个属性值是“罗大佑”,即为固定值,“发烧温度”属性对应的一个属性值是“38℃~39℃”,即为一个范围,“骨折”属性对应的一个属性值是“是”,属性值也可以是属性本身,属性值可以是任意一种形式,本发明对此不作限定。
在本发明的另一个实施例中,上述接收开发者输入的多个属性对应的多个实体包括:接收开发者在实体输入界面的实体输入区输入的多个实体,其中,多个实体中的每个实体对应一个或多个属性,一个或多个属性在属性输入界面输入。
开发者可以在实体输入界面的实体输入区手动输入实体,通过上传实体数据文件或者手动添加实体数据添加实体对应的属性值;也可以添加平台提供的系统实体,比如,只需要开发者点击“歌手”实体,便可一键添加“歌手”实体对应的所有“歌手”属性值,比如罗大佑、周杰伦、张靓颖和凤凰传奇等,不需要开发者再上传“歌手”实体数据文件或者手动添加“歌手”实体数据,方便快捷。应当理解,以上“歌手”实体仅为示例性举例,本发明对此不作限定。
需要说明的是,实体可以对应一个或多个属性,比如,“歌手”实体可以对应一个“歌手”属性,“城市”实体可以对应“出发地”属性和“目的地”属性这两个属性。比如,用户表达示例为“我想买从北京到上海的火车票”,根据语意识别,属性值“北京”对应“出发地”属性,属性值“上海”对应“目的地”属性,“出发地”属性和“目的地”属性对应的实体均为“城市”实体,“城市”实体包括“北京”、“上海”等属性值。
在本发明的另一个实施例中,属性为复合属性,其中,复合属性的至少一个属性值中的每个属性值由多个子属性的属性值共同确定。采用复合属性,可以更精确的判断用户的需求。比如“发烧”为复合属性,其中一个属性值是“发高烧”,“发高烧”由“发热”、“时间大于2天”和“温度高于38℃”共同决定,另一个属性值是“发低烧”,“发低烧”由“发热”、“时间小于2天”和“温度低于38℃”共同决定。其中,“发热”为“发烧”的子属性;“时间”为“发烧”的子属性,“大于2天”“小于2天”为“时间”的属性值;“温度”为“发烧”的子属性,“高于38℃”和“低于38℃”为“温度”的属性值。应当理解,此处的描述仅是举例说明,并不限定本发明实施例的范围。
在本发明的另一个实施例中,该交互式应用程序的生成方法还包括:接收开发者输入的用户表达示例。比如“订一张8月20日从北京到上海的机票”、“帮我订一张机票从北京出发到上海”、“去携程搜一下从北京到上海的机票”或“我要买从北京到上海的机票”等,由自然语言理解NLU技术支持,可以准确理解用户说法并匹配到相关意图,完成说法泛化、实体拓展。只需要提供几个用户说法的例子,即可扩展识别多种问法,使用少量数据,可快速训练有效模型,使得自主学习不断完善。
在本发明的另一个实施例中,上述接收开发者输入的用户表达示例包括:接收开发者在用户界面的用户表达示例输入区的文本框内输入的用户表达示例。
在本发明的另一个实施例中,上述接收开发者输入的针对交互式应用程序的用户的意图的多个属性,包括:基于用户表达示例中的多个属性值自动生成多个属性;或者接收开发者从用户表达示例被点击生成的下拉菜单中选择的多个属性。
比如,用户表达示例为“订两张罗大佑12月31日武汉演唱会门票”,用户表达示例中出现了多个属性值,包括“两”、“罗大佑”、“12月31日”、“武汉”,在输入属性值时,可以基于属性值自动生成相应的属性,比如当输入“两”时,会自动生成“数量”属性,当输入“罗大佑”时,会自动生成“歌手”属性,当输入“12月31日”时,会自动生成“时间”属性,当输入“武汉”时,会自动生成“地点”属性。或者,开发者在输入完成用户表达示例之后,把鼠标放在“罗大佑”上右击,会出现一个下拉菜单,开发者可以在下拉菜单中选择“歌手”属性,把鼠标放在“武汉”上右击,开发者可以在下拉菜单中选择“地点”属性等等,可以方便快捷的输入属性,省时省力,减轻了开发者的负担。以上描述仅为举例说明,本发明对此不作限定。以上均为开发者输入属性的方式,本发明对此不作限定。
需要说明的是,基于用户表达示例中的多个属性值自动生成多个属性,或者从用户表达示例被点击生成的下拉菜单中选择的多个属性可以显示在用户界面的属性输入区,在属性对应的实体显示区可以自动显示属性对应的实体。比如,基于用户表达示例中的“周杰伦”自动生成“歌手”属性,“歌手”属性显示在用户界面的属性输入区,在“歌手”属性对应的实体显示区会自动显示“歌手”实体。应当理解,以上描述仅为示例性描述,本发明对此不作限定。
在本发明的另一个实施例中,上述接收开发者输入的针对交互式应用程序的用户的意图的多个属性包括:接收开发者在用户界面的属性输入区的文本框内输入的多个属性。在属性输入区的文本框内输入属性,也是开发者输入属性的一种方式,本发明对此不作限定。应当理解,在属性输入区的文本框输入属性后,在属性对应的实体显示区可以自动显示对应实体。
在本发明的另一个实施例中,该交互式应用程序的生成方法还包括:接收开发者输入的追问语句,该追问语句用于交互式应用程序向用户发送以获取用户表达中未包含的属性对应的属性值。比如用户在使用交互式应用程序时,只说了“我想买罗大佑的演唱会票”,即只出现了“歌手”的属性,用户提供的信息太少,不能很好的为客户服务,此时,可设置追问语句,来获取该用户的更多信息,比如可以追问“你想在哪个城市看呢?”若果用户回答“武汉”,此时可以再进行追问,你想看哪天的演唱会呢?”,若用户回答“12月31日”,则此时便获得的了该用户想买“罗大佑”“武汉”“12月31日”的演唱会票,便可以将购买罗大佑武汉12月31日演唱会票的网址发送给用户,更好、更精准的满足用户的需求。
在本发明的另一个实施例中,上述追问语句用于交互式应用程序向用户发送以获取用户表达中未包含的多个属性中能够区分不同响应的属性对应的属性值。
表1为针对问诊意图的属性值与响应的映射表。比如属性值“喷嚏”、“鼻塞”和“发热”的响应是“发烧”,属性值“喷嚏”和“鼻塞”的响应是“感冒”,响应“发烧”和“感冒”有两个共同属性“喷嚏”和“鼻塞”,如果用户在使用问诊交互式应用程序时,表达“我打喷嚏”,此时可设计追问“你发热吗?”,而不用追问“你鼻塞吗?”,即直接追问可以区分“发烧”和“感冒”的差异属性“发热”,如果用户回答“是”或“发热”,则可响应“你发烧了”,如果用户回答“没有”或“不发热”,则可响应“你感冒了”。通过追问语句获取用户表达中未包含的多个属性中能够区分不同响应的属性对应的属性值,可以问较少的问题就能得出用户的需求,提高执行效率。
在本发明的另一个实施例中,上述接收开发者输入的追问语句包括:接收开发者在用户界面的追问语句输入区的文本框内输入的追问语句。
在本发明的一个实施例中,该交互式应用程序的生成方法还包括:接收开发者输入的确认追问语句,确认追问语句用于交互式应用程序向用户发送以便用户对已回复的属性对应的属性值进行再次确认。当用户确认后,接收用户已回复的属性对应的属性值;当用户不确认时,再次发送确认追问语句直至用户确认已回复的属性对应的属性值。
具体的,当用户使用交互式应用程序时,输入“我想买罗大佑北京演唱会门票”,此时可根据开发者输入的确认追问语句“你确定吗?”向用户发出询问,当用户回答“是”或“确定”时,分别获取属性“歌手”、“地点”对应的属性值“罗大佑”、“北京”;当用户回答“我想买罗大佑上海演唱会门票”等非确认回答时,再次发送确认追问语句“你确定吗?”或“你确定想买罗大佑上海演唱会门票吗?”,此时,当用户回答“是”或“确定”时,分别获取属性“歌手”、“地点”对应的属性值“罗大佑”、“上海”;当用户再次回答非确认回答时,继续发送确认追问语句,直至获得用户的确认回答,进而获取用户已确认的属性对应的属性值。上述确认追问语句的具体内容仅为示例性举例,本发明对此不作限定。
在本发明的另一个实施例中,响应包括文本响应、卡片响应、地址响应和/或自定义响应。比如回复文字“演唱会已为你找到,赶紧点击,开始订票吧!”即为文本响应;输出印有鹿晗头像的图片的回复,即为卡片响应;将购买鹿晗演唱会票的网址发送给用户,即为地址响应,也可以是开发者根据不同客户的需要自定义的回复方式,任何对用户的响应形式均属于本发明的保护范围,本发明对此不作限定。
在本发明的另一个实施例中,上述接收开发者输入的针对意图的响应包括:接收开发者在用户界面的响应输入区的第一文本框内输入的响应,其中接收开发者输入的多个属性中的至少一个属性对应的属性值,包括:接收开发者在用户界面的响应输入区的第二文本框内输入的至少一个属性对应的属性值,其中在开发者输入多个属性之后,在响应输入区呈现多个属性的选项,以便开发者选择触发响应的至少一个属性,并在至少一个属性对应的文本框内接收开发者输入的至少一个属性对应的属性值。
在开发者输入多个属性后,在响应输入区中会呈现出输入的多个属性,多个属性可供开发者选择,在选择的属性对应的文本框中可输入相应的属性值。比如,针对“预订演唱会门票”这一意图,开发者选择了“歌手”属性,输入的相应的属性值为“鹿晗”,还选择了“地点”属性,输入的相应的属性值为“北京”,那么在响应输入区的第一文本框中可输入预订鹿晗北京演唱会门票的地址等。开发者可根据需要选择一个或多个属性,本发明对此不作限定。
在本发明的另一个实施例中,该交互式应用程序的生成方法还包括:接收开发者在用户界面的意图输入区的文本框内输入的意图。意图可以根据实体对应的一个或多个属性生成。
下面以交互应用程序开发平台为例,结合图4和图5来详细描述本发明的实施例。
图4所示为本发明另一实施例提供的交互式应用程序的生成方法的流程示意图。图5所示为本发明一实施例提供的交互式应用程序的生成方法的用户界面的示意图。
如图5所示,该用户界面可以是交互应用程序开发平台的某一个界面,开发者可以通过点击该用户界面左侧目录中的意图按钮进入意图设置界面。该意图设置界面可以包括意图输入区510、用户表达示例输入区520、属性输入区530、实体显示区540、追问语句输入区550和响应输入区560。意图输入区510用于接收开发者在用户界面的意图输入区的文本框内输入的意图。用户表达示例输入区520用于接收开发者在用户界面的用户表达示例输入区的文本框内输入的用户表达示例。属性输入区530用于接收开发者在用户界面的属性输入区的文本框内输入的多个属性或接收根据用户表达示例生成的多个属性。实体显示区540用于在属性输入区530接收多个属性时,自动显示每个属性对应的实体。追问语句输入区550用于接收开发者在用户界面的追问语句输入区的文本框内输入的追问语句。响应输入区560用于接收开发者在用户界面的响应输入区的文本框内输入的响应。
需要说明的是,通过点击用户界面左侧目录中的“实体”或“属性”按钮进入相应的实体输入界面或属性输入界面。实体输入界面可以用于开发者在其实体输入区手动输入实体,通过上传实体数据文件或者手动添加实体数据添加实体对应的属性值;也可以用于开发者添加平台提供的系统实体;属性输入界面用于开发者在其属性输入区输入实体所对应的一个或多个属性。
如图4所示,该交互式应用程序的生成方法包括:
S410:接收开发者输入的意图:“订演唱会票”。
开发者可以在意图输入区510的文本框内输入意图的名称或标识,例如,订演唱会门票或问诊,并点击对应的保存按钮,以保存该意图并进入针对该意图的设置操作。
S420:接收开发者输入的用户表达示例:“订两张罗大佑12月31日武汉演唱会门票”。
开发者可以在用户表达示例输入区520的文本框输入针对该意图的一个或多个用户表达示例,以便准确地描述用户为了准确该意图可能输入的表达。
S430:接收开发者输入的针对“订演唱会票”意图的多个属性“数量”、“歌手”、“时间”、“地点”。
该开发平台可以根据开发者针对该用户表达示例输入的属性进行训练得到识别模型或更新已有的识别模型。或者开发平台可以根据已有的识别模型确定用户表达示例包含的属性。属性可以由属性名称或标识来表示。
在本发明实施例中,用户表达示例中出现了多个属性值,包括“两”、“罗大佑”、“12月31日”、“武汉”,在输入属性值时,可以基于属性值自动生成相应的属性,比如当输入“两”时,会自动生成“数量”属性,当输入“罗大佑”时,会自动生成“歌手”属性,当输入“12月31日”时,会自动生成“时间”属性,当输入“武汉”时,会自动生成“地点”属性。或者,开发者在输入完成用户表达示例之后,把鼠标放在“罗大佑”上右击,会出现一个下拉菜单,开发者可以在下拉菜单中选择“歌手”属性,把鼠标放在“武汉”上右击,开发者可以在下拉菜单中选择“地点”属性等等,以上描述仅为举例说明,本发明对此不作限定。或者可以属性输入区设置添加属性按钮,以方便开发者在属性输入区直接输入属性。以上均为开发者输入属性的方式,本发明对此不作限定。
S440:接收开发者输入的多个属性“数量”、“歌手”、“时间”、“地点”的对应实体。
例如,可以通过平台提供的系统实体进行设置,只需要开发者点击“歌手”实体,便可一键添加。
S450:接收开发者输入的追问语句。
例如,追问语句与属性相对应,例如,对于歌手属性,追问语句可以是“你想看谁的呢?”,对于地点属性,追问语句可以是“你想在哪个城市看呢?”,对于优先购票权属性,追问语句可以是“有购票码吗?”。
S460:接收开发者输入的属性“歌手”对应的属性值“罗大佑”,属性“地点”对应的属性值“武汉”。
当开发者在属性输入区530中输入了属性之后,在响应输入区560可以出现属性的可选项,开发者可以选择触发响应的必要属性,并在对应的文本框中设置属性值。
S470:接收开发者输入的针对属性值“罗大佑”“武汉”和“演唱会”的响应,包括:文本“演唱会已为你找到,赶紧点击,开始订票吧!”、罗大佑卡片和罗大佑演唱会订票网址。
针对每个意图可以生成一个或多个响应,例如,开发者可以在响应输入区1的文本框中输入上述必要属性对应的响应。
S480:建立属性值“罗大佑”、“武汉”、“演唱会”和响应之间的映射关系,使得用户使用交互式应用程序时,表达语句中包括“罗大佑”、“武汉”、“演唱会”时,输出相应的响应。
只有在使用交互应用程序的用户的表达中存在上述必要属性时才会触发响应,即才会向用户发送该响应输入区1中的信息。
S490:根据意图、用户表达示例、属性、实体、追问语句、属性值、意图属性、响应和映射关系,生成交互式应用程序。
应理解,本发明的实施例对于上述操作执行的顺序不作限制,例如,开发者可以先输入实体1再输入实体2,或者相反;再如,开发者也可以先输入意图的标识或名称再输入用户表达示例,或者相反。
应理解,上述意图界面的设置只是生成整个交互式应用程序的一部分,上述方法对应的原程序在与交互应用程序的其它原程序经过编译之后共同起作用。
图6所示为本发明另一实施例提供的交互式应用程序的生成方法的用户界面的示意图。图6的方法为图3的方法的例子。
与图3的实施例不同的是,图6的交互式应用程序的生成方法还包括:接收开发者输入的意图属性,意图属性的属性值用于提示用户表达示例是否具有上述意图,其中建立响应与至少一个属性对应的属性值之间映射关系,包括:当用户表达示例触发上述意图时,建立响应与至少一个属性对应的属性值之间映射关系。
比如,当开发者输入用户表达示例“订两张鹿晗演唱会门票”时,用户表达示例中出现了“数量”、“歌手”属性,属性值分别是“两”、“鹿晗”,但同时满足“两”、“鹿晗”条件的用户表达可能有多种,比如“买两张鹿晗的专辑”的用户表达,其中也出现了属性值“两”、“鹿晗”,那么针对这种情况,接收开发者输入的意图属性,即“预订演唱会门票”,判断用户表达示例的意图是否为“预订演唱会门票”这一意图,即判断用户表达示例中是否出现意图属性的属性值“演唱会门票”,如果出现,即“是(True)”,则触发了意图,将会建立“两”和“鹿晗”与将购买鹿晗演唱会票的网址发送给用户的响应之间的映射关系。如果未出现,即“否(False)”,则不会建立相应的映射关系。通过接收开发者输入的意图属性,可以在多种意图的响应对应相同属性的情况下,通过意图属性来判断用户的意图,从而输出正确的响应。
在本发明的另一个实施例中,设定响应的输出标准,以使得当存在满足所有属性值条件的多个意图的响应时,根据输出标准在这些意图的响应中进行选择,如输出标准可以是根据受欢迎程度确定输出的响应等,本发明对此不作限定。
应当理解,上述响应可以是文本回复,也可以是开发者根据不同客户的需要自定义的回复方式,比如卡片回复、图片回复、视频回复以及链接回复等,本发明对此不作限定。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
图7所示为本发明一实施例提供的交互式应用程序的处理系统的框图。如图7所示,该交互式应用程序的处理系统700包括:
接收模块710,用于接收用户输入的第一用户表达。
确定模块720,用于根据第一用户表达确定用户的意图,其中针对意图设置有结构化信息,结构化信息包括多个参数和至少一个响应以及至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系。
识别模块730,用于根据第一用户表达识别出至少一个参数的取值。
输出模块740,用于根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应。
根据本发明实施例提供的技术方案,通过接收用户输入的第一用户表达;根据第一用户表达确定用户的意图并识别出至少一个参数的取值;根据至少一个参数的取值和意图对应的结构化信息,输出与至少一个参数的取值的组合对应的响应,根据将无先序关系的节点扁平化的结构化信息,在交互过程中无需考虑无先序关系的节点信息之间的顺序,能够简化处理过程,减小交互式应用程序的维护工作量和复杂度。
在本发明的另一个实施例中,多个参数中的每个参数包括布尔参数或实例参数。
在本发明的另一个实施例中,识别模块730还用于通过模型识别出至少一个参数的取值。
在本发明的另一个实施例中,识别模块730还用于通过特定样本的精确匹配模型识别布尔参数的取值。
在本发明的另一个实施例中,当通过特定样本的精确匹配模型识别不出布尔参数的取值时,识别模块730还用于通过多个样本训练得到的深度学习模型识别布尔参数的取值;当深度学习模型的识别结果的置信度小于预设阈值时,识别模块730还用于通过特定样本训练得到的卷积神经网络模型识别布尔参数的取值。
在本发明的另一个实施例中,识别模块730还用于通过模板匹配模型识别实例参数的取值。
在本发明的另一个实施例中,至少一个参数包括多个参数,识别模块730还用于根据第一用户表达识别出多个参数中部分参数的取值;接收模块710还用于通过追问语句的方式,接收关于多个参数中剩余参数的至少一个第二用户表达;以及识别模块730还用于根据至少一个第二用户表达识别出多个参数中剩余参数的取值。
在本发明的另一个实施例中,部分参数包括至少一个布尔参数,当识别出至少一个布尔参数中的一个布尔参数的取值为“是”时,接收模块710还用于通过追问语句的方式,接收关于与一个布尔参数相关联的实例参数的至少一个第二用户表达。
在本发明的另一个实施例中,接收模块710还用于通过追问语句的方式,接收关于剩余参数中能够区分不同响应的参数的至少一个第二用户表达。
在本发明的另一个实施例中,接收模块710还用于接收第一用户表达;识别模块730还用于语音识别第一用户表达,将第一用户表达文字化;确定模块720还用于将文字化的第一用户表达与交互式应用程序存储的用户表达示例进行匹配,以确定第一用户表达示例对应的意图技能或实体。
在本发明的另一个实施例中,在上述接收用户输入的第一用户表达之前,接收模块710还用于接收开发者设置的多个参数和至少一个响应;该交互式应用程序的处理系统700还包括建立模块750,用于建立映射关系,以生成结构化信息;以及生成模块760,用于根据结构化信息,生成交互式应用程序。
图8所示为本发明一实施例提供的交互式应用程序的生成系统的框图。如图8所示,该交互式应用程序的生成系统800包括:
接收模块810,用于接收开发者针对意图设置的多个参数和至少一个响应。
建立模块820,用于建立至少一个响应中的每个响应与多个参数中的至少一个参数的取值的组合之间的映射关系,以生成针对意图的结构化信息。
生成模块830,用于根据结构化信息,生成交互式应用程序,其中交互式应用程序用于根据用户表达确定用户的意图,根据用户表达识别出至少一个参数的取值,并根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应。
根据本发明实施例提供的技术方案,通过接收开发者针对意图设置的多个参数和至少一个响应;建立响应与参数取值的组合之间的映射关系,以生成结构化信息;根据结构化信息,生成交互式应用程序,其中交互式应用程序用于根据用户表达确定用户的意图,根据用户表达识别出至少一个参数的取值,并根据至少一个参数的取值和结构化信息,输出与至少一个参数的取值的组合对应的响应,可以根据将无先序关系的节点扁平化的结构化信息,无需考虑参数的取值之间的顺序关系,当获取到用户表达中的参数取值的组合时,便可以输出其对应的响应,简化开发过程,减轻开发人员的开发与维护工作量。
在本发明的另一个实施例中,多个参数中的每个参数包括布尔参数或实例参数。
在本发明的另一个实施例中,接收模块810还用于接收开发者设置的用于识别至少一个参数的取值的模型。
在本发明的另一个实施例中,接收模块810还用于接收开发者设置的用于识别布尔参数的取值的特定样本的精确匹配模型、多个样本训练得到的深度学习模型或卷积神经网络模型。
在本发明的另一个实施例中,接收模块810还用于接收开发者设置的用于识别实例参数的取值的模板匹配模型。
在本发明的另一个实施例中,接收模块810还用于接收开发者输入的针对交互式应用程序的用户的意图的多个属性,接收开发者输入的多个属性中的至少一个属性对应的属性值,并接收开发者输入的针对至少一个属性对应的属性值的响应;建立模块820还用于建立响应与至少一个属性对应的属性值之间映射关系,以使得交互式应用程序在接收到的用户表达包括至少一个属性对应的属性值时,输出响应;生成模块830还用于根据多个属性、响应和映射关系,生成交互式应用程序。
在本发明的另一个实施例中,接收模块810还用于接收开发者输入的多个属性对应的多个实体,其中,多个实体中的每个实体为多个属性值的集合,实体包括至少一个属性对应的属性值之一,用于根据上述响应批量生成多个属性值对应的响应,属性值包括固定值、范围或布尔值。
在本发明的另一个实施例中,接收模块810还用于接收开发者在实体输入界面的实体输入区输入的多个实体,其中,多个实体中的每个实体对应一个或多个属性,上述一个或多个属性在属性输入界面输入。
在本发明的另一个实施例中,接收模块810还用于接收开发者输入的用户表达示例。
在本发明的另一个实施例中,接收模块810还用于接收开发者在用户界面的用户表达示例输入区的文本框内输入的用户表达示例。
在本发明的另一个实施例中,接收模块810还用于接收基于用户表达示例中的多个属性值自动生成多个属性;或者接收开发者从用户表达示例被点击生成的下拉菜单中选择的多个属性。
在本发明的另一个实施例中,接收模块810接收开发者在用户界面的属性输入区的文本框内输入的多个属性。
在本发明的另一个实施例中,接收模块810还用于接收开发者输入的追问语句,追问语句用于交互式应用程序向用户发送以获取用户表达中未包含的属性对应的属性值。
在本发明的另一个实施例中,追问语句用于交互式应用程序向用户发送以获取用户表达中未包含的多个属性中能够区分不同响应的属性对应的属性值。
在本发明的另一个实施例中,接收模块810还用于接收开发者在用户界面的追问语句输入区的文本框内输入的追问语句。
在本发明的另一个实施例中,接收模块810还用于接收开发者输入的确认追问语句,确认追问语句用于交互式应用程序向用户发送以便用户对已回复的属性对应的属性值进行再次确认。
在本发明的另一个实施例中,接收模块810还用于接收开发者输入的意图属性,意图属性的属性值用于提示用户表达示例是否触发上述意图,其中建立响应与至少一个属性对应的属性值之间映射关系,包括:当用户表达示例触发意图时,建立响应与至少一个属性对应的属性值之间映射关系。
在本发明的另一个实施例中,响应包括文本响应、卡片响应和/或地址响应。
在本发明的另一个实施例中,接收模块810还用于接收开发者在用户界面的响应输入区的文本框内输入的响应。
在本发明的另一个实施例中,接收模块810还用于接收开发者在用户界面的意图输入区的文本框内输入的意图。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
图9所示为本发明一实施例提供的计算机装置900的框图。
参照图9,装置900包括处理组件910,其进一步包括一个或多个处理器,以及由存储器920所代表的存储器资源,用于存储可由处理组件910的执行的指令,例如应用程序。存储器920中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件910被配置为执行指令,以执行上述交互式应用程序的处理方法和生成方法。
装置900还可以包括一个电源组件被配置为执行装置900的电源管理,一个有线或无线网络接口被配置为将装置900连接到网络,和一个输入输出(I/O)接口。装置900可以操作基于存储在存储器920的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
一种非临时性计算机可读存储介质,当存储介质中的指令由上述装置900的处理器执行时,使得上述装置900能够执行上述交互式应用程序的处理方法和生成方法。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序校验码的介质。
另外,还需要说明的是,本案中各技术特征的组合方式并不限本案权利要求中所记载的组合方式或是具体实施例所记载的组合方式,本案所记载的所有技术特征可以以任何方式进行自由组合或结合,除非相互之间产生矛盾。
需要注意的是,以上列举的仅为本发明的具体实施例,显然本发明不限于以上实施例,随之有着许多的类似变化。本领域的技术人员如果从本发明公开的内容直接导出或联想到的所有变形,均应属于本发明的保护范围。
应当理解,本发明实施例中提到的第一、第二等限定词,仅仅为了更清楚地描述本发明实施例的技术方案使用,并不能用以限制本发明的保护范围。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (31)
1.一种交互式应用程序的处理方法,其特征在于,包括:
接收用户输入的第一用户表达;
根据所述第一用户表达确定所述用户的意图,其中针对所述意图设置有结构化信息,所述结构化信息包括多个参数、至少一个响应以及所述至少一个响应中的每个响应与所述多个参数中的至少一个参数的取值的组合之间的映射关系;
根据所述第一用户表达识别出所述至少一个参数的取值;以及
根据所述至少一个参数的取值和所述结构化信息,输出与所述至少一个参数的取值的组合对应的响应。
2.如权利要求1所述的交互式应用程序的处理方法,其特征在于,所述多个参数中的每个参数包括布尔参数或实例参数。
3.如权利要求2所述的交互式应用程序的处理方法,其特征在于,所述根据所述第一用户表达识别出所述至少一个参数的取值,包括:
通过模型识别出所述至少一个参数的取值。
4.如权利要求3所述的交互式应用程序的处理方法,其特征在于,所述通过模型识别出所述至少一个参数的取值,包括:
通过特定样本的精确匹配模型识别所述布尔参数的取值。
5.如权利要求4所述的交互式应用程序的处理方法,其特征在于,当通过特定样本的精确匹配模型识别不出所述布尔参数的取值时,还包括:
通过多个样本训练得到的深度学习模型识别所述布尔参数的取值;以及
当所述深度学习模型的识别结果的置信度小于预设阈值时,通过特定样本训练得到的卷积神经网络模型识别所述布尔参数的取值。
6.如权利要求3所述的交互式应用程序的处理方法,其特征在于,所述通过模型识别出所述至少一个参数的取值,包括:
通过模板匹配模型识别所述实例参数的取值。
7.如权利要求2所述的交互式应用程序的处理方法,其特征在于,所述至少一个参数包括多个参数,所述根据所述第一用户表达识别出所述至少一个参数的取值,包括:
根据所述第一用户表达识别出所述多个参数中部分参数的取值;
通过追问语句的方式,接收关于所述多个参数中剩余参数的至少一个第二用户表达;以及
根据所述至少一个第二用户表达识别出所述多个参数中剩余参数的取值。
8.如权利要求7所述的交互式应用程序的处理方法,其特征在于,所述部分参数包括至少一个布尔参数,所述通过追问语句的方式,接收关于所述多个参数中剩余参数的至少一个第二用户表达,包括:
当识别出所述至少一个布尔参数中的一个布尔参数的取值为“是”时,通过追问语句的方式,接收关于与所述一个布尔参数相关联的实例参数的至少一个第二用户表达。
9.如权利要求7所述的交互式应用程序的处理方法,其特征在于,所述通过追问语句的方式,接收关于所述多个参数中剩余参数的至少一个第二用户表达,包括:
通过追问语句的方式,接收关于所述剩余参数中能够区分不同响应的参数的至少一个第二用户表达。
10.如权利要求1至9中任一项所述的交互式应用程序的处理方法,其特征在于,所述根据所述第一用户表达确定所述用户的意图,包括:
接收所述第一用户表达;
语音识别所述第一用户表达,将所述第一用户表达文字化;以及
将文字化的所述第一用户表达与所述交互式应用程序存储的用户表达示例进行匹配,以确定所述第一用户表达示例对应的意图技能或实体。
11.如权利要求1至9中任一项所述的交互式应用程序的处理方法,其特征在于,在所述接收用户输入的第一用户表达之前,还包括:
接收开发者设置的所述多个参数和所述至少一个响应;
建立所述映射关系,以生成所述结构化信息;以及
根据所述结构化信息,生成所述交互式应用程序。
12.一种交互式应用程序的生成方法,其特征在于,包括:
接收开发者针对意图设置的多个参数和至少一个响应;
建立所述至少一个响应中的每个响应与所述多个参数中的至少一个参数的取值的组合之间的映射关系,以生成针对所述意图的结构化信息;以及
根据所述结构化信息,生成所述交互式应用程序,其中所述交互式应用程序用于根据用户表达确定用户的意图,根据所述用户表达识别出所述至少一个参数的取值,并根据所述至少一个参数的取值和所述结构化信息,输出与所述至少一个参数的取值的组合对应的响应。
13.如权利要求12所述的交互式应用程序的生成方法,其特征在于,所述接收开发者针对意图设置的多个参数和至少一个响应,包括:
接收所述开发者输入的针对所述交互式应用程序的用户的意图的多个属性,接收所述开发者输入的所述多个属性中的至少一个属性对应的属性值,并接收所述开发者输入的针对所述至少一个属性对应的属性值的响应;
所述建立所述至少一个响应中的每个响应与所述多个参数中的至少一个参数的取值的组合之间的映射关系,以生成针对所述意图的结构化信息,包括:
建立所述响应与所述至少一个属性对应的属性值之间映射关系,以使得所述交互式应用程序在接收到的用户表达包括所述至少一个属性对应的属性值时,输出所述响应;
所述根据所述结构化信息,生成所述交互式应用程序,包括:
根据所述多个属性、所述响应和所述映射关系,生成所述交互式应用程序。
14.如权利要求13所述的交互式应用程序的生成方法,其特征在于,还包括:
接收所述开发者输入的所述多个属性对应的多个实体,其中,所述多个实体中的每个实体为多个属性值的集合,所述实体包括所述至少一个属性对应的属性值之一,用于根据所述响应批量生成所述多个属性值对应的响应,所述属性值包括固定值、范围或布尔值。
15.如权利要求14所述的交互式应用程序的生成方法,其特征在于,所述接收所述开发者输入的所述多个属性对应的多个实体,包括:
接收所述开发者在实体输入界面的实体输入区输入的所述多个实体,其中,所述多个实体中的每个实体对应一个或多个属性,所述一个或多个属性在属性输入界面输入。
16.如权利要求13所述的交互式应用程序的生成方法,其特征在于,所述属性为复合属性,其中,所述复合属性的至少一个属性值中的每个属性值由多个子属性的属性值共同确定。
17.如权利要求13所述的交互式应用程序的生成方法,其特征在于,还包括:
接收所述开发者输入的用户表达示例,所述用户表达示例用于训练模型,以识别多种用户表达。
18.如权利要求17所述的交互式应用程序的生成方法,其特征在于,所述接收所述开发者输入的用户表达示例,包括:
接收所述开发者在用户界面的用户表达示例输入区的文本框内输入的所述用户表达示例。
19.如权利要求17所述的交互式应用程序的生成方法,其特征在于,所述接收开发者输入的针对所述交互式应用程序的用户的意图的多个属性,包括:
基于所述用户表达示例中的多个属性值自动生成所述多个属性;或者
接收所述开发者从所述用户表达示例被点击生成的下拉菜单中选择的所述多个属性。
20.如权利要求13所述的交互式应用程序的生成方法,其特征在于,所述接收开发者输入的针对所述交互式应用程序的用户的意图的多个属性,包括:
接收所述开发者在用户界面的属性输入区的文本框内输入的所述多个属性。
21.如权利要求13所述的交互式应用程序的生成方法,其特征在于,还包括:
接收开发者输入的追问语句,所述追问语句用于所述交互式应用程序向所述用户发送以获取用户表达中未包含的属性对应的属性值。
22.如权利要求21所述的交互式应用程序的生成方法,其特征在于,所述追问语句用于所述交互式应用程序向所述用户发送以获取用户表达中未包含的多个属性中能够区分不同响应的属性对应的属性值。
23.如权利要求21所述的交互式应用程序的生成方法,其特征在于,所述接收开发者输入的追问语句,包括:
接收所述开发者在用户界面的追问语句输入区的文本框内输入的所述追问语句。
24.如权利要求21所述的交互式应用程序的生成方法,其特征在于,还包括:
接收开发者输入的确认追问语句,所述确认追问语句用于所述交互式应用程序向所述用户发送以便用户对已回复的属性对应的属性值进行再次确认。
25.如权利要求13所述的交互式应用程序的生成方法,其特征在于,还包括:
接收所述开发者输入的用户表达示例;
接收所述开发者输入的意图属性,所述意图属性的属性值用于提示所述用户表达示例是否触发所述意图,
其中所述建立所述响应与所述至少一个属性对应的属性值之间映射关系,包括:
当所述用户表达示例触发所述意图时,建立所述响应与所述至少一个属性对应的属性值之间映射关系。
26.如权利要求13至25中的任一项所述的交互式应用程序的生成方法,其特征在于,所述响应包括文本响应、卡片响应和/或地址响应。
27.如权利要求13至25中的任一项所述的交互式应用程序的生成方法,其特征在于,所述接收所述开发者输入的针对所述意图的响应,包括:
接收所述开发者在用户界面的响应输入区的第一文本框内输入的所述响应,
其中所述接收所述开发者输入的所述多个属性中的至少一个属性对应的属性值,包括:
接收所述开发者在用户界面的响应输入区的第二文本框内输入的所述至少一个属性对应的属性值,其中在所述开发者输入所述多个属性之后,在所述响应输入区呈现所述多个属性的选项,以便所述开发者选择触发所述响应的所述至少一个属性,并在所述至少一个属性对应的文本框内接收所述开发者输入的所述至少一个属性对应的属性值。
28.如权利要求13至25中的任一项所述的交互式应用程序的生成方法,其特征在于,还包括:
接收所述开发者在用户界面的意图输入区的文本框内输入的所述意图。
29.一种交互式应用程序的处理系统,其特征在于,包括:
接收模块,用于接收用户输入的第一用户表达;
确定模块,用于根据所述第一用户表达确定所述用户的意图,其中针对所述意图设置有结构化信息,所述结构化信息包括多个参数和至少一个响应以及所述至少一个响应中的每个响应与所述多个参数中的至少一个参数的取值的组合之间的映射关系;
识别模块,用于根据所述第一用户表达识别出所述至少一个参数的取值;
输出模块,用于根据所述至少一个参数的取值和所述结构化信息,输出与所述至少一个参数的取值的组合对应的响应。
30.一种交互式应用程序的生成系统,其特征在于,包括:
接收模块,用于接收开发者针对意图设置的多个参数和至少一个响应;
建立模块,用于建立所述至少一个响应中的每个响应与所述多个参数中的至少一个参数的取值的组合之间的映射关系,以生成针对所述意图的结构化信息;
生成模块,用于根据所述结构化信息,生成所述交互式应用程序,其中所述交互式应用程序用于根据用户表达确定用户的意图,根据所述用户表达识别出所述至少一个参数的取值,并根据所述至少一个参数的取值和所述结构化信息,输出与所述至少一个参数的取值的组合对应的响应。
31.一种计算机可读存储介质,其上存储有计算机可执行指令,其特征在于,所述可执行指令被处理器执行时实现如权利要求1至28中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2018115117139 | 2018-12-11 | ||
CN201811511713.9A CN109739481A (zh) | 2018-12-11 | 2018-12-11 | 生成交互式应用程序的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110018823A true CN110018823A (zh) | 2019-07-16 |
CN110018823B CN110018823B (zh) | 2022-06-14 |
Family
ID=66359388
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811511713.9A Pending CN109739481A (zh) | 2018-12-11 | 2018-12-11 | 生成交互式应用程序的方法及系统 |
CN201910419352.3A Expired - Fee Related CN110018823B (zh) | 2018-12-11 | 2019-05-20 | 交互式应用程序的处理方法及系统、生成方法及系统 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811511713.9A Pending CN109739481A (zh) | 2018-12-11 | 2018-12-11 | 生成交互式应用程序的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN109739481A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457015A (zh) * | 2019-07-17 | 2019-11-15 | 北京奇点机智科技有限公司 | 生成交互式应用程序的方法及系统 |
CN112685542A (zh) * | 2019-10-17 | 2021-04-20 | 阿里巴巴集团控股有限公司 | 用于问答系统的方法、装置、计算机系统及可读存储介质 |
CN114995799A (zh) * | 2022-07-18 | 2022-09-02 | 新华三半导体技术有限公司 | 一种汇编代码生成方法、装置及电子设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113868092B (zh) * | 2021-10-11 | 2024-06-21 | 维沃移动通信有限公司 | 应用确定方法、应用确定装置、电子设备和可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104144108A (zh) * | 2013-09-30 | 2014-11-12 | 腾讯科技(深圳)有限公司 | 一种消息响应方法、装置及系统 |
CN104769584A (zh) * | 2012-07-31 | 2015-07-08 | 韦韦欧股份有限公司 | 在对话交互中消除用户意图歧义 |
CN106503046A (zh) * | 2016-09-21 | 2017-03-15 | 北京光年无限科技有限公司 | 基于智能机器人的交互方法及系统 |
AU2017100581A4 (en) * | 2016-06-08 | 2017-06-29 | Apple Inc. | Intelligent automated assistant for media exploration |
CN107492374A (zh) * | 2017-10-11 | 2017-12-19 | 深圳市汉普电子技术开发有限公司 | 一种语音控制方法、智能设备及存储介质 |
CN108701454A (zh) * | 2015-10-21 | 2018-10-23 | 谷歌有限责任公司 | 对话系统中的参数收集和自动对话生成 |
-
2018
- 2018-12-11 CN CN201811511713.9A patent/CN109739481A/zh active Pending
-
2019
- 2019-05-20 CN CN201910419352.3A patent/CN110018823B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104769584A (zh) * | 2012-07-31 | 2015-07-08 | 韦韦欧股份有限公司 | 在对话交互中消除用户意图歧义 |
CN104144108A (zh) * | 2013-09-30 | 2014-11-12 | 腾讯科技(深圳)有限公司 | 一种消息响应方法、装置及系统 |
CN108701454A (zh) * | 2015-10-21 | 2018-10-23 | 谷歌有限责任公司 | 对话系统中的参数收集和自动对话生成 |
AU2017100581A4 (en) * | 2016-06-08 | 2017-06-29 | Apple Inc. | Intelligent automated assistant for media exploration |
CN106503046A (zh) * | 2016-09-21 | 2017-03-15 | 北京光年无限科技有限公司 | 基于智能机器人的交互方法及系统 |
CN107492374A (zh) * | 2017-10-11 | 2017-12-19 | 深圳市汉普电子技术开发有限公司 | 一种语音控制方法、智能设备及存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457015A (zh) * | 2019-07-17 | 2019-11-15 | 北京奇点机智科技有限公司 | 生成交互式应用程序的方法及系统 |
CN110457015B (zh) * | 2019-07-17 | 2023-10-17 | 北京奇点机智科技有限公司 | 生成交互式应用程序的方法及系统 |
CN112685542A (zh) * | 2019-10-17 | 2021-04-20 | 阿里巴巴集团控股有限公司 | 用于问答系统的方法、装置、计算机系统及可读存储介质 |
CN112685542B (zh) * | 2019-10-17 | 2024-02-20 | 阿里巴巴集团控股有限公司 | 用于问答系统的方法、装置、计算机系统及可读存储介质 |
CN114995799A (zh) * | 2022-07-18 | 2022-09-02 | 新华三半导体技术有限公司 | 一种汇编代码生成方法、装置及电子设备 |
CN114995799B (zh) * | 2022-07-18 | 2022-10-25 | 新华三半导体技术有限公司 | 一种汇编代码生成方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109739481A (zh) | 2019-05-10 |
CN110018823B (zh) | 2022-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101938790B1 (ko) | 자동 응답 서버 장치, 단말 장치, 응답 시스템 응답 방법 및 프로그램 | |
CN110018823A (zh) | 交互式应用程序的处理方法及系统、生成方法及系统 | |
US10162816B1 (en) | Computerized system and method for automatically transforming and providing domain specific chatbot responses | |
US11188297B2 (en) | Automatic spoken dialogue script discovery | |
CN110489755A (zh) | 文本生成方法和装置 | |
CN110399470B (zh) | 会话消息处理 | |
CN107301213A (zh) | 智能问答方法及装置 | |
CN109242514A (zh) | 客户标签推荐方法、装置和系统 | |
CN111353091A (zh) | 信息处理方法、装置、电子设备及可读存储介质 | |
CN107636647A (zh) | 自动提取通信和内容中的承诺和请求 | |
CN110321413A (zh) | 会话框架 | |
US10853579B2 (en) | Mixed-initiative dialog automation with goal orientation | |
CN112703494A (zh) | 电子装置和控制该电子装置的方法 | |
CN110727761B (zh) | 对象信息获取方法、装置及电子设备 | |
CN110019703B (zh) | 数据标记方法及装置、智能问答方法及系统 | |
WO2021184776A1 (zh) | 图像识别方法、装置、计算机设备和存储介质 | |
CN110069619A (zh) | 房源展示方法、装置、设备及计算机可读存储介质 | |
CN109032381A (zh) | 一种基于上下文的输入方法、装置、存储介质及终端 | |
CN109918409A (zh) | 一种设备画像构建方法、装置、存储介质及设备 | |
CN110443632A (zh) | 用户画像的用户管理方法、装置、计算机设备及存储介质 | |
CN110489649A (zh) | 标签关联内容的方法及装置 | |
EP3523932B1 (en) | Method and apparatus for filtering a plurality of messages | |
CN109684540A (zh) | 服务信息交互的方法和装置 | |
CN108306813B (zh) | 会话消息的处理方法、服务器及客户端 | |
CN111159344A (zh) | 机器人应答方法、装置、设备及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220614 |