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

对话方法、装置、计算机设备和存储介质

文献发布时间:2024-04-18 19:58:30


对话方法、装置、计算机设备和存储介质

技术领域

本申请涉及计算机技术领域,特别是涉及一种对话方法、装置、计算机设备、存储介质和计算机程序产品。

背景技术

随着智能对话技术的发展,出现了模式匹配技术,模式匹配是一种基于规则的匹配方法,用于将请求方的输入与预定义的模式或模板进行匹配,然后将最匹配的回复作为输出。目前,通常将预定义的模式或模板保存到匹配库中,通过匹配库进行模式匹配。然而,当匹配库中的模式数量比较多时,往往需要消耗大量的时间与匹配库中的模式进行匹配,从而导致对话的效率降低。

发明内容

基于此,有必要针对上述技术问题,提供一种能够提高对话匹配效率的对话方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。

第一方面,本申请提供了一种对话方法。所述方法包括:

获取对话请求,对话请求携带询问语句;

基于对话请求获取对话服务类型,基于对话服务类型获取对应的对话配置参数和各个模式描述信息,模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息是将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到的,压缩偏移信息用于表征对话模式状态转换信息中非目标信息的偏移;

按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,得到各个候选模式描述信息;

按照对话配置参数中的槽位填充参数将各个候选模式描述信息分别对应的对话模式信息进行槽位填充,得到各个对话意图信息,并按照对话配置参数中的意图筛选参数将各个对话意图信息进行筛选,得到目标对话意图信息;

获取与目标对话意图信息关联的回复语句,将回复语句返回对话请求对应的请求端。

第二方面,本申请还提供了一种对话装置。所述装置包括:

请求获取模块,用于获取对话请求,对话请求携带询问语句;

信息获取模块,用于基于对话请求获取对话服务类型,基于对话服务类型获取对应的对话配置参数和各个模式描述信息,模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息是将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到的,压缩偏移信息用于表征对话模式状态转换信息中非目标信息的偏移;

匹配模块,用于按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,得到各个候选模式描述信息;

筛选模块,用于按照对话配置参数中的槽位填充参数将各个候选模式描述信息分别对应的对话模式信息进行槽位填充,得到各个对话意图信息,并按照对话配置参数中的意图筛选参数将各个对话意图信息进行筛选,得到目标对话意图信息;

回复模块,用于获取与目标对话意图信息关联的回复语句,将回复语句返回对话请求对应的请求端。

第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取对话请求,对话请求携带询问语句;

基于对话请求获取对话服务类型,基于对话服务类型获取对应的对话配置参数和各个模式描述信息,模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息是将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到的,压缩偏移信息用于表征对话模式状态转换信息中非目标信息的偏移;

按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,得到各个候选模式描述信息;

按照对话配置参数中的槽位填充参数将各个候选模式描述信息分别对应的对话模式信息进行槽位填充,得到各个对话意图信息,并按照对话配置参数中的意图筛选参数将各个对话意图信息进行筛选,得到目标对话意图信息;

获取与目标对话意图信息关联的回复语句,将回复语句返回对话请求对应的请求端。

第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取对话请求,对话请求携带询问语句;

基于对话请求获取对话服务类型,基于对话服务类型获取对应的对话配置参数和各个模式描述信息,模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息是将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到的,压缩偏移信息用于表征对话模式状态转换信息中非目标信息的偏移;

按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,得到各个候选模式描述信息;

按照对话配置参数中的槽位填充参数将各个候选模式描述信息分别对应的对话模式信息进行槽位填充,得到各个对话意图信息,并按照对话配置参数中的意图筛选参数将各个对话意图信息进行筛选,得到目标对话意图信息;

获取与目标对话意图信息关联的回复语句,将回复语句返回对话请求对应的请求端。

第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:

获取对话请求,对话请求携带询问语句;

基于对话请求获取对话服务类型,基于对话服务类型获取对应的对话配置参数和各个模式描述信息,模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息是将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到的,压缩偏移信息用于表征对话模式状态转换信息中非目标信息的偏移;

按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,得到各个候选模式描述信息;

按照对话配置参数中的槽位填充参数将各个候选模式描述信息分别对应的对话模式信息进行槽位填充,得到各个对话意图信息,并按照对话配置参数中的意图筛选参数将各个对话意图信息进行筛选,得到目标对话意图信息;

获取与目标对话意图信息关联的回复语句,将回复语句返回对话请求对应的请求端。

上述对话方法、装置、计算机设备、存储介质和计算机程序产品,通过将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到模式描述信息,并按照对话模式状态转换信息中非目标信息的偏移得到压缩偏移信息。然后获取对话请求,基于对话请求的对话服务类型获取对应的对话配置参数和各个模式描述信息。按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,从而使得在匹配过程中大幅缩小搜索范围,提高了匹配的执行效率,然后按照对话配置参数将各个候选模式描述信息分别对应的对话模式信息进行筛选,从而能够精细化的控制匹配过程,提高了匹配的灵活性。

附图说明

图1为一个实施例中对话方法的应用环境图;

图2为一个实施例中对话方法的流程示意图;

图3为一个实施例中得到模式描述信息的流程示意图;

图4为一个具体实施例中对话模式状态转换信息的示意图;

图5为一个具体实施例中偏移后的对话模式状态转换信息的示意图;

图6为一个具体实施例中模式描述信息的示意图;

图7为一个具体实施例中得到对话模式状态转换信息的示意图;

图8为一个具体实施例中对话服务创建页面的示意图;

图9为一个具体实施例中问法配置页面的示意图;

图10为一个具体实施例中意图配置页面的示意图;

图11为另一个具体实施例中对话服务创建页面的示意图;

图12为一个具体实施例中分类模型配置的页面示意图;

图13为一个具体实施例中装修服务对话的示意图;

图14为一个具体实施例中装修服务对话流程的示意图;

图15为一个实施例中得到候选模式描述信息的流程示意图;

图16为一个具体实施例中音乐对话匹配的示意图;

图17为一个具体实施例中得到最终意图信息的示意图;

图18为一个具体实施例中对话方法的流程示意图;

图19为一个具体实施例中对话平台的整体结构示意图;

图20为一个具体实施例中对话匹配的整体结构示意图;

图21为一个具体实施例中对话匹配的具体结构示意图;

图22为一个实施例中对话装置的结构框图;

图23为一个实施例中计算机设备的内部结构图;

图24为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

自然语言处理(Nature Language processing, NLP)是计算机科学领域与人工智能领域中的重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理涉及自然语言,即人们日常使用的语言,与语言学研究密切;同时涉及 计算机科学和数学。人工智能领域模型训练的重要技术,预训练模型,即是从NLP领域的大语言模型(Large Language Model)发展而来。经过微调,大语言模型可以广泛应用于下游任务。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。

本申请实施例提供的方案涉及人工智能的机器人问答等技术,具体通过如下实施例进行说明:

本申请实施例提供的对话方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。服务器104获取终端102发送的对话请求,对话请求携带询问语句;服务器104基于对话请求获取对话服务类型,基于对话服务类型获取对应的对话配置参数和各个模式描述信息,模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息是将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到的,压缩偏移信息用于表征对话模式状态转换信息中非目标信息的偏移;服务器104按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,得到各个候选模式描述信息;服务器104按照对话配置参数中的槽位填充参数将各个候选模式描述信息分别对应的对话模式信息进行槽位填充,得到各个对话意图信息,并按照对话配置参数中的意图筛选参数将各个对话意图信息进行筛选,得到目标对话意图信息;服务器104获取与目标对话意图信息关联的回复语句,将回复语句返回对话请求对应的请求端,该请求端可以是终端102,也可以是服务器等。其中,终端102可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。

在一个实施例中,如图2所示,提供了一种对话方法,以该方法应用于图1中的服务器为例进行说明,本实施例以该方法应用于服务器进行举例说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:

S202,获取对话请求,对话请求携带询问语句。

其中,对话请求是指进行对话的请求,该对话请求可以是通过对话机器人触发的,该是经由对话或文字进行交谈的计算机程序。能够模拟人类对话,通过图灵测试。该对话机器人可用于实用的目的,如客户服务或资讯获取。询问语句是指进行询问对话时的输入语句。该询问语句可以是任意语言的语句,可以是全语种中任意一种语言的语句,比如,该语言可以是中文、日文、俄文、英文等等。该询问语句可以是疑问句、陈述句、祈使句和感叹句等。

具体地,服务器可以是实时获取到终端通过对话机器人发送的对话请求,解析该对话请求,得到携带的询问语句。终端也可以是实时获取到对话语音,服务器再获取到终端发送的对话语音,将对话语音转换为询问语句。服务器也可以是获取到提供对话业务服务的服务方发送的对话请求,并解析得到对话请求中的询问语句。

S204,基于对话请求获取对话服务类型,基于对话服务类型获取对应的对话配置参数和各个模式描述信息,模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息是将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到的,压缩偏移信息用于表征对话模式状态转换信息中非目标信息的偏移。

