一种用于虚拟客服的多场景多轮对话方法与系统与流程

文档序号:35706861发布日期:2023-10-12 07:35阅读:46来源:国知局
一种用于虚拟客服的多场景多轮对话方法与系统与流程

本发明涉及自然语言处理,具体涉及一种用于虚拟客服的多场景多轮对话方法与系统。


背景技术:

1、虚拟客服是虚拟数字人在智能客服场景的应用。传统客服一般仅需具备业务查询办理能力,而虚拟客服由于具备生动形象、更具交互能力等特点,往往还承担自然对话、闲聊、问答等任务。这不仅要求虚拟客服需要具备业务规则之外的更一般的通用对话能力,还要求其能够根据用户输入语句和上下文判断当前所处的对话场景,能够自然地在各场景间切换。

2、目前已经有些工作被提出用于实现多场景多轮对话的切换。徐敏等人在专利号为201811626785.8的发明专利“会话场景切换方法及装置”中提出了一种对话场景切换方法,该方法通过相邻两轮用户输入消息的相似性判断是停留在第一场景还是切换到第二场景,以及是否恢复到第一场景。李春兰等人在专利号为201911166714.9的发明专利“一种基于业务场景的多轮对话体系构建方法及系统”中提出了一种用于多场景业务的多轮对话方法,对不同业务场景预设关键词和预料,使用意图判定模型和规则匹配模型进行场景匹配与转换。王子豪等人在专利号为202010809597.x的发明专利“智能客服多轮会话管理的方法和装置”中提出一种多轮意图模型,通过在与用户多轮的交流中识别用户意图,使得系统可以根据潜在的用户意图类别执行不同的业务逻辑。

3、上述方法的问题在于它们被设计成只能在两种场景或相似功能的多个场景间切换,且它们大多都只能给出场景切换的“意图”或“信号”,需要由其他方法实现具体的对话逻辑。这些方法更适用于传统的客服机器人,它们通过两轮或多轮对话识别出用户需要办理的业务类型后转交给系统组件实施业务流程。对于虚拟数字人技术在智能客服场景的应用,虚拟人需要自身具备类似真人的完备对话逻辑,并且能够自然灵活地在不同对话场景间切换,这是现有方法不具备的。


技术实现思路

1、本发明针对现有技术中存在的技术问题,提供一种用于虚拟客服的多场景多轮对话方法与系统,提供了面向业务办理、知识库查询和闲聊三个不同场景的多轮对话能力,通过一个总体的场景对话调度和方法和三个独立场景的对话方法,智能地识别用户语义并在不同场景的语境间切换并完成对话。

2、本发明解决上述技术问题的技术方案如下:

3、一方面,本发明提供一种用于虚拟客服的多场景多轮对话系统,所述多场景包括面向业务办理场景、知识库查询场景和闲聊场景。

4、其中,所述业务办理场景,是指用户根据指引在各种预设的业务办理线路中进行选择以在各业务办理步骤间前进、后退、跳转或退出的流程。所述知识库查询场景,是指用户在一个包含知识条目和知识内容的数据库中检索特定条目对应内容的流程。所述闲聊场景,是指用户无目的性聊天的非业务查询、非特定内容检索的对话流程。

5、该对话系统包括对话调度组件、业务办理组件、知识库查询组件和聊天组件;

6、所述对话调度组件,用于管理各场景对话组件的运行顺序和调用关系,提供与外部交互的接口;每轮对话中,接收外部输入的文本或语音,经处理后将响应文本或语音返回,等待下一次输入;

7、所述业务办理组件,用于处理业务办理相关的对话,维护所有的业务规则办理线路并记录当前业务办理进度;

8、所述知识库查询组件,用于处理非业务办理类型的通用知识检索型对话,维护知识库并管理一个上下文记录器用于跟踪查询进度;

9、所述聊天组件,用于处理不属于业务办理同时不属于内容检索的聊天型对话,维护当前多轮聊天的历史会话内容。

10、进一步的,所述业务办理组件包括业务办理线路、进度记录器、业务办理查询接口和进度重置接口;

