CN110096516A - 自定义的数据库交互的对话生成方法及系统 - Google Patents
自定义的数据库交互的对话生成方法及系统 Download PDFInfo
- Publication number
- CN110096516A CN110096516A CN201910225496.5A CN201910225496A CN110096516A CN 110096516 A CN110096516 A CN 110096516A CN 201910225496 A CN201910225496 A CN 201910225496A CN 110096516 A CN110096516 A CN 110096516A
- Authority
- CN
- China
- Prior art keywords
- user
- movement
- dialog
- dialogue
- database
- 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
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
- G06F16/24522—Translation of natural language queries to structured queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24575—Query processing with adaptation to user needs using context
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种自定义的数据库交互的对话生成方法及系统,方法包括:获取上一对话轮次的动作,若动作为接收操作动作,接收用户输入文本,通过自然语言理解模块提取用户输入文本的意图和实体来更新对话状态生成当前对话信息;将更新的对话状态转换为二进制的向量,并同步更新到历史对话信息中,根据当前对话信息和历史对话信息生成执行动作;若执行动作不为接收操作动作,判断执行动作是否需要对数据库进行检索;如果需要,将用户期望作为检索条件对数据库进行检索,将检索结果融合预设模板生成对用户的回复动作;如果不需要,则直接从预定义的模板中任选一个生成对用户的回复动作。该方法用户对数据库查询结果进行自主选择,提升了用户体验。
Description
技术领域
本发明涉及人工智能技术领域,特别涉及一种自定义的数据库交互的对话生成方法及系统。
背景技术
近年来,随着人工智能行业的蓬勃发展,人机对话作为人工智能领域的一个子方向,越来越受到关注,通俗地说,人机对话技术就是让人类自然语言与计算机进行实时地交互。面向任务的人机对话技术可以应用于订酒店、订餐、订飞机票、订火车票等业务场景中,具有很高的应用价值和商业价值。传统的任务型多轮对话系统主要包含以下四个模块:自然语言理解、对话状态跟踪、策略制定、自然语言生成四个模块。其中自然语言生成模块可以利用人工智能与计算机语言学生成自然语言,根据学习到的策略来生成对话回复,一般的对话回复包括确认需求、引导用户、询问、对话结束等。实际上,对话生成模块是系统中直接与用户进行交互的模块,对用户体验具有非常大的影响,任务型多轮对话系统中的自然语言生成模块也越来越成为一个热门的研究方向。
在相关技术中提出了一种自然语言的生成方法、自然语言生成装置及电子设备,但该方法主要是通过对定义的模版进行最优选择实现的,但在这种方式中用户只能对现有的模版进行选择,根据用户输入语义和句式模版之间的匹配度选取最合适的模版,再反馈给用户。但这种方式刻板不灵活,用户只能看到固定的模版样式,不能很好的与实际的对话场景结合起来,因此带给用户的体验也不够友好。
在相关技术中还提出了一种口语系统中的自然语言生成方法,但该方法只是对提取的实体进行了抽象语义化,将这个信息用在了自然语言生成的过程中,并未与数据库进行交互,实际上,在许多业务场景中,比如在预订机票的过程中,机票的价格、出发时间、到达时间都对用户是否预订机票产生了重要的影响,而这些信息都是存储在数据库中的,用户在充分了解这些信息的前提下才能确定是否需要预定航班。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种自定义的数据库交互的对话生成方法,该方法用户对数据库查询结果进行自主选择,充分发挥了用户的主观能动性,实现了用户与系统的友好交互,提升了用户体验。
本发明的另一个目的在于提出一种自定义的数据库交互的对话生成系统。
为达到上述目的,本发明一方面实施例提出了一种自定义的数据库交互的对话生成方法,包括:
S1,获取上一对话轮次的动作,若所述上一对话轮次的动作为接收操作动作,则接收用户输入文本,通过自然语言理解模块提取所述用户输入文本的意图和实体,利用所述意图和实体来更新对话状态生成当前对话信息;
S2,将更新的所述对话状态转换为二进制的向量,并同步更新到历史对话信息中,根据所述当前对话信息和所述历史对话信息生成执行动作;
S3,若所述执行动作不为所述接收操作动作,判断所述执行动作是否需要对数据库进行检索;
S4,如果需要检索,则将通过更新的所述对话状态得到的用户期望作为检索条件对数据库进行检索,将检索结果融合预设模板生成对用户的回复动作;
S5,如果不需要检索,则直接从预定义的模板中任选一个生成对用户的回复动作。
本发明实施例的自定义的数据库交互的对话生成方法,通过建立了对话生成系统与数据库之间的交互,将用户的期望作为数据库的查询条件,并将数据库的查询结果返回给用户,实现了系统与数据库的双向反馈,充分发挥了数据库的作用,用户对数据库查询结果进行自主选择,充分发挥了用户的主观能动性,实现了用户与系统的友好交互,提升了用户体验。
另外,根据本发明上述实施例的自定义的数据库交互的对话生成方法还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,还包括:
选择满足用户条件的回复动作,将回复动作作为所述用户输入文本,进行多轮对话交互。
进一步地,在本发明的一个实施例中,所述S1还包括:
获取上一对话轮次的动作,若所述上一对话轮次的动作为结束动作,则从所述结束动作对应模板中选任一模板进行回复,并自动关闭整个对话系统。
进一步地,在本发明的一个实施例中,所述S1还包括:
获取上一对话轮次的动作,若所述上一对话轮次的动作不为所述接收操作动作和所述结束动作,则直接更新所述对话状态。
进一步地,在本发明的一个实施例中,所述S3还包括:
若所述执行动作为所述接收操作动作,则重新接收所述用户输入文本。
为达到上述目的,本发明另一方面实施例提出了一种自定义的数据库交互的对话生成系统,包括:
对话状态更新模块,用于获取上一对话轮次的动作,若所述上一对话轮次的动作为接收操作动作,则接收用户输入文本,通过自然语言理解模块提取所述用户输入文本的意图和实体,利用所述意图和实体来更新对话状态生成当前对话信息;
动作执行模块,用于将更新的所述对话状态转换为二进制的向量,并同步更新到历史对话信息中,根据所述当前对话信息和所述历史对话信息生成执行动作;
判断模块,用于若所述执行动作不为所述接收操作动作,判断所述执行动作是否需要对数据库进行检索;
第一对话生成模块,用于如果需要检索,则将通过更新的所述对话状态得到的用户期望作为检索条件对数据库进行检索,将检索结果融合预设模板生成对用户的回复动作;
第二对话生成模块,用于如果不需要检索,则直接从预定义的模板中任选一个生成对用户的回复动作。
本发明实施例的自定义的数据库交互的对话生成系统,通过建立了对话生成系统与数据库之间的交互,将用户的期望作为数据库的查询条件,并将数据库的查询结果返回给用户,实现了系统与数据库的双向反馈,充分发挥了数据库的作用,用户对数据库查询结果进行自主选择,充分发挥了用户的主观能动性,实现了用户与系统的友好交互,提升了用户体验。
另外,根据本发明上述实施例的自定义的数据库交互的对话生成系统还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,还包括:对话交互模块,
所述对话交互模块,用于选择满足用户条件的回复动作,将回复动作作为所述用户输入文本,进行多轮对话交互。
进一步地,在本发明的一个实施例中,所述对话状态更新模块还包括:结束单元,
所述结束单元,用于获取上一对话轮次的动作,若所述上一对话轮次的动作为结束动作,则从所述结束动作对应模板中选任一模板进行回复,并自动关闭整个对话系统。
进一步地,在本发明的一个实施例中,所述对话状态更新模块还包括:还包括:更新单元,
所述更新单元,用于获取上一对话轮次的动作,若所述上一对话轮次的动作不为所述接收操作动作和所述结束动作,则直接更新所述对话状态。
进一步地,在本发明的一个实施例中,所述判断模块,还包括:重输入单元,
所述重输入单元,用于若所述执行动作为所述接收操作动作,则重新接收所述用户输入文本。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明一个实施例的自定义的数据库交互的对话生成方法的流程图;
图2为根据本发明一个具体实施例的自定义的数据库交互的对话生成方法流程图;
图3为根据本发明一个实施例的yaml文件定义系统的执行动作和回复模版示意图;
图4为根据本发明一个实施例的对话生成系统与数据库的交互机制图;
图5为根据本发明一个实施例的对话生成系统对话示例图;
图6为根据本发明一个实施例的系统定义的回复模版(template)示例图;
图7为根据本发明一个实施例的任务型多轮对话系统流程图;
图8为根据本发明一个实施例的自定义的数据库交互的对话生成系统结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
自然语言生成主流的方法是通过基于手工制定的模版来实现的,并且没有建立数据库交互机制,这使得许多信息的意义和价值不能很好的发挥出来,比如说预定电影票场景中,如果没有完善的数据库查询机制,电影票的价格、时间、地点等信息就不能准确及时的反馈给用户并作为事都预订电影票的依据。这无异大大降低了自然语言生成模块甚至整个对话系统的可使用性,带来用户非常不友好的体验。除此之外,仅仅对固定模版进行最优化选择直接回复给用户的方式已经远远不能满足用户的需求,也不符合实际的业务场景需求,甚至会造成一部分客户的流失。
基于当前对话系统中的自然语言理解的发展现状,如何建立对话生成系统与数据库之间的交互机制,并把数据库的查询结果与模版有机结合,让用户根据检索到的信息进行自主选择,是对话生成系统发展过程中亟待解决的问题,也是未来的发展趋势。
因此,发明实施例提出了一种与数据库交互的、用户自主选择的自然语言生成系统,通过建立系统与数据库之间的有效交互,将检索结果提供给用户,由传统的系统推荐方式转换为用户自主选择的方式,这样既能提高系统的效率,也能带给用户更好的使用体验。
下面参照附图描述根据本发明实施例提出的自定义的数据库交互的对话生成方法及系统。
首先将参照附图描述根据本发明实施例提出的自定义的数据库交互的对话生成方法。
图1为根据本发明一个实施例的自定义的数据库交互的对话生成方法的流程图。
如图1所示,该自定义的数据库交互的对话生成方法包括以下步骤:
在步骤S1中,获取上一对话轮次的动作,若上一对话轮次的动作为接收操作动作,则接收用户输入文本,通过自然语言理解模块提取用户输入文本的意图和实体,利用意图和实体来更新对话状态生成当前对话信息。
进一步地,在本发明的一个实施例中,步骤S1还包括:获取上一对话轮次的动作,若上一对话轮次的动作为结束动作,则从结束动作对应模板中选任一模板进行回复,并自动关闭整个对话系统。
进一步地,在本发明的一个实施例中,步骤S1还包括:获取上一对话轮次的动作,若上一对话轮次的动作不为接收操作动作和结束动作,则直接更新对话状态。
如图2所示,对话生成系统整体上由三个流程组成,每个流程又可以分为一些子部分,下面按照执行的顺序讲解一种自定义的灵活的可进行数据库交互的对话生成方法。
可以理解的是,对对话状态进行更新主要是根据上一轮次的动作来决定同步更新系统的状态,具体来说,首先对上一轮的动作进行分类讨论,首先判断是否系统上一轮执行的动作是否为action_goodbye,即是否为结束动作,如果是,系统可以从该action对应的回复模版,在这里设置的是{再见;拜拜;good-bye},从这些模版中随机进行选择并反馈给用户,之后就可以自动关闭整个对话系统。也就是说,如果上一轮动作为结束动作,则从结束动作对应的模板中选择任一模板对用户进行回复。
若上一轮动作不是结束动作,则再次对系统上一轮的动作进行判断,判断是否是action_listen这个动作,即是否为接收操作动作,如果是action_listen这个动作,则需要让用户输入文本,并对用户输入的文本进行解析,通过自然语言理解(Natural LanguageUnderstanding,NLU)模块进行意图和槽值(实体)的提取,之后就可以利用意图和实体进行对话状态的更新改变。
而如果系统上一轮的动作既不是goodbye也不是actionListen的话,则可以直接进行对话状态的更新改变,就可以实现对话状态的更新。
在步骤S2中,将更新的对话状态转换为二进制的向量,并同步更新到历史对话信息中,根据当前对话信息和历史对话信息生成执行动作。
这一部分表示根据更新的对话状态来进行制定相应的对话策略,并根据对话策略来确定相应的动作。
具体来说,首先将更新的对话状态转换为二进制的向量表示,之后将该二进制表示同步更新到历史对话信息中,因为动作的选择不仅取决于当前的对话状态,也取决于之前的对话状态,最终根据当前对话信息和历史对话信息来制定对话策略,并根据对话策略来选取下一轮最合适的系统执行动作。
在步骤S3中,若执行动作不为接收操作动作,判断执行动作是否需要对数据库进行检索。
进一步地,在本发明的一个实施例中,S3还包括:
若执行动作为接收操作动作,则重新接收用户输入文本。
在步骤S4中,如果需要检索,则将通过更新的对话状态得到的用户期望作为检索条件对数据库进行检索,将检索结果融合预设模板生成对用户的回复动作。
在步骤S5中,如果不需要检索,则直接从预定义的模板中任选一个生成对用户的回复动作。
进一步地,在本发明的一个实施例中,还包括:选择满足用户条件的回复动作,将回复动作作为用户输入文本,进行多轮对话交互。
这一部分主要内容为根据步骤S2中选取的最合适的系统执行动作来确定对话生成系统最终的回复。
首先对系统的执行动作进行判断,首先对当轮的系统执行动作进行判断,如果为actionListen,即为接收操作动作,则需要重新等待用户的输入。
如果不为actionListen,即不为接收操作动作,则需要判断当前执行动作的回复是否需要对数据库进行检索,如果不需要进行检索,则可以直接从定义好的模版中随机选取一个进行回复;如果需要检索,则把用户的期望(如酒店预订场景中的房型、价格等信息)作为数据库的检索条件进行检索,把检索结果作为对用户的回复。其中,用户的期望是根据更新对话状态得到的。
如图3所示,在多轮对话系统中会有yaml文件用来定义系统的执行动作和回复模版。
之后用户就可以进行满足条件的所有结果的选择,并把自己的选择作为输入文本。
在生成了对用户的最终回复之后,对当前的动作进行解析,重新返回步骤S1,重新执行以上步骤,得到下一轮的系统回复,如此循环就可以生成系统的多轮对话交互。
上述建立了对话生成系统与数据库之间的交互机制,可以将用户提出的要求(如电影的场次/演员)作为数据库的约束条件进行数据库的查询,并将符合查询要求的结果提供给用户。并且创建了固定模版与数据库查询结果之间的有机结合机制,将数据库的查询结果融入固定模版中,并最终返回给用户让用户进行自主选择,发挥用户自身的能动性。
进一步地,建立有效的数据库查询机制,对话生成系统就可以将数据库中符合用户期望的数据全部检索出来,让用户自主选择,这样就可以摒弃传统的系统模版推荐方式,如“为您推荐***航班”,对对话生成系统的性能和用户体验的提升提高具有非常重要的意义。
下面通过一个具体实施例说明本发明的自定义的数据库交互的对话生成方法。
如图4所示,展示了对话生成系统与数据库的交互机制。可以看出对话生成系统与数据库的交互是双向的,上述已经介绍了对话生成系统整体的流程,对话生成系统整体由对话状态更新、动作执行、对话生成三部分构成,其中在对话状态更新之后,通过更新的对话状态提取出用户的检索条件,以酒店预订场景为例,可以提取出用户的期望,比如酒店的价格、房型、地理位置,再将这些检索条件输入到数据库中进行查询,数据库会把查询到的符合条件的酒店返回给用户。
具体地,对话状态更新:在多轮对话系统中,对话状态是采用槽填充的方式实现的,比如对话状态是用一个三十维的向量表示的,其中每一维的向量都对应一个槽值,每一维向量的值都可以为0或1,其中0表示该槽值未被填充,1表示该槽值已被填充,通过对话状态就可以把已经填充的槽值(比如entity_type=标准间)提取出来,通过这种方式也就可以把用户的期望提取出来。
动作执行:在对话状态更新之后,系统就会根据算法得出当前应该执行哪个动作,在这里识别出的是询问价格的动作即ask_price,之后会跳转到定义的ask_price函数,在这个函数里写了关于进行数据库检索的sq语句,会把用户的期望当作数据库的检索条件即(entity_type=标准间),进行到数据库中进行查询,在数据库中可以查询出标准间分别有100元、200元、300元、400元四个价位。
对话生成:最终会将数据库的查询结果与模版相融合以语句反馈给用户,如图5所示的“您可以选择以下价格:100元,200元,300元,400元,请选择”用户就可以选择自己心仪的价位。用户就可以根据自己的喜好进行自主选择,在这里用户最终选择了200元,最终把这些关键的信息如预订时间、房间价格再次反馈给用户让用户进行再次确认,保证预订的严密性,最后在用户最终确认之后,即可预定成功,这时候数据库中酒店房间的预定数会相应的增加一,而剩余的房间数量会相应的减少一。
需要说明的是,实现所有的需要进行数据库交互的动作都只对应一个总体的函数,这个总体的函数可以灵活的拼接数据查询的sql语句。这样可以摒弃每一个动作对应一个函数的形式,提高代码的简洁性,该自然语言生成模型封装性好,易扩展替换,可以与对话系统的其它模块结合为一个完整的系统,并且可以适用于不同的对话场景。
如图6所示,系统定义的回复模版(template)示例通过与数据库的交互,就可以预定成功符合用户心理预期的酒店,并在这个过程中充分发挥了用户的主观能动性,简洁高效的满足了用户的需求,并提升了用户的提升体验。
如图7所示,展示了面向任务的多轮对话系统的流程,因为在实际的业务场景中人机交互主要是通过语音交互方式进行的,把语音交互模块也加了进来,任务型多轮对话系统可以主要分为语音识别(Automatic Speech Recognition,ASR)、自然语言理解(NaturalLanguage Understanding,NLU)、对话管理(Dialog Management,DM)、自然语言生成(Natural Language Generation,NLG)、文本转语音(Text To Speech,TTS)五个模块,其中对话管理又可以分为对话状态跟踪(Dialogue State Tracking,DST)和对话策略学习(Policy Learning)两个部分。我们可以看到对话生成模块(NLG)是直接与用户进行交互的模块,对话生成模块的性能直接影响了用户的使用体验和整个系统的效率,对整个对话系统的性能具有非常重要的影响。
因此,本发明实施例提出的一种自定义的灵活的可进行数据库交互的对话生成模型对多轮对话系统的构建具有非常重要的意义,该模型可以与上游模块结合起来,易于协调,并且可以被扩展和替换,将来可以替换为性能更优的其它模型,可以应用于不同的多轮对话业务场景,具有一定的领域扩展性,比如车票预订、航班预订、医疗挂号等。
根据本发明实施例提出的自定义的数据库交互的对话生成方法,通过建立了对话生成系统与数据库之间的交互,将用户的期望作为数据库的查询条件,并将数据库的查询结果返回给用户,实现了系统与数据库的双向反馈,充分发挥了数据库的作用,用户对数据库查询结果进行自主选择,充分发挥了用户的主观能动性,实现了用户与系统的友好交互,提升了用户体验。
其次参照附图描述根据本发明实施例提出的自定义的数据库交互的对话生成系统。
图8为根据本发明一个实施例的自定义的数据库交互的对话生成系统结构示意图。
如图8所示,该对话生成系统包括:对话状态更新模块100、动作执行模块200、判断模块300、第一对话生成模块400和第二对话生成模块500。
其中,对话状态更新模块100用于获取上一对话轮次的动作,若上一对话轮次的动作为接收操作动作,则接收用户输入文本,通过自然语言理解模块提取用户输入文本的意图和实体,利用意图和实体来更新对话状态生成当前对话信息。
动作执行模块200用于将更新的对话状态转换为二进制的向量,并同步更新到历史对话信息中,根据当前对话信息和历史对话信息生成执行动作。
判断模块300用于若执行动作不为接收操作动作,判断执行动作是否需要对数据库进行检索。
第一对话生成模块400用于如果需要检索,则将通过更新的对话状态得到的用户期望作为检索条件对数据库进行检索,将检索结果融合预设模板生成对用户的回复动作。
第二对话生成模块500用于如果不需要检索,则直接从预定义的模板中任选一个生成对用户的回复动作。
该对话生成系统通过用户对数据库查询结果进行自主选择,充分发挥了用户的主观能动性,实现了用户与系统的友好交互,提升了用户体验。
进一步地,在本发明的一个实施例中,还包括:对话交互模块,
对话交互模块,用于选择满足用户条件的回复动作,将回复动作作为用户输入文本,进行多轮对话交互。
进一步地,在本发明的一个实施例中,对话状态更新模块还包括:结束单元,
结束单元,用于获取上一对话轮次的动作,若上一对话轮次的动作为结束动作,则从结束动作对应模板中选任一模板进行回复,并自动关闭整个对话系统。
进一步地,在本发明的一个实施例中,对话状态更新模块还包括:还包括:更新单元,
更新单元,用于获取上一对话轮次的动作,若上一对话轮次的动作不为接收操作动作和结束动作,则直接更新对话状态。
进一步地,在本发明的一个实施例中,判断模块,还包括:重输入单元,
重输入单元,用于若执行动作为接收操作动作,则重新接收用户输入文本。
需要说明的是,前述对自定义的数据库交互的对话生成方法实施例的解释说明也适用于该实施例的装置,此处不再赘述。
根据本发明实施例提出的自定义的数据库交互的对话生成系统,通过建立了对话生成系统与数据库之间的交互,将用户的期望作为数据库的查询条件,并将数据库的查询结果返回给用户,实现了系统与数据库的双向反馈,充分发挥了数据库的作用,用户对数据库查询结果进行自主选择,充分发挥了用户的主观能动性,实现了用户与系统的友好交互,提升了用户体验。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种自定义的数据库交互的对话生成方法,其特征在于,包括以下步骤:
S1,获取上一对话轮次的动作,若所述上一对话轮次的动作为接收操作动作,则接收用户输入文本,通过自然语言理解模块提取所述用户输入文本的意图和实体,利用所述意图和实体来更新对话状态生成当前对话信息;
S2,将更新的所述对话状态转换为二进制的向量,并同步更新到历史对话信息中,根据所述当前对话信息和所述历史对话信息生成执行动作;
S3,若所述执行动作不为所述接收操作动作,判断所述执行动作是否需要对数据库进行检索;
S4,如果需要检索,则将通过更新的所述对话状态得到的用户期望作为检索条件对数据库进行检索,将检索结果融合预设模板生成对用户的回复动作;
S5,如果不需要检索,则直接从预定义的模板中任选一个生成对用户的回复动作。
2.根据权利要求1所述的方法,其特征在于,还包括:
选择满足用户条件的回复动作,将回复动作作为所述用户输入文本,进行多轮对话交互。
3.根据权利要求1所述的方法,其特征在于,所述S1还包括:
获取上一对话轮次的动作,若所述上一对话轮次的动作为结束动作,则从所述结束动作对应模板中选任一模板进行回复,并自动关闭整个对话系统。
4.根据权利要求3所述的方法,其特征在于,所述S1还包括:
获取上一对话轮次的动作,若所述上一对话轮次的动作不为所述接收操作动作和所述结束动作,则直接更新所述对话状态。
5.根据权利要求1所述的方法,其特征在于,所述S3还包括:
若所述执行动作为所述接收操作动作,则重新接收所述用户输入文本。
6.一种自定义的数据库交互的对话生成系统,其特征在于,包括:
对话状态更新模块,用于获取上一对话轮次的动作,若所述上一对话轮次的动作为接收操作动作,则接收用户输入文本,通过自然语言理解模块提取所述用户输入文本的意图和实体,利用所述意图和实体来更新对话状态生成当前对话信息;
动作执行模块,用于将更新的所述对话状态转换为二进制的向量,并同步更新到历史对话信息中,根据所述当前对话信息和所述历史对话信息生成执行动作;
判断模块,用于若所述执行动作不为所述接收操作动作,判断所述执行动作是否需要对数据库进行检索;
第一对话生成模块,用于如果需要检索,则将通过更新的所述对话状态得到的用户期望作为检索条件对数据库进行检索,将检索结果融合预设模板生成对用户的回复动作;
第二对话生成模块,用于如果不需要检索,则直接从预定义的模板中任选一个生成对用户的回复动作。
7.根据权利要求6所述的系统,其特征在于,还包括:对话交互模块,
所述对话交互模块,用于选择满足用户条件的回复动作,将回复动作作为所述用户输入文本,进行多轮对话交互。
8.根据权利要求6所述的系统,其特征在于,所述对话状态更新模块还包括:结束单元,
所述结束单元,用于获取上一对话轮次的动作,若所述上一对话轮次的动作为结束动作,则从所述结束动作对应模板中选任一模板进行回复,并自动关闭整个对话系统。
9.根据权利要求8所述的系统,其特征在于,所述对话状态更新模块还包括:还包括:更新单元,
所述更新单元,用于获取上一对话轮次的动作,若所述上一对话轮次的动作不为所述接收操作动作和所述结束动作,则直接更新所述对话状态。
10.根据权利要求6所述的系统,其特征在于,所述判断模块,还包括:重输入单元,
所述重输入单元,用于若所述执行动作为所述接收操作动作,则重新接收所述用户输入文本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910225496.5A CN110096516B (zh) | 2019-03-25 | 2019-03-25 | 自定义的数据库交互的对话生成方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910225496.5A CN110096516B (zh) | 2019-03-25 | 2019-03-25 | 自定义的数据库交互的对话生成方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110096516A true CN110096516A (zh) | 2019-08-06 |
CN110096516B CN110096516B (zh) | 2022-01-28 |
Family
ID=67442994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910225496.5A Active CN110096516B (zh) | 2019-03-25 | 2019-03-25 | 自定义的数据库交互的对话生成方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110096516B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110704588A (zh) * | 2019-09-04 | 2020-01-17 | 平安科技(深圳)有限公司 | 基于长短期记忆网络的多轮对话语义分析方法和系统 |
CN110737765A (zh) * | 2019-10-25 | 2020-01-31 | 上海喜马拉雅科技有限公司 | 多轮对话的对话数据处理方法及相关装置 |
CN114490994A (zh) * | 2022-03-28 | 2022-05-13 | 北京沃丰时代数据科技有限公司 | 对话管理方法及装置 |
CN116521841A (zh) * | 2023-04-18 | 2023-08-01 | 百度在线网络技术(北京)有限公司 | 用于生成回复信息的方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105306281A (zh) * | 2015-12-03 | 2016-02-03 | 腾讯科技(深圳)有限公司 | 信息处理方法及客户端 |
CN107053208A (zh) * | 2017-05-24 | 2017-08-18 | 北京无忧创新科技有限公司 | 一种主动交互式对话机器人系统及该系统主动对话的方法 |
CN108763568A (zh) * | 2018-06-05 | 2018-11-06 | 北京玄科技有限公司 | 智能机器人交互流程的管理方法、多轮对话方法及装置 |
CN109493166A (zh) * | 2018-10-23 | 2019-03-19 | 深圳智能思创科技有限公司 | 一种针对电子商务导购场景任务型对话系统的构建方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109460450B (zh) * | 2018-09-27 | 2021-07-09 | 清华大学 | 对话状态跟踪方法、装置、计算机设备和存储介质 |
-
2019
- 2019-03-25 CN CN201910225496.5A patent/CN110096516B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105306281A (zh) * | 2015-12-03 | 2016-02-03 | 腾讯科技(深圳)有限公司 | 信息处理方法及客户端 |
CN107053208A (zh) * | 2017-05-24 | 2017-08-18 | 北京无忧创新科技有限公司 | 一种主动交互式对话机器人系统及该系统主动对话的方法 |
CN108763568A (zh) * | 2018-06-05 | 2018-11-06 | 北京玄科技有限公司 | 智能机器人交互流程的管理方法、多轮对话方法及装置 |
CN109493166A (zh) * | 2018-10-23 | 2019-03-19 | 深圳智能思创科技有限公司 | 一种针对电子商务导购场景任务型对话系统的构建方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110704588A (zh) * | 2019-09-04 | 2020-01-17 | 平安科技(深圳)有限公司 | 基于长短期记忆网络的多轮对话语义分析方法和系统 |
CN110704588B (zh) * | 2019-09-04 | 2023-05-30 | 平安科技(深圳)有限公司 | 基于长短期记忆网络的多轮对话语义分析方法和系统 |
CN110737765A (zh) * | 2019-10-25 | 2020-01-31 | 上海喜马拉雅科技有限公司 | 多轮对话的对话数据处理方法及相关装置 |
CN114490994A (zh) * | 2022-03-28 | 2022-05-13 | 北京沃丰时代数据科技有限公司 | 对话管理方法及装置 |
CN116521841A (zh) * | 2023-04-18 | 2023-08-01 | 百度在线网络技术(北京)有限公司 | 用于生成回复信息的方法、装置、设备及介质 |
CN116521841B (zh) * | 2023-04-18 | 2024-05-14 | 百度在线网络技术(北京)有限公司 | 用于生成回复信息的方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110096516B (zh) | 2022-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096516A (zh) | 自定义的数据库交互的对话生成方法及系统 | |
CN104538031B (zh) | 智能语音服务开发云平台及方法 | |
US10319381B2 (en) | Iteratively updating parameters for dialog states | |
WO2021077974A1 (zh) | 一种个性化对话内容生成方法 | |
US11705118B2 (en) | Universal and user-specific command processing | |
CN111090728B (zh) | 一种对话状态跟踪方法、装置及计算设备 | |
US20210193116A1 (en) | Data driven dialog management | |
CN108962217A (zh) | 语音合成方法及相关设备 | |
CN107357838A (zh) | 基于多任务学习的对话策略在线实现方法 | |
CN110059170B (zh) | 基于用户交互的多轮对话在线训练方法及系统 | |
CN109792402A (zh) | 自动响应用户的请求 | |
CA2929018A1 (en) | Natural expression processing method, processing and response method, device and system | |
CN108899013A (zh) | 语音搜索方法、装置和语音识别系统 | |
CN105808200A (zh) | 智能自动化助理 | |
CN110019688A (zh) | 对机器人进行训练的方法 | |
CN113505591A (zh) | 一种槽位识别方法及电子设备 | |
CN114830139A (zh) | 使用模型提供的候选动作训练模型 | |
CN109992338A (zh) | 用于跨多个平台显露虚拟助理服务的方法和系统 | |
CN110059166A (zh) | 自然智能的自然表达处理方法、回应方法、设备及系统 | |
CN110046232A (zh) | 自然智能的自然表达处理方法、回应方法、设备及系统 | |
CN111399629B (zh) | 一种终端设备的操作引导方法、终端设备及存储介质 | |
CN110059168A (zh) | 对基于自然智能的人机交互系统进行训练的方法 | |
CN116049360A (zh) | 基于客户画像的智能语音对话场景话术干预方法及系统 | |
CN111128175B (zh) | 口语对话管理方法及系统 | |
CN116644168A (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 |