其中,对话服务类型用于表征提供的对话服务任务的类型,不同的对话服务任务对应不同的对话服务类型。对话服务任务是指提供对话服务的任务,不同的场景可以提供不同的对话服务任务,不同的行业可以提供不同的对话服务任务,不同的领域可以提供不同的对话服务任务等等,比如,装修行业提供装修相关对话服务任务,对应的对话服务类型为装修对话服务类型。餐饮领域提供餐饮相关对话服务任务,对应的对话服务类型为餐饮对话服务类型。不同的对话服务类型对应有不同的对话配置参数和模式描述信息,对话配置参数是预先设置好的对对话匹配进行控制的参数。模式描述信息用于表征预先设置好的对话模式信息。该对话模式信息可以是预先设置好的用于进行模式匹配的正则表达式字符串。该模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息是将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到的,压缩偏移信息用于表征对话模式状态转换信息中非目标信息的偏移。对话模式状态转换信息用于表征对话模式信息中字符对应的状态信息,该对话模式状态转换信息是指对话模式信息中字符对应的状态信息的可达矩阵。目标信息是指对话模式状态转换信息中的目标值。非目标信息是指对话模式状态转换信息中除目标值以外的信息,该目标值可以是零。模式压缩信息是指将对话模式状态转换信息压缩后得到的只包含非目标信息的状态转换信息,该模式压缩信息可以是一维数组。压缩偏移信息用于表征对话模式状态转换信息中非目标信息在压缩时的位置移动量。

具体地,服务器获取到对话服务类型对应的对话配置参数和各个对话模式信息,然后将每个对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到模式压缩信息,然后再根据对话模式状态转换信息中非目标信息的偏移确定压缩偏移信息,根据每个对话模式信息对应的模式压缩信息和压缩偏移信息确定每个对话模式信息对应的模式描述信息。然后服务器将对话服务类型和对应的对话配置参数和各个模式描述信息关联保存。服务器根据获取到对话请求对应的对话服务类型,其中,可以根据预先设置好的对话机器人的对话服务类型来获取到对话请求对应的对话服务类型。服务器也可以根据对话请求中携带的对话机器人标识来获取对应的对话服务类型。服务器也可以根据对话请求中携带的请求端标识来获取对应的对话服务类型,可以根据预先设置好的请求端标识与对话服务类型的关联关系获取对话服务类型。然后服务器可以根据对话服务类型从数据库中查找到对应的对话配置参数和各个模式描述信息,服务器也可以根据对话服务类型从提供数据存储服务的服务器中查找到对应的对话配置参数和各个模式描述信息。

S206,按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,得到各个候选模式描述信息。

其中,候选模式描述信息是指与询问语句匹配成功的模式描述信息,是需要筛选的模式描述信息。

具体地,服务器在压缩偏移信息中查找询问语句中的各个字符对应的状态所在的偏移信息,然后根据偏移信息在模式压缩信息中查找询问语句中的各个字符对应的状态信息,当询问语句中所有字符都查找到对应的状态信息时,说明该模式描述信息对应的对话模式信息与询问语句模式匹配成功,此时,将对应的模式描述信息作为候选模式描述信息。服务器将每个模式描述信息都与询问语句进行模式匹配,将所有模式匹配成功的模式描述信息作为候选模式描述信息,从而得到各个候选模式描述信息。

S208,按照对话配置参数中的槽位填充参数将各个候选模式描述信息分别对应的对话模式信息进行槽位填充,得到各个对话意图信息,并按照对话配置参数中的意图筛选参数将各个对话意图信息进行筛选,得到目标对话意图信息。

其中,槽位是指在询问语句中用来准确表达该意图的关键信息的标识。槽位填充是指将对话模式信息转换为明确的对话意图信息而补全槽位信息的过程。槽位填充参数是指在进行槽位填充所使用的控制参数。对话意图信息是指能够表征询问语句对应的意图的信息,可以是与询问语句匹配的字符串。意图筛选参数是指在对对话意图信息进行筛选时使用的控制参数。目标对话意图信息是指最终筛选得到的对话意图信息。

具体地,服务器获取到每个候选模式描述信息分别对应的对话模式信息中槽位对应的各个候选填充信息,然后使用对话配置参数中的槽位填充参数对各个候选填充信息进行分配,得到槽位填充信息,然后将槽位填充信息补充到对话模式信息中的槽位处,从而得到每个候选模式描述信息分别对应的对话意图信息。然后服务器可以按照对话配置参数中的意图筛选参数选取各个对话意图信息与询问语句最匹配的对话意图信息,将最匹配的对话意图信息作为目标对话意图信息。

S210,获取与目标对话意图信息关联的回复语句,将回复语句返回对话请求对应的请求端。

其中,回复语句是指预先设置好的目标对话意图信息对应的对话模式信息关联的回复语句。

具体地,服务器从数据库中查找与目标对话意图信息对应的对话模式信息关联的回复语句,将该回复语句返回对话请求对应的请求端,该请求端展示该回复语句。在一个实施例中,请求端可以根据该回复语句,再输入询问语句。此时,服务器获取到新的对话请求,重新响应对话请求,得到的新的回复语句。即服务器可以按照上述实施例中的对话方法进行多轮的对话,从而可以实现对话流服务,提高对话服务体验。

上述对话方法、装置、计算机设备、存储介质和计算机程序产品,通过将对话模式信息进行状态转换,得到对话模式状态转换信息,将所述对话模式状态转换信息中的目标信息进行压缩得到模式描述信息,并按照对话模式状态转换信息中非目标信息的偏移得到压缩偏移信息。然后获取对话请求,基于对话请求的对话服务类型获取对应的对话配置参数和各个模式描述信息。按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,从而使得在匹配过程中大幅缩小搜索范围,提高了匹配的执行效率,然后按照对话配置参数将各个候选模式描述信息分别对应的对话模式信息进行筛选,从而能够精细化的控制匹配过程,提高了匹配的灵活性。

在一个实施例中,如图3所示,在步骤S202之前,即在获取对话请求,对话请求携带询问语句之前,还包括步骤:

S302,获取对话服务类型对应的各个对话模式信息。

S304,将对话服务类型对应的各个对话模式信息分别进行状态转换,得到各个对话模式信息分别对应的对话模式状态转换信息。

具体地,服务器从数据库中获取到对话服务类型对应的各个对话模式信息,然后将每个对话模式信息分别进行状态转换,得到每个对话模式信息分别对应的对话模式状态转换信息。在一个具体的实施例中,对话模式信息为对话的正则表达式字符串,可以将对话的正则表达式字符串按照DFA(Deterministic Finite Automaton,确定有限状态自动机)算法进行转换,得到DFA结构图。然后可以将DFA结构图以DFA可达矩阵的形式展示,如图4所示,为对话模式状态转换信息的示意图,其中,对话模式状态转换信息是二维数组,其中。st#对应的列是指状态编号。字符包括a、b、c、d、e和EOF。当处于状态编号1并且输入字符是a时,移动到的状态为2,即状态编号为1的行和符合为a的列对应的状态值,该状态不为0,说明字符a匹配成功。

S306,将各个对话模式信息分别对应的对话模式状态转换信息中的非目标信息按照对话模式状态转换信息中的目标信息进行偏移,得到各个对话模式信息分别对应的偏移后的对话模式状态转换信息。

具体地,服务器将每个对话模式信息分别对应的对话模式状态转换信息中的非目标信息按照对话模式状态转换信息中的目标信息进行偏移,即可以是根据对话模式状态转换信息中的非目标信息所在的位置和对话模式状态转换信息中的目标信息所在位置来确定非目标信息的移动量,然后按照移动量进行偏移。该对话模式状态转换信息可以为邻接矩阵,将邻接矩阵中每一行的非目标信息按照之前每一行中的目标信息进行偏移,使每一行非目标信息偏移后的位置对应的之前行的位置都是目标信息,从而得到偏移后的对话模式状态转换信息。

在一个具体实施例中,如图5所示,为偏移后的对话模式状态转换信息的示意图,其中,off对应的列表示偏移量。从第0行和第1行开始,将每一行移位直到其非零值在该行之上的行对应的值为零值时偏移结束,遍历每一行,得到偏移后的对话模式状态转换信息。

S308,基于偏移后的对话模式状态转换信息进行压缩,得到各个对话模式信息分别对应的模式压缩信息,并基于对话模式状态转换信息中非目标信息的偏移确定各个对话模式信息分别对应的压缩偏移信息。

S310,基于模式压缩信息和压缩偏移信息得到各个对话模式信息分别对应的模式描述信息。

具体地,服务器可以然后使用对话模式状态转换信息中的非目标信息覆盖对话模式状态转换信息中的目标信息,得到模式压缩信息。然后根据对话模式状态转换信息中非目标信息的移动量来确定对话模式信息对应的压缩偏移信息。最后服务器将模式压缩信息和压缩偏移信息作为对话模式信息对应的模式描述信息,并将该模式描述信息保存到数据存储空间中,方便后续的使用。