11、所述业务办理线路,包括由业务办理步骤的节点按顺序组成的线性数据结构,支持单条或多条业务办理线路;每个节点至少包含进入该节点的预置语料、指向下一节点的信息、用户回复的处理方法;每个节点负责处理一轮对话,该节点首先返回一段预置语料,用户根据该预料进行回复,节点检查用户的回复信息并决定节点跳转信息;

12、所述进度记录器,为一个用于记录当前所处节点位置的变量,包含当前所处的线路和该线路的节点位置;初始情况下进度记录器指向一个初始节点;所述初始节点不包含预置语料和下一节点信息,以各业务办理线路的首个节点作为跳转节点,并以各业务办理线路的业务描述作为触发文本;

13、所述业务办理查询接口,用于执行单轮业务办理对话;将用户输入发送给当前进度记录器指向的节点,该节点返回响应文本并按照该节点规则将进度记录器指向新的节点;

14、所述进度重置接口,用于重置所述进度记录器,将其指向初始节点。

15、进一步的,所述业务办理线路中,还包括特殊跳转节点,所述特殊跳转节点中包含特殊触发文本以及触发后的跳转节点、响应文本或退出信息。

16、进一步的,节点检查用户的回复信息并决定节点跳转信息,包括:

17、节点收到用户的回复信息后,判断节点内是否包含特殊触发文本,若包含则将用户的回复信息与节点的特殊触发文本进行匹配,若匹配不成功或节点内不包含特殊触发文本,则进入下一节点,若匹配成功,则跳转至该节点所包含的所述触发后的跳转节点。

18、进一步的,所述知识库查询组件,包括知识库模块、检索上下文模块、知识库查询接口和上下文重置接口;

19、所述知识库模块,包括一个或多个有向无环的树结构,由知识标签和知识内容组成;根节点是一级知识标签,中间节点是嵌套的多级标签,叶子节点是最终的知识内容,每个节点至少包含该节点代表的知识标签文本或知识内容文本;

20、所述检索上下文模块,包含当前所处检索节点的子标签列表和各子标签位置索引,初始时或检索节点处于叶子节点时,检索上下文模块为空;

21、所述知识库查询接口,用于执行单轮知识库查询对话;查询时直接检索非叶子节点的任意知识标签;

22、所述上下文重置接口,用于将检索上下文模块重置为空。

23、进一步的,知识库查询接口在执行单轮知识库查询对话时,执行如下操作:

24、获取用户的查询文本,并判断检索上下文模块是否为空;

25、若检索上下文模块不为空,计算查询文本与检索上下文的相似度;若最高相似度大于第一预设阈值,返回最高相似度的子标签的下级标签或知识内容,更新检索上下文模块,否则返回“匹配失败”信号;

26、若检索上下文模块为空,计算查询文本与所有知识标签的相似度;若最高相似度大于第二预设阈值,返回最高相似度对应的知识标签的下级标签或知识内容,更新检索上下文模块;否则返回“检索失败”信号。

27、进一步的,所述聊天组件包括:多轮对话聊天模型、历史聊天记录模块、聊天记录查询接口和聊天记录重置接口;

28、所述多轮对话聊天模型为一个生成式seq2seq神经网络模型,以历史聊天记录和当前轮次的查询文本作为输入,输出当前轮次的聊天响应文本;

29、所述历史聊天记录模块,用于记录一段历史轮数内的查询文本和响应文本,所述历史轮数可以是有限或无限的,初始情况下历史聊天记录模块为空;

30、所述聊天记录查询接口,用于执行单轮聊天对话;其聊天方法为:将历史聊天记录与查询文本拼接后经多轮对话聊天模型转发,返回模型输出;

31、所述聊天记录重置接口,用于将所述历史聊天记录模块重置为空。

32、进一步的,所述对话调度组件,包括:

33、信息接收模块,用于接收用户输入的查询文本或查询语音;

34、转换模块,用于采用语音转文本算法将输入的查询语音解析为查询文本;

35、调度响应模块,用于将所述查询文本作为输入,依次调用所述业务办理组件、知识库查询组件和聊天组件对所述查询文本进行匹配,获得相应的响应文本作为输出文本,确认对话意图;