在一个具体的实施例中,如图6所示,为模式描述信息的示意图,其中,数组A是压缩偏移信息,该压缩偏移信息中第一行是指状态编号。第二行是指状态编号对应行的偏移量。数组B是模式压缩信息,该模式压缩信息中第一行是指索引。第二行是指将所有非零值覆盖零值后得到的行,即每一列都有一个非零值,用一维数组表示所有非零值。第三行是指用于表征第二行中每个非零值压缩前所在的状态编号。

在上述实施例中,通过将对话模式信息进行状态转换,得到对应的对话模式状态转换信息,然后将对话模式状态转换信息中的非目标信息按照对话模式状态转换信息中的目标信息进行偏移,得到偏移后的对话模式状态转换信息。最后将偏移后的对话模式状态转换信息进行压缩,并得到对应的压缩偏移信息,从而得到模式描述信息,即将对话模式信息进行状态转换并进行压缩,从而可以节省存储空间,即减少对话模式信息所占用的存储空间资源,进而可以减少匹配的搜索范围,进而提高了匹配的效率。

在一个实施例中,S304,即将对话服务类型对应的各个对话模式信息分别进行状态转换,得到各个对话模式信息分别对应的对话模式状态转换信息,包括步骤:

获取对话服务类型对应的当前对话模式信息,将当前对话模式信息进行非确定状态连通图转换,得到当前非确定状态连通图;将当前非确定状态连通图进行确定状态连通图转换,得到当前确定状态连通图;将当前确定状态连通图中的复用状态节点进行合并,得到目标确定状态连通图,基于目标确定状态连通图得到当前对话模式信息对应的对话模式状态转换信息。

其中,当前对话模式信息是指当前要进行状态转换的对话模式信息。当前非确定状态连通图是指当前对话模式信息对应的非确定状态连通图,该非确定状态连通图是指对每个状态和输入字符可以有多个可能的下一个状态的连通同。即该非确定状态连通图可以是NFA(Nondeterministic Finite Automaton,非确定有限状态自动机)图。当前确定状态连通图是指当前对话模式信息对应的确定状态连通图,确定状态连通图是指对于一个状态和输入字符通过转移函数可以转移到确定的下一个状态。该确定状态连通图可以是DFA(Deterministic Finite Automaton,确定有限状态自动机)图。目标确定状态连通图是指将当前确定状态连通图最小化后得到的确定状态连通图。复用状态节点是指等价的状态节点,该等价的状态节点满足一致性条件和蔓延性条件,一致性条件是指两个状态必须同时为接受状态或非接受状态。蔓延性条件对于所有的输入字符,两个状态必须转移到等价的状态中。

具体地,服务器可以从各个对话模式信息依次选取当前对话模式信息。然后先将当前对话模式信息转换为连通图,然后将连通图转换进行非确定状态连通图转换,得到当前非确定状态连通图。然后利用转换算法将当前非确定状态连通图进行确定状态连通图转换,得到当前确定状态连通图,该转换算法可以是子集构造算法。然后从当前确定状态连通图中筛选处满足一致性条件和蔓延性条件的复用状态节点,再将当前确定状态连通图中的复用状态节点进行合并,得到目标确定状态连通图。最后使用目标确定状态连通图得到当前对话模式信息对应的对话模式状态转换信息。在一个实施例中,服务器将当前非确定状态连通图进行确定状态连通图转换,得到当前确定状态连通图时,可以获取到初状态转换信息记录队列,通过状态转换信息记录队列中记录转换时所需要遍历的信息,并按照状态转换信息记录队列进行转换。

在一个具体的实施例中,当前对话模式信息为ab正则表达式,对ab正则表达式进行状态转换,得到对话模式状态转换信息。如图7所示,为得到的对话模式状态转换信息的示意图,先将ab正则表达式转换为简单连通图,包括各个一元操作符对应的连通图和各个二元操作符对应的连通图,然后将简单连通图转换为NFA图,再将NFA图转换为DFA图,最后将DFA图进行最小化,即将复用状态节点进行合并,得到目标DFA图,然后将目标DFA图对应的存储形式的邻接矩阵作为ab正则表达式对应的对话模式状态转换信息。

在上述实施例中,通过将当前对话模式信息进行非确定状态连通图转换,得到当前非确定状态连通图。然后将当前非确定状态连通图进行确定状态连通图转换,得到当前确定状态连通图。再将当前确定状态连通图中的复用状态节点进行合并,得到目标确定状态连通图,最后基于目标确定状态连通图得到当前对话模式信息对应的对话模式状态转换信息,从而提高了得到的对话模式状态转换信息的准确性。

在一个实施例中,在S310之后,即在基于模式压缩信息和压缩偏移信息得到各个对话模式信息分别对应的模式描述信息之后,还包括步骤:

将各个对话模式信息分别对应的模式描述信息进行序列化操作,得到序列化文件,将序列化文件存储到数据管理存储空间中。获取对话匹配实例建立请求,基于对话匹配实例建立请求从数据管理存储空间中获取序列化文件,将序列化文件进行反序列化操作,得到各个对话模式信息分别对应的模式描述信息。将各个对话模式信息分别对应的模式描述信息作为对话匹配实例进行加载。

其中,序列化操作是指将模式描述信息转换为可以存储或传输的形式的过程。序列化文件是指进行序列化操作后得到的保存模式描述信息的文件。数据管理存储空间用于进行数据管理的存储空间,该存储空间可以是数据库。反序列化操作是指将序列化文件还原为模式描述信息的过程。对话匹配实例是指进行对话匹配时所使用的模式描述信息,每个模式描述信息都是一个对话匹配实例。

具体地,服务器可以使用数据序列化工具将各个对话模式信息分别对应的模式描述信息进行序列化操作,得到序列化文件,比如,该数据序列化工具可以是protobuf(结构化数据存储格式)工具,该protobuf工具用于结构数据的序列化后进行网络传输。服务器也可以通过数据序列化接口将各个对话模式信息分别对应的模式描述信息进行序列化操作,得到序列化文件。然后将序列化文件存储到数据管理存储空间中。然后服务器检测到要加载对话匹配实例时,获取到对话匹配实例建立请求,基于对话匹配实例建立请求从数据管理存储空间中获取序列化文件,将序列化文件进行反序列化操作,将通过反序列化操作将序列化文件进行解包,得到各个对话模式信息分别对应的模式描述信息。最后服务器将各个对话模式信息分别对应的模式描述信息作为对话匹配实例进行加载,比如,可以在对话服务类型对应的对话匹配实例池中进行加载,然后等待待匹配过程使用。

在一个具体的实施例中,可以使用如下所示的代码进行对话匹配实例的加载,代码如下所示:

func Buildmodel(skillInfo *model.SkilInfo) //模型编译 数据管理服务使用

func Loadmodel(array []byte) *model. DFAData //加载解压后的DFA数据模型,生成匹配所需要DFA数据,并缓存DFA数据

func PackDFADataProto(data *model. DFAData) //使用Proto序列化的方式打包DFA数据模型

func UnPackDFADataProto(array []byte) *model. DFAData)///使用Proto序列化的方式解包DFA数据模型。

步骤S204,即基于对话服务类型获取对应的各个模式描述信息,包括步骤:

从对话匹配实例中获取对话服务类型获取对应的各个模式描述信息。

具体地,服务器在进行模式匹配时,从对话服务类型对应的对话匹配实例池中获取到对应的各个模式描述信息。

在上述实施例中,通过将各个对话模式信息分别对应的模式描述信息进行序列化操作,得到序列化文件,将序列化文件存储到数据管理存储空间中。然后通过反序列化操作将各个对话模式信息分别对应的模式描述信息作为对话匹配实例进行加载,从而使服务器在进行模式匹配时可以直接从已加载的对话匹配实例中获取各个模式描述信息并进行匹配,从而提高了匹配的效率。

在一个实施例中,在S302之前,即在获取对话服务类型对应的各个对话模式信息之前,还包括步骤:

获取对话服务创建请求,对话服务创建请求携带对话服务类型;基于对话服务类型获取对应的对话服务创建页面,将对话服务创建页面返回对话服务创建请求对应的请求端;获取对话服务创建请求对应的请求端通过对话服务创建页面触发的对话服务发布请求;解析对话服务发布请求,得到对话服务类型对应的各个对话模式信息和对话服务类型对应的对话配置参数,并将对话服务类型对应的各个对话模式信息和对话服务类型对应的对话配置参数存储到数据管理空间中。

其中,对话服务创建请求是指用于创建对话服务类型对应的对话服务的请求。对话服务创建页面是指进行对话服务创建的页面,通过对话服务创建页面可以配置各个对话模式信息和对话配置参数。对话服务发布请求是指将创建完成的对话服务进行发布的请求,将对话服务发布后就可以通过对话服务进行对话。