36、输出模块,用于将所述输出文本返回给用户。

37、进一步的,所述调度响应模块,具体用于,

38、将所述查询文本作为输入,调用所述业务办理组件中的业务办理查询接口进行文本匹配,并根据匹配结果获得第一响应文本,若第一响应文本不为“匹配失败”信号,则确认对话意图为业务办理,将第一响应文本作为输出文本,并调用知识库查询组件的上下文重置接口以及聊天组件的聊天记录重置接口,否则调用所述知识库查询组件中的知识库查询接口进行文本匹配;

39、所述知识库查询组件根据匹配结果获得第二响应文本,若第二响应文本不为“匹配失败”或“检索失败”,则确认对话意图为知识库查询,将第二响应文本作为输出文本,并调用业务办理组件的进度重置接口及聊天组件的聊天记录重置接口;若第二响应文本为“匹配失败”信号,则调用知识库查询组件的上下文重置接口重置知识库查询的历史状态,并调用所述业务办理组件中的业务办理查询接口进行文本匹配;若第二响应文本为“检索失败”,则确认对话意图为一般性聊天,调用聊天组件中的聊天记录查询接口,获得第三响应文本作为输出文本,并调用业务办理组件的进度重置接口以及知识库查询组件的上下文重置接口。

40、另一方面,本发明还提供一种用于虚拟客服的多场景多轮对话方法,该方法基于上述的一种用于虚拟客服的多场景多轮对话系统实现,包括以下步骤:

41、步骤1,接收用户输入的查询文本或查询语音,若输入为语音,执行步骤2,否则执行步骤3;

42、步骤2,采用语音转文本算法将查询语音解析为查询文本;

43、步骤3,以查询文本为输入,调用业务办理组件的查询接口,获得第一响应文本;若第一响应文本不为“失败”信号,确认该轮对话意图为业务办理,以第一响应文本作为输出文本暂存,调用知识库查询组件的上下文重置接口,调用聊天组件的聊天记录重置接口,执行步骤6;否则执行步骤4;

44、步骤4,以查询文本为输入,调用知识库查询组件的查询接口,获得第二响应文本;若第二响应文本不为“匹配失败”或“检索失败”信号,则确认该轮对话意图为知识库查询,以第二响应文本作为输出文本暂存;调用业务办理组件的进度重置接口,调用聊天组件的聊天记录重置接口,执行步骤6;如果第二响应文本为“匹配失败”信号,即说明上一轮对话意图为知识库查询,但本轮查询进度与上一轮不匹配,则调用知识库查询组件的上下文重置接口重置知识库查询的历史状态,然后执行步骤3;如果第二响应文本为“检索失败”,即说明查询文本与知识库条目不匹配,则确认该轮对话意图不为知识库查询,执行步骤5;

45、步骤5,确认该轮对话意图为一般性聊天,以查询文本为输入,调用聊天组件的查询接口,获得第三响应文本作为输出文本暂存;调用业务办理组件的进度重置接口,调用知识库查询组件的上下文重置接口,执行步骤6;

46、步骤6,若用户输入为文本,将暂存的输出文本返回给用户,否则采用文本转语音算法将输出文本合成为音频后返回给用户。

47、本发明的有益效果是:本发明提出的用于虚拟客服的多场景多轮对话方法提供了面向业务办理、知识库查询和闲聊三个不同场景的多轮对话能力,通过一个总体的场景对话调度和方法和三个独立场景的对话方法,智能地识别用户语义并在不同场景的语境间切换并完成对话。所述场景切换不需要外部信号干预,而是在与用户的每轮对话中智能判断并实施的。判断基于多轮对话中用户输入与场景文本条目的语义相似度,而不是基于关键词的简单意图分类,因此能实现较高的精度。另外,本发明实现了从用户输入信息到返回响应文本的完整对话功能,不依赖外部的对话系统。

48、综上所述,本发明提出的方法在一定程度上解决了虚拟客服在不同对话场景间切换时需要外部干预、对话割裂等问题,进一步推动了虚拟数字人在拟人化、交互能力等发面的发展。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1