具体地,服务器获取到请求端发送的对话服务创建请求,解析该对话服务创建请求,得到携带的对话服务类型。然后使用对话服务类型生成对应的对话服务创建页面,并将对话服务创建页面返回对话服务创建请求对应的请求端。请求端获取到对话服务创建页面并进行展示。然后创建者可以通过对话服务创建页面来配置该对话服务类型对应的对话服务,可以通过对话服务创建页面来配置该对话服务类型对应的各个对话模式信息和对话配置参数。当配置完成时,服务器获取对话服务创建请求对应的请求端通过对话服务创建页面触发的对话服务发布请求。服务器解析对话服务发布请求,得到对话服务类型对应的各个对话模式信息和对话服务类型对应的对话配置参数,并将对话服务类型对应的各个对话模式信息和对话服务类型对应的对话配置参数存储到数据管理空间中。服务器也可以将各个对话模式信息转换为对应的对话模式描述信息,然后将对话模式描述信息进行序列化后存储到数据管理空间中。

在一个具体的实施例中,可以进行对话服务机器人的创建,然后将创建号的对话服务机器人进行发布,具体来说:以装修行业的对话服务机器人为例说明,如图8所示,为对话服务创建页面的示意图,其中,通过对话服务创建页面可以进行对话流的配置,比如,对询问风格的对话意图进行配置,可以通过问法规则来配置得到各个对话模式信息,通过语义槽设置来配置要进行填充的槽位以及槽位填充参数,然后通过回复来配置对应的询问风格的对话意图对应的回复等等。然后可以配置模式泛化的相似度阈值,模式命中的优先级阈值、模式的槽位热度阈值、槽位数量阈值、反例等配置参数。比如,如图9所示,为问法配置页面的示意图,通过问法配置页面来配置问法相似度和是否为fa反例等等该问法相似度是指命中的模式与询问语句的相似度阈值,如果超过该相似度阈值说明与命中的模式匹配成功。比如,如图10所示,为意图配置页面的示意图,通过意图配置页面来配置意图筛选参数,比如意图优先级、意图承接关系,该意图承接关系是指当前意图是否有前置意图和后置意图等等。

在一个具体的实施例中,如图11所示,为另一种对话服务创建页面的示意图,其中,通过该对话服务创建页面可以直接配置对话模式信息,比如,模式A和模式B,然后可以配置对应的对话配置参数,比如,相似度阈值,优先级值,是否泛化,是否为反例等等,还可以通过配置是否调用模型服务,以及对模型服务的意图结果进行配置,如图12所示,为分类模型配置的页面示意图,通分类模型配置页面可以配置是否调用意图分类器模型,以及配置意图分类器模型进行意图分类的意图类别。

然后将该对话服务机器人进行发布,通过对话服务机器人提供装修行业的对话服务。如图13所示,为装修服务对话的示意图。其中,服务器获取到通过装修问询机器人发送的询问语句“新房毛坯”时,服务器匹配到询问风格的意图,然后获取到询问风格的意图对应的回复语句进行回复,即在装修对话页面展示回复语句,该回复语句是配置好的询问喜欢哪种风格的语句。当选取“现代简约”时,服务器获取到询问语句“现代简约”,并匹配到获取风格的意图,然后获取到询问风格的意图对应的回复语句进行回复,并依次进行对话服务,直到没有后置的意图时,对话结束。然后如图14所示,为该装修服务对话页面中装修服务对话流程的示意图。

在上述实施例中,通过获取对话服务创建请求,对话服务创建请求携带对话服务类型;基于对话服务类型获取对应的对话服务创建页面,将对话服务创建页面返回对话服务创建请求对应的请求端;获取对话服务创建请求对应的请求端通过对话服务创建页面触发的对话服务发布请求;解析对话服务发布请求,得到对话服务类型对应的各个对话模式信息和对话服务类型对应的对话配置参数,并将对话服务类型对应的各个对话模式信息和对话服务类型对应的对话配置参数存储到数据管理空间中。即通过对话服务创建页面来配置对话配置参数和各个对话模式信息,可以实现对匹配流程的灵活控制,从而提高了对话服务的灵活性。

在一个实施例中,S206,按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,得到各个候选模式描述信息,包括步骤:

按照对话配置参数中的规范化参数将询问语句进行规范化操作,得到规范化语句;按照模式压缩信息和压缩偏移信息将规范化语句与各个模式描述信息进行匹配,得到各个候选模式描述信息。

其中,规范化参数是指预先设置好的对询问语句进行规范化操作的参数,该规范化操作可以包括纠错、改写、符号处理等。

具体地,服务器按照对话配置参数中的规范化参数将询问语句进行规范化操作,比如,按照预先设置好的需要去除的符号去除询问语句中的相同符号,对询问语句进行改写以及纠错,可以通过调用改写和纠错算法对询问语句进行改写以及纠错,该改写和纠错算法可以是使用神经网络算法建立的改写和纠错模型等等,从而得到规范化语句,然后按照模式压缩信息和压缩偏移信息将规范化语句与各个模式描述信息进行匹配,得到各个候选模式描述信息。

在上述实施例中,通过按照对话配置参数中的规范化参数将询问语句进行规范化操作,得到规范化语句。最后按照模式压缩信息和压缩偏移信息将规范化语句与各个模式描述信息进行匹配,得到各个候选模式描述信息,避免使用不规范的语句进行匹配,从而提高了匹配的准确性。

在一个实施例中,如图15所示,按照模式压缩信息和压缩偏移信息将规范化语句与各个模式描述信息进行匹配,得到各个候选模式描述信息,包括:

S1502,获取起始状态转换信息,并从规范化语句中依次获取待匹配字符。

其中,起始状态转换信息是指预先设置好的开始进行匹配时使用的状态转换信息,该起始状态转换信息可以是设置为非目标信息,比如,可以为1。待匹配字符是指需要进行匹配的字符,是规范化语句中的字符,该待匹配字符可以是规范化语句中的起始字符,也可以是任意一个字符。

具体地,服务器获取到预先设置好的起始状态转换信息,然后从规范化语句中的各个字符依次获取待匹配字符,即依次将各个字符作为待匹配字符。当匹配开始时,该待匹配字符是规范化语句中的起始字符。

S1504,基于起始状态转换信息在模式压缩信息和压缩偏移信息中查找待匹配字符对应的字符状态转换信息。

其中,字符状态转换信息是指使用待匹配字符查找到的状态转换信息。

具体地,服务器按照起始状态转换信息在模式压缩信息和压缩偏移信息中查找待匹配字符对应的字符状态转换信息,其中,通过起始状态转换信息和压缩偏移信息确定待匹配字符对应的偏移信息,并按照偏移信息在模式压缩信息中查找待匹配字符对应的字符状态转换信息。

S1506,当字符状态转换信息符合预设字符匹配条件时,将字符状态转换信息作为起始状态转换信息,并返回从规范化语句中依次获取待匹配字符的步骤执行,直到规范化语句中的字符遍历完成时,获取规范化语句中终止字符对应的字符状态转换信息。

其中,预设字符匹配条件是指预先设置好的字符匹配成功的条件,比如,预设字符匹配条件可以是状态转换信息为非目标信息。终止字符是指规范化语句中的最后一个字符。

具体地,服务器判断字符状态转换信息是否符合预设字符匹配条件,当未符合预设字符匹配条件时,说明询问语句与该对话模式信息不匹配。此时,使用询问语句与下一个对话模式信息对应的对话模式描述信息进行匹配当字符状态转换信息符合预设字符匹配条件时,说明该字符匹配成功。此时,服务器将字符状态转换信息作为起始状态转换信息,并返回从规范化语句中依次获取待匹配字符的步骤执行,直到规范化语句中的字符遍历完成时,获取规范化语句中终止字符对应的字符状态转换信息。

S1508,当终止字符对应的字符状态转换信息符合预设语句匹配条件时,将模式压缩信息和压缩偏移信息对应的模式描述信息作为候选模式描述信息。

其中,预设语句匹配条件是指预先设置好的语句匹配成功的条件,该预设语句匹配条件可以是终止字符对应的字符状态转换信息为非目标信息,即处于接收状态。

具体地,服务器判断终止字符对应的字符状态转换信息是否符合预设语句匹配条件,当终止字符对应的字符状态转换信息未符合预设语句匹配条件时,说明该询问语句与该对话模式信息匹配失败。当终止字符对应的字符状态转换信息符合预设语句匹配条件时,将模式压缩信息和压缩偏移信息对应的模式描述信息作为候选模式描述信息。

在一个具体的实施例中,服务器还可以获取都匹配参数,该匹配参数用于表征是完全匹配还是部分匹配,然后按照匹配参数使用模式压缩信息和压缩偏移信息将规范化语句与各个模式描述信息进行匹配,得到各个候选模式描述信息。其中,该部分匹配可以是前后缀匹配等等。

在上述实施例中,通过使用起始状态转换信息在模式压缩信息和压缩偏移信息中查找待匹配字符对应的字符状态转换信息。当字符状态转换信息符合预设字符匹配条件时,将字符状态转换信息作为起始状态转换信息,并返回从规范化语句中依次获取待匹配字符的步骤执行,直到规范化语句中的字符遍历完成时,获取规范化语句中终止字符对应的字符状态转换信息。然后当终止字符对应的字符状态转换信息符合预设语句匹配条件时,将模式压缩信息和压缩偏移信息对应的模式描述信息作为候选模式描述信息,即按照字符依次进行匹配,从而确定候选模式描述信息,提高了得到候选模式描述信息的准确性,并且按照模式压缩信息和压缩偏移信息进行匹配,减少了查找范围,提高了匹配效率。

在一个实施例中,模式压缩信息包括压缩状态转换信息和压缩状态转换信息对应的检测状态转换信息;

S1504,基于起始状态转换信息在模式压缩信息和压缩偏移信息中查找待匹配字符对应的字符状态转换信息,包括步骤:

在压缩偏移信息中查找起始状态转换信息对应的起始偏移信息,并基于起始偏移信息和待匹配字符在检测状态转换信息中查找对应的字符检测状态转换信息;当字符检测状态转换信息与起始状态转换信息一致时,基于起始偏移信息和待匹配字符在压缩状态转换信息中查找对应的字符状态转换信息。

其中,压缩状态转换信息是指压缩后的状态转换信息,是使用一维数组存储的状态转换信息,是字符对应的下一个状态转换信息。检测状态转换信息是指用于进行检测的状态转换信息,是压缩前字符所对应的状态编号。起始偏移信息是指起始状态转换信息对应的偏移信息,可以是偏移量,可以根据状态转换信息和偏移信息的对应关系来查找起始状态转换信息对应的起始偏移信。字符检测状态转换信息是指待匹配字符对应的检测状态转换信息。

具体地,服务器可以在压缩偏移信息中根据状态转换信息和偏移信息的对应关系来查找起始状态转换信息对应的起始偏移信息,即压缩偏移信息中包括状态转换信息和偏移信息的对应关系。然后服务器使用起始偏移信息和待匹配字符在检测状态转换信息中查找对应的字符检测状态转换信息。然后判断字符检测状态转换信息与起始状态转换信息是否一致,当字符检测状态转换信息与起始状态转换信息未一致时,说明待匹配字符未匹配成功,此时,返回未匹配成功的提示信息。当字符检测状态转换信息与起始状态转换信息一致时,待匹配字符匹配成功。此时,服务器使用起始偏移信息和待匹配字符在压缩状态转换信息中查找对应的字符状态转换信息,其中,可以按照起始偏移信息和待匹配字符与下一个状态转换信息的对应关系查找到对应的字符状态转换信息。

在一个具体的实施例中,可以使用如下所示的代码进行快速召回,即查找待匹配字符对应的字符状态转换信息。

//DFA快速召回

if (checkState[Statebase[s]+i]= = s){

return nextState[Statebase[s]+i];

} else {

return 0;

}

其中,s表征状态转换信息,可以是状态编号。i表征输入字符,可以是字符编号。Statebase[s]是指起始偏移信息。checkState[Statebase[s]+i]用于表征字符检测状态转换信息。nextState[Statebase[s]+i]用于表征字符状态转换信息。0表示未匹配成功。

在上述实施例中,通过当字符检测状态转换信息与起始状态转换信息一致时,在压缩状态转换信息中查找对应的字符状态转换信息,即在保证查找准确性的基础上提高了查找到字符状态转换信息的效率。

在一个实施例中,S208,即按照对话配置参数中的槽位填充参数将各个候选模式描述信息分别对应的对话模式信息进行槽位填充,得到各个对话意图信息,包括步骤:

从对话模式信息中确定预设填充标识,并获取预设填充标识对应的各个待填充信息;按照对话配置参数中的槽位填充参数将各个待填充信息进行筛选,得到预设填充标识对应的目标待填充信息;将目标待填充信息在对话模式信息中进行槽位填充,得到对话模式信息对应的对话意图信息。

其中,预设填充标识是指预先设置好的需要进行槽位填充的标识,不同的槽位可以有不同的预设填充标识。待填充信息是指预先设置好的能够填充到对应槽位的信息,可以是字符串,比如,词、短语等等。目标待填充信息是指从各个待填充信息筛选得到的待填充信息。槽位填充参数是指预先设置好的槽位填充时的控制参数。

具体地,在配置对话模式信息时,可以在对话模式信息中配置预设填充标识。然后服务器在进行槽位填充时,可以从对话模式信息中确定需要进行槽位填充的预设填充标识。然后从数据库中获取到预设填充标识对应的各个待填充信息,比如,可以从预先设置好的词典中查找预设填充标识对应的词典结果,得到各个待填充词。然后按照对话配置参数中的槽位填充参数将各个待填充信息进行筛选,比如,该槽位填充参数可以是热度值优先,然后按照各个待填充信息的热度值筛选热度值最高的待填充信息,得到目标待填充信息。该槽位填充参数可以是完整性优先,然后按照各个待填充信息对应的完整性筛选完整性最高的待填充信息,得到目标待填充信息。该槽位填充参数可以是相似度优先,然后按照各个待填充信息对应的相似度筛选相似度最高的待填充信息,该相似度是指将待填充信息进行槽位填充得到的对话意图信息与询问语句的相似度,可以使用相似度算法来计算相似度。最后服务器将目标待填充信息在对话模式信息中进行槽位填充,得到对话模式信息对应的对话意图信息。

在一个具体的实施例中,服务器在槽位填充阶段,通过使用模式信息相似度、模式信息相似度阈值、槽位热度、槽位热度阈值、槽位数量等参数以及槽位匹配优先级、词典连通性等信息进行槽位填充流程的控制,然后调用相似度服务计算相似度,完成槽位分配、校验和填槽过程,从而得到对话模式信息对应的对话意图信息。同一个对话模式信息使用不同的槽位填充参数会得到不同的对话意图信息,比如,根据歌曲槽位可以从词典中获取各个待填充的歌曲名称和演唱者名称。然后根据模式信息相似度优先可以选取最相似度的歌曲名称和演唱者名称,也可以根据槽位热度优先选取热度最高的歌曲名称和演唱者名称,也可以根据相似度阈值选取超过阈值的歌曲名称和演唱者名称,也可以根据词典匹配优先级和词典连通性选取歌曲名称和演唱者名称,也可以根据槽位数量选取歌曲名称和演唱者名称。服务器也可以使用多个参数信息进行结合来选取对话意图信息,比如,使用相似度阈值以及槽位热度阈值来选取超过阈值的歌曲名称和演唱者名称。

在上述实施例中,通过按照对话配置参数中的槽位填充参数将各个待填充信息进行筛选,得到预设填充标识对应的目标待填充信息,然后将目标待填充信息在对话模式信息中进行槽位填充,得到对话模式信息对应的对话意图信息,从而通过槽位填充参数实现对槽位填充的控制,从而提高了槽位填充的灵活性。

在一个实施例中,S208,即按照对话配置参数中的意图筛选参数将各个对话意图信息进行筛选,得到目标对话意图信息,包括步骤:

按照对话配置参数中的模式优先级参数将各个对话意图信息进行排序,得到对话意图信息序列,从对话意图信息序列中选取得到目标对话意图信息。

其中,模式优先级参数用于表征对话模式信息的优先级,不同的对话模式信息有不同的模式优先级参数,是预先设置好的。

具体地,按照对话配置参数中的模式优先级参数将各个对话意图信息进行排序,可以是根据每个对话意图信息对应的对话模式信息的优先级分数将各个对话意图信息从大到下进行排序,得到对话意图信息序列,然后从对话意图信息序列中选取序列头部的对话意图信息,得到目标对话意图信息。

在上述实施例中,通过按照对话配置参数中的模式优先级参数将各个对话意图信息进行排序,得到对话意图信息序列,然后从对话意图信息序列中选取得到目标对话意图信息,从而可以使用模式优先级参数对对话意图信息进行控制筛选,从而提高了匹配的灵活性。

在一个实施例中,S210,即获取与目标对话意图信息关联的回复语句,将回复语句返回对话请求对应的请求端,包括步骤:

按照对话配置参数中的模型服务参数调用模型分类服务和模型匹配服务;基于模型分类服务对询问语句进行意图分类,得到询问语句对应的分类意图信息;基于模型匹配服务对询问语句进行意图匹配,得到询问语句对应的匹配意图信息;将目标对话意图信息、分类意图信息和匹配意图信息进行合并,得到最终意图信息;获取与最终意图信息关联的目标回复语句,将目标回复语句返回对话请求对应的请求端。

其中,模型分类服务是指调用意图分类识别神经网络模型对询问语句进行意图分类识别的服务。分类意图信息是指通过调用的意图分类识别神经网络模型进行分类识别得到的询问语句对应的意图信息。模型匹配服务是指调用意图匹配神经网络模型对询问语句进行意图匹配的服务。匹配意图信息是指通过调用的意图匹配神经网络模型进行匹配得到的询问语句对应的意图信息。最终意图信息是指最后匹配打破的询问语句对应的意图信息。模型服务参数是指调用模型服务的参数,可以是模型的调用接口等等。

具体地,服务器按照对话配置参数中的模型服务参数并发调用模型分类服务和模型匹配服务。然后服务器基于模型分类服务对询问语句进行意图分类,得到询问语句对应的分类意图信息,即服务器可以通过模型分类服务接口调用意图分类识别神经网络模型对询问语句进行意图分类识别,得到模型输出的分类意图信息,该输出的分类意图信息可以包括多个。该意图分类识别神经网络模型是预先使用神经网络算法训练好的模型。然后服务器可以通过模型匹配服务对询问语句进行意图匹配,得到询问语句对应的匹配意图信息,即服务器可以通过模型匹配服务接口调用意图匹配神经网络模型对询问语句进行意图匹配,得到模型输出的匹配意图信息,该输出的匹配意图信息可以包括多个。最后服务器将目标对话意图信息、分类意图信息和匹配意图信息进行汇总合并,得到最终意图信息。最后服务器获取与最终意图信息关联的目标回复语句,将目标回复语句返回对话请求对应的请求端。

在一个具体的实施例中,如图16所示,提供一种音乐对话匹配的示意图,具体来说:服务器获取到音乐对话服务机器人发送的音乐询问语句,然后根据音乐对话服务获取到对话配置参数,该对话配置参数可以包括前后缀匹配、完全匹配等DFA匹配参数,也可以包括规范化参数,还可以包括算法组件池参数等等。其中,通过规范化参数可以对音乐询问语句进行规范化,在规范化时可以获取音乐服务符号处理集,可以包括待去除符号集,比如(~, !,@,#,:,", @,#,¥,…),待转义符号集,比如(%,=,+,<>,/,%,=,*,…)以及其他符号集(π,γ,α,…)。然后按照音乐服务符号处理集对音乐询问语句中的符号进行处理。然后按照调用音乐对话服务的语句改写和纠错服务模型对经过符号处理的音乐询问语句进行改写和纠错,从而得到规范化结果,即得到规范化语句。然后使用规范化语句进行模式匹配,即与各个模式描述信息进行匹配,得到模式匹配结果即目标对话意图信息。同时使用算法组件池参数从算法组件池中调用音乐意图分类模型对规范化语句进行意图分类,得到模型分类结果,该模型分类结果中可以包括多个分类意图信息。同时使用算法组件池参数从算法组件池中调用音乐意图匹配模型对规范化语句进行匹配,得到模型匹配结果,该模型匹配结果可以包括对话模式信息中槽位的填充结果。最后将模式匹配结果、模型分类结果以及模型匹配结果进行汇总,得到最终音乐询问意图信息,并将最终音乐询问意图信息关联的音乐回复语句返回对话请求对应的请求端。

在上述实施例中,通过使用模型分类服务对询问语句进行意图分类,得到询问语句对应的分类意图信息,然后使用模型匹配服务对询问语句进行意图匹配,得到询问语句对应的匹配意图信息。最后将目标对话意图信息、分类意图信息和匹配意图信息进行合并,得到最终意图信息,从而提高了得到的最终意图信息的准确性,最后获取与最终意图信息关联的目标回复语句,将目标回复语句返回对话请求对应的请求端,从而提高了对话匹配的准确性。

在一个实施例中,将目标对话意图信息、分类意图信息和匹配意图信息进行合并,得到最终意图信息,包括步骤:

当目标对话意图信息与分类意图信息一致时,将目标对话意图信息作为最终意图信息;当目标对话意图信息与分类意图信息未一致时,从目标对话意图信息与分类意图信息中筛选符合预设意图条件的意图信息;当存在符合预设意图条件的意图信息时,将符合预设意图条件的意图信息作为最终意图信息;当未存在符合预设意图条件的意图信息时,将匹配意图信息作为最终意图信息。

其中,预设意图条件是指预先设置好的进行意图筛选的参数条件,比如,预设意图条件可以是意图信息的槽位热度值阈值,意图信息是纯文本等等。

具体地,服务器判断目标对话意图信息与分类意图信息是否一致,当目标对话意图信息与分类意图信息一致时,服务器可以将目标对话意图信息作为最终意图信息。当得到多个分类意图信息时,服务器可以将目标对话意图信息与多个分类意图信息进行比较,当多个分类意图信息中存在与目标对话意图信息一致的意图信息时,将目标对话意图信息作为最终意图信息。当多个分类意图信息中未存在与目标对话意图信息一致的意图信息时,说明目标对话意图信息与分类意图信息未一致,此时,服务器从目标对话意图信息与分类意图信息中筛选符合预设意图条件的意图信息。服务器判断当存在符合预设意图条件的意图信息时,将符合预设意图条件的意图信息作为最终意图信息。服务器判断当未存在符合预设意图条件的意图信息时,将匹配意图信息作为最终意图信息。

在一个具体的实施例中,如图17所示,提供一种得到最终意图信息的示意图,具体来说:服务器将目标对话意图信息、分类意图信息和匹配意图信息进行合并。模式匹配结果通常会得到0到1个意图信息,模型分类结果通常会得到0到n(正整数)个意图信息。模型匹配结果通常会得到0到m(正整数)个槽位填充结果。案例1中模式匹配结果得到的意图信息为A,模型分类结果得到的意图信息包括A,B和C,则模式匹配结果和模型分类结果中有一致的意图信息,此时,服务器无需进行额外判断,直接将模式匹配结果得到的意图信息为A和模式匹配得到的槽位作为最终的匹配结果。案例2中模式匹配结果为空,即未匹配到对应的意图信息,模型分类结果也为空,此时,服务器无需进行额外判断,直接将未匹配作为最终的匹配结果。案例3中模式匹配结果得到的意图信息为A,模型分类结果为空。此时,判断意图信息A对应的目标对话模式信息是否为纯文本。当为纯文本时,将模式匹配结果得到的意图信息为A和模式匹配得到的槽位作为最终的匹配结果,当不是纯文本时,判断意图信息A的槽位热度值是否满足阈值,当未满足时,将未匹配作为最终的匹配结果。当满足时,将模式匹配结果得到的意图信息为A和模式匹配得到的槽位作为最终的匹配结果。案例4中模式匹配结果得到的意图信息为A,模型分类结果得到的意图信息包括B,C和D。此时,判断意图信息A对应的目标对话模式信息是否为纯文本。当为纯文本时,将模式匹配结果得到的意图信息为A和模式匹配得到的槽位作为最终的匹配结果,当不是纯文本时,判断意图信息A的槽位热度值是否满足阈值,当满足时,将模式匹配结果得到的意图信息为A和模式匹配得到的槽位作为最终的匹配结果。当未满足时,获取模型匹配结果,当模型匹配结果为成功时,将模型匹配结果包括的意图信息以及槽位填充信息作为最终的匹配结果。当模型匹配结果为失败时,将未匹配作为最终的匹配结果。案例5中模式匹配结果为空,模型分类结果得到的意图信息为A。此时,服务器获取模型匹配结果,然后当模型匹配结果为成功时,将模型分类得到的意图信息A和模型匹配得到的槽位填充信息作为最终的匹配结果。当模型匹配结果为失败时,将未匹配作为最终的匹配结果。案例6中模式匹配结果为空,模型分类结果得到的意图信息为A,B和C。此时,获取模型匹配结果,当模型匹配结果为失败时,将未匹配作为最终的匹配结果。当模型匹配结果为成功时,将模型匹配得到的意图信息和模型匹配得到的槽位填充信息作为最终的匹配结果。

在上述实施例中,通过当目标对话意图信息与分类意图信息一致时,将目标对话意图信息作为最终意图信息;当目标对话意图信息与分类意图信息未一致时,从目标对话意图信息与分类意图信息中筛选符合预设意图条件的意图信息;当存在符合预设意图条件的意图信息时,将符合预设意图条件的意图信息作为最终意图信息;当未存在符合预设意图条件的意图信息时,将匹配意图信息作为最终意图信息。

在一个实施例中,对话方法,包括步骤:

获取通过音乐对话页面发送的对话请求,对话请求携带音乐询问语句;基于对话请求获取音乐对话服务类型,基于音乐对话服务类型获取对应的音乐对话配置参数和各个音乐模式描述信息,音乐模式描述信息包括音乐模式压缩信息和音乐压缩偏移信息,音乐模式压缩信息是将音乐对话模式信息进行状态转换,得到音乐对话模式状态转换信息,将音乐对话模式状态转换信息中的目标信息进行压缩得到的,音乐压缩偏移信息用于表征音乐对话模式状态转换信息中非目标信息的偏移;按照音乐模式压缩信息和音乐压缩偏移信息将音乐询问语句与各个音乐模式描述信息进行匹配,得到各个候选音乐模式描述信息。按照音乐对话配置参数中的槽位填充参数将各个候选音乐模式描述信息分别对应的对话模式信息进行槽位填充,得到各个音乐对话意图信息,并按照音乐对话配置参数中的意图筛选参数将各个音乐对话意图信息进行筛选,得到目标音乐对话意图信息;获取与目标音乐对话意图信息关联的音乐回复语句,并在音乐对话页面中展示音乐回复语句。

其中,音乐对话页面是指提供音乐对话服务的页面,该音乐对话服务可以是通过发布的音乐对话机器人实现。

具体地,该对话方法应用到音乐对话服务的场景中,该音乐对话服务的场景中,服务器可以通过上述任意实施例中的对话方法来提供音乐对话服务,通过音乐对话服务可以进行音乐相关问题的询问,比如询问歌曲A的演唱者是谁。即服务器通过音乐对话页面发送的音乐询问语句,然后获取到音乐对话服务类型对应的音乐对话配置参数和各个音乐模式描述信息。再使用音乐模式压缩信息和音乐压缩偏移信息将音乐询问语句与各个音乐模式描述信息进行匹配,并进行槽位填充以及意图筛选,从而得到音乐询问语句对应的目标音乐对话意图信息,然后将目标音乐对话意图信息关联的音乐回复语句发送到音乐对话页面中进行展示。

在上述实施例中,通过取到音乐对话服务类型对应的音乐对话配置参数和各个音乐模式描述信息。再使用音乐模式压缩信息和音乐压缩偏移信息将音乐询问语句与各个音乐模式描述信息进行匹配,从而提高了音乐对话服务的匹配效率,然后将目标音乐对话意图信息关联的音乐回复语句发送到音乐对话页面中进行展示,提高了音乐对话的效率。

在一个具体的实施例中,如图18所示,提供一种对话方法的流程示意图,具体包括以下步骤:

S1802,获取对话请求,对话请求携带询问语句,基于对话请求获取对话服务类型,基于对话服务类型获取对应的对话配置参数和各个模式描述信息,模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息包括压缩状态转换信息和压缩状态转换信息对应的检测状态转换信息。

S1804,按照对话配置参数中的规范化参数将询问语句进行规范化操作,得到规范化语句,获取起始状态转换信息,并从规范化语句中依次获取待匹配字符。

S1806,在压缩偏移信息中查找起始状态转换信息对应的起始偏移信息,并基于起始偏移信息和待匹配字符在检测状态转换信息中查找对应的字符检测状态转换信息,当字符检测状态转换信息与起始状态转换信息一致时,基于起始偏移信息和待匹配字符在压缩状态转换信息中查找对应的字符状态转换信息。

S1810,当字符状态转换信息符合预设字符匹配条件时,将字符状态转换信息作为起始状态转换信息,并返回从规范化语句中依次获取待匹配字符的步骤执行,直到规范化语句中的字符遍历完成时,获取规范化语句中终止字符对应的字符状态转换信息。

S1812,当终止字符对应的字符状态转换信息符合预设语句匹配条件时,将模式压缩信息和压缩偏移信息对应的模式描述信息作为候选模式描述信息,从候选模式描述信息对应的对话模式信息中确定预设填充标识,并获取预设填充标识对应的各个待填充信息。

S1814,按照对话配置参数中的槽位填充参数将各个待填充信息进行筛选,得到预设填充标识对应的目标待填充信息,将目标待填充信息在对话模式信息中进行槽位填充,得到对话模式信息对应的对话意图信息。

S1816,按照对话配置参数中的模式优先级参数将各个对话意图信息进行排序,得到对话意图信息序列,从对话意图信息序列中选取得到目标对话意图信息。

S1817,按照对话配置参数中的模型服务参数调用模型分类服务和模型匹配服务,基于模型分类服务对询问语句进行意图分类,得到询问语句对应的分类意图信息,基于模型匹配服务对询问语句进行意图匹配,得到询问语句对应的匹配意图信息。

S1818,将目标对话意图信息、分类意图信息和匹配意图信息进行合并,得到最终意图信息,获取与最终意图信息关联的目标回复语句,将目标回复语句返回对话请求对应的请求端。

在上述实施例中,通过当字符检测状态转换信息与起始状态转换信息一致时,基于起始偏移信息和待匹配字符在压缩状态转换信息中查找对应的字符状态转换信息,能够减少搜索的范围,进而提高匹配的效率。并且按照对话配置参数控制对话匹配的过程,能够提高对话匹配的灵活性。

在一个具体的实施例中,该对话方法应用于智能对话平台中,如图19所示,为对话平台的整体结构示意图,其中,该对话平台包括对话管理、对话匹配、数据管理、对话回复、对话匹配实例池5个部分,以自然语言处理原子化服务、组件和基础服务为基础,提供适用各种用途和场景的对话服务。对话管理部分由MGR(对话管理)、SkillSet(意图承接)和Ranker(排序)构成,负责对话的管理、意图承接以及结果的排序,其中,序号1是指对话管理部分获取到对话请求时,从意图承接获取对话服务类型对应的各个意图即各个技能,序号2是指意图承接将获取到的对话服务类型对应的各个意图返回给对话管理。序号3是指对话管理将获取到的对话服务类型对应的各个意图进行对话匹配,序号4是指对话管理获取到对话匹配的结果,即得到各个匹配的回复语句,序号5是指对话管理将各个匹配的回复语句通过结果排序进行排序,序号6是指对话管理根据排序结果获取得到最终的回复语句并进行回复。对话匹配部分由DFA匹配引擎、流程控制引擎(SkillService)、算法组件池(AlgorithmModel)及系统词典(SysDict)构成,负责对话请求的匹配服务。对话匹配实例池是Nomad技能池,Nomad技能池是一个资源池,将技能实例化运行在内存中用于进行匹配,该技能是指对话服务类型,每个对话服务类型有对应的技能。对话回复部分由CloudFunc云函数组件、ThirdAPI第三方接口和FixedReply直接回复内容组成,负责对匹配命中之后的请求进行回复。数据管理部分由DMS数据管理模块和API发布接口组成,负责对话服务机器人和技能的发布。

本申请中的对话方法通过对话匹配部分来实现。如图20所示,为对话匹配的整体结构示意图,包括模式匹配部分(DFA匹配)、流程控制部分(SkillService)、算法组件池(AlgorithmModel)及系统词典(SysDict)四个部分。其中,模式匹配部分用于与询问语句匹配,使用系统词典的抽取能力,完成匹配工作并进行意图识别和槽位提取,流程控制部分调用DFA的同时负责匹配流程控制,使用灵活配置的参数和算法组件池完成匹配过程的流程控制。

进一步,如图21所示,为对话匹配的具体结构示意图,具体来说:对话机器人发布方配置好各个对话服务机器人的数据,该数据包括对话配置参数和各个对话模式信息。然后进行对话服务器机器人的发布到智能对话平台中。然后智能对话平台中的数据管理部分调用对话匹配实例建立服务来建立使用各个对话模式信息建立对话匹配实例,其中,先将技能对话模式信息转换为对应的连通图结构NFA,然后使用NFA转DFA算法将NFA图转换为等价的DFA图,然后合并可复用的状态节点将DFA图进行最小化,得到最小化DFA图。然后将最小化DFA图进行压缩,采用Doubel Array Trie(双数组字典树)的压缩方式,通过三个数组描述最小化DFA图对应的邻接矩阵,得到压缩后的DFA图。最后使用序列化方式将压缩后的DFA图进行打包,得到压缩后的DFA文件,将压缩后的DFA文件存储到数据管理的存储空间中。然后当智能对话平台在对话匹配实例池中加载对话匹配实例时,从数据管理的存储空间中下载压缩后的DFA文件,使用p反序列化方式将压缩后的DFA文件进行解析,得到压缩后的DFA。然后将压缩后的DFA进行加载待匹配过程使用。当获取到询问语句时,控制流程部分从数据管理的存储空间中获取到对应的对话配置参数数据,并进行服务编排,控制匹配流程开始匹配。即根据符号处理、纠错改写等参数,调用算法纠错、改写服务模型以及符号处理方法对询问语句进行规范化,完成纠错、改写、符号处理等操作。然后再根据前后缀匹配、是否完全匹配等DFA匹配参数以及模式相似度、模式优先级、槽位热度阈值等参数开始模式匹配过程。该模式匹配过程包括使用压缩后的DFA快速召回候选对话模式信息列表。然后调用系统词典获取候选对话模式信息对应的系统词典结果,然后根据系统词典结果进行槽位填充,即使用模式相似度、模式相似度阈值、槽位热度、槽位热度阈值、槽位数量等参数以及槽位匹配优先级、系统词典连通性等进行槽位填充控制,并调用算法相似度服务,完成槽位分配、校验和填槽过程,得到新对话模式信息列表,最后按照依据模式优先级等参数对新对话模式信息列表排序,最终选取排序第一的对话模式信息,得到模式匹配结果。同时,当获取到询问语句时,流程控制服务根据从数据管理存储控制厚葬获取的算法模型组件池参数并发调用模型分类服务(Model Classify)、算法模型匹配服务(Model Match)等,得到分类模型敌营的意图分类结果和匹配模型对应的意图匹配结果,最后将所有结果进行合并,输出最终匹配结果。

应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及对话方法的对话装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个对话装置实施例中的具体限定可以参见上文中对于对话方法的限定,在此不再赘述。

在一个实施例中,如图22所示,提供了一种对话装置2200,包括:请求获取模块2202、信息获取模块2204、匹配模块2206、筛选模块2208和回复模块2210,其中:

请求获取模块2202,用于获取对话请求,对话请求携带询问语句;

信息获取模块2204,用于基于对话请求获取对话服务类型,基于对话服务类型获取对应的对话配置参数和各个模式描述信息,模式描述信息包括模式压缩信息和压缩偏移信息,模式压缩信息是将对话模式信息进行状态转换,得到对话模式状态转换信息,将对话模式状态转换信息中的目标信息进行压缩得到的,压缩偏移信息用于表征对话模式状态转换信息中非目标信息的偏移;

匹配模块2206,用于按照模式压缩信息和压缩偏移信息将询问语句与各个模式描述信息进行匹配,得到各个候选模式描述信息;

筛选模块2208,用于按照对话配置参数中的槽位填充参数将各个候选模式描述信息分别对应的对话模式信息进行槽位填充,得到各个对话意图信息,并按照对话配置参数中的意图筛选参数将各个对话意图信息进行筛选,得到目标对话意图信息;

回复模块2210,用于获取与目标对话意图信息关联的回复语句,将回复语句返回对话请求对应的请求端。

在一个实施例中,对话装置2200,还包括:

压缩模块,用于获取对话服务类型对应的各个对话模式信息;将对话服务类型对应的各个对话模式信息分别进行状态转换,得到各个对话模式信息分别对应的对话模式状态转换信息;将各个对话模式信息分别对应的对话模式状态转换信息中的非目标信息按照对话模式状态转换信息中的目标信息进行偏移,得到各个对话模式信息分别对应的偏移后的对话模式状态转换信息;基于偏移后的对话模式状态转换信息进行压缩,得到各个对话模式信息分别对应的模式压缩信息,并基于对话模式状态转换信息中非目标信息的偏移确定各个对话模式信息分别对应的压缩偏移信息;基于模式压缩信息和压缩偏移信息得到各个对话模式信息分别对应的模式描述信息。

在一个实施例中,压缩模块还用于获取对话服务类型对应的当前对话模式信息,将当前对话模式信息进行非确定状态连通图转换,得到当前非确定状态连通图;将当前非确定状态连通图进行确定状态连通图转换,得到当前确定状态连通图;将当前确定状态连通图中的复用状态节点进行合并,得到目标确定状态连通图,基于目标确定状态连通图得到当前对话模式信息对应的对话模式状态转换信息。

在一个实施例中,对话装置2200,还包括:

实例加载模块,用于将各个对话模式信息分别对应的模式描述信息进行序列化操作,得到序列化文件,将序列化文件存储到数据管理存储空间中;获取对话匹配实例建立请求,基于对话匹配实例建立请求从数据管理存储空间中获取序列化文件,将序列化文件进行反序列化操作,得到各个对话模式信息分别对应的模式描述信息;将各个对话模式信息分别对应的模式描述信息作为对话匹配实例进行加载;

信息获取模块2204还用于从对话匹配实例中获取对话服务类型获取对应的各个模式描述信息。

在一个实施例中,对话装置2200,还包括:

服务发布模块,用于获取对话服务创建请求,对话服务创建请求携带对话服务类型;基于对话服务类型获取对应的对话服务创建页面,将对话服务创建页面返回对话服务创建请求对应的请求端;获取对话服务创建请求对应的请求端通过对话服务创建页面触发的对话服务发布请求;解析对话服务发布请求,得到对话服务类型对应的各个对话模式信息和对话服务类型对应的对话配置参数,并将对话服务类型对应的各个对话模式信息和对话服务类型对应的对话配置参数存储到数据管理空间中。

在一个实施例中,匹配模块2206还用于按照对话配置参数中的规范化参数将询问语句进行规范化操作,得到规范化语句;按照模式压缩信息和压缩偏移信息将规范化语句与各个模式描述信息进行匹配,得到各个候选模式描述信息。

在一个实施例中,匹配模块2206还用于获取起始状态转换信息,并从规范化语句中依次获取待匹配字符; 基于起始状态转换信息在模式压缩信息和压缩偏移信息中查找待匹配字符对应的字符状态转换信息;当字符状态转换信息符合预设字符匹配条件时,将字符状态转换信息作为起始状态转换信息,并返回从规范化语句中依次获取待匹配字符的步骤执行,直到规范化语句中的字符遍历完成时,获取规范化语句中终止字符对应的字符状态转换信息;当终止字符对应的字符状态转换信息符合预设语句匹配条件时,将模式压缩信息和压缩偏移信息对应的模式描述信息作为候选模式描述信息。

在一个实施例中,模式压缩信息包括压缩状态转换信息和压缩状态转换信息对应的检测状态转换信息;

匹配模块2206还用于在压缩偏移信息中查找起始状态转换信息对应的起始偏移信息,并基于起始偏移信息和待匹配字符在检测状态转换信息中查找对应的字符检测状态转换信息;当字符检测状态转换信息与起始状态转换信息一致时,基于起始偏移信息和待匹配字符在压缩状态转换信息中查找对应的字符状态转换信息。

在一个实施例中,筛选模块2208还用于从对话模式信息中确定预设填充标识,并获取预设填充标识对应的各个待填充信息;按照对话配置参数中的槽位填充参数将各个待填充信息进行筛选,得到预设填充标识对应的目标待填充信息;将目标待填充信息在对话模式信息中进行槽位填充,得到对话模式信息对应的对话意图信息。

在一个实施例中,筛选模块2208还用于按照对话配置参数中的模式优先级参数将各个对话意图信息进行排序,得到对话意图信息序列,从对话意图信息序列中选取得到目标对话意图信息。

在一个实施例中,回复模块2210还用于按照对话配置参数中的模型服务参数调用模型分类服务和模型匹配服务;基于模型分类服务对询问语句进行意图分类,得到询问语句对应的分类意图信息;基于模型匹配服务对询问语句进行意图匹配,得到询问语句对应的匹配意图信息;将目标对话意图信息、分类意图信息和匹配意图信息进行合并,得到最终意图信息;获取与最终意图信息关联的目标回复语句,将目标回复语句返回对话请求对应的请求端。

在一个实施例中,回复模块2210还用于当目标对话意图信息与分类意图信息一致时,将目标对话意图信息作为最终意图信息;当目标对话意图信息与分类意图信息未一致时,从目标对话意图信息与分类意图信息中筛选符合预设意图条件的意图信息;当存在符合预设意图条件的意图信息时,将符合预设意图条件的意图信息作为最终意图信息;当未存在符合预设意图条件的意图信息时,将匹配意图信息作为最终意图信息。

在一个实施例中,对话装置2200,还包括:

音乐对话模块,用于获取通过音乐对话页面发送的对话请求,所述对话请求携带音乐询问语句;基于所述对话请求获取音乐对话服务类型,基于所述音乐对话服务类型获取对应的音乐对话配置参数和各个音乐模式描述信息,所述音乐模式描述信息包括音乐模式压缩信息和音乐压缩偏移信息,所述音乐模式压缩信息是将音乐对话模式信息进行状态转换,得到音乐对话模式状态转换信息,将所述音乐对话模式状态转换信息中的目标信息进行压缩得到的,所述音乐压缩偏移信息用于表征所述音乐对话模式状态转换信息中非目标信息的偏移;按照所述音乐模式压缩信息和所述音乐压缩偏移信息将所述音乐询问语句与所述各个音乐模式描述信息进行匹配,得到各个候选音乐模式描述信息;按照所述音乐对话配置参数中的槽位填充参数将所述各个候选音乐模式描述信息分别对应的对话模式信息进行槽位填充,得到各个音乐对话意图信息,并按照所述音乐对话配置参数中的意图筛选参数将所述各个音乐对话意图信息进行筛选,得到目标音乐对话意图信息;获取与所述目标音乐对话意图信息关联的音乐回复语句,并在所述音乐对话页面中展示所述音乐回复语句。

上述对话装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图23所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储对话配置参数和各个模式描述信息等数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种对话方法。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图24所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种对话方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图23和图24中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

相关技术
  • 对话分析评价的方法、装置、计算机设备和存储介质
  • 对话状态跟踪方法、装置、计算机设备和存储介质
  • 对话装置、对话方法、服务器装置及计算机可读存储介质
  • 一种浴室加热装置和用于控制浴室加热装置的方法、设备、电子设备及计算机可读存储介质
  • 一种元数据存储方法、装置、设备及计算机可读存储介质
  • 计算机实现的对话管理的方法、用于对话管理的设备以及计算机可读存储介质
  • 医疗对话系统、对话方法、装置、计算机设备及存储介质
技术分类

06120116505106