CN110941710B - 用于实现会话的方法、装置、介质以及电子设备 - Google Patents
用于实现会话的方法、装置、介质以及电子设备 Download PDFInfo
- Publication number
- CN110941710B CN110941710B CN201911179972.0A CN201911179972A CN110941710B CN 110941710 B CN110941710 B CN 110941710B CN 201911179972 A CN201911179972 A CN 201911179972A CN 110941710 B CN110941710 B CN 110941710B
- Authority
- CN
- China
- Prior art keywords
- session
- conversation
- state
- statement
- historical
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 86
- 230000009471 action Effects 0.000 claims description 74
- 239000013598 vector Substances 0.000 claims description 47
- 238000011144 upstream manufacturing Methods 0.000 claims description 37
- 230000009191 jumping Effects 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 230000009286 beneficial effect Effects 0.000 abstract description 8
- 230000000875 corresponding effect Effects 0.000 description 35
- 238000003062 neural network model Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 13
- 230000002349 favourable effect Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000011161 development Methods 0.000 description 6
- 235000008694 Humulus lupulus Nutrition 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/225—Feedback of the input speech
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Telephonic Communication Services (AREA)
- Machine Translation (AREA)
Abstract
公开了一种用于实现会话的方法、装置、介质以及电子设备。其中的用于实现会话的方法包括:确定会话的第一会话方的当前会话语句所属的会话状态;根据所述会话状态的下游会话状态,确定所述会话的当前目标会话状态;获取用于将所述会话状态引导至所述当前目标会话状态的引导会话语句,并向所述第一会话方提供所述引导会话语句。本公开提供的技术方案有利于提高会话的实现灵活性,并有利于提高用户的会话体验。
Description
技术领域
本公开涉及智能会话技术,尤其是一种用于实现会话的方法、用于实现会话的装置、存储介质以及电子设备。
背景技术
智能会话技术已经被广泛应用在智能音箱、客服以及导航等应用场景中。
智能会话通常是以一问一答的对话形式实现的。例如,在检测到用户说完一句话之后,根据用户说的话,有针对性的形成对话语句,并将该对话语句以文本或者音频等形式提供给用户。
在一问一答的对话过程中,往往是用户处于会话的主导位置,这不利于提高智能会话的灵活性以及粘性。
发明内容
为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种用于实现会话的方法、用于实现会话的装置、存储介质以及电子设备。
根据本公开实施例的一个方面,提供一种用于实现会话的方法,该方法包括:确定会话的第一会话方的当前会话语句所属的会话状态;根据所述会话状态的下游会话状态,确定所述会话的当前目标会话状态;获取用于将所述会话状态引导至所述当前目标会话状态的引导会话语句,并向所述第一会话方提供所述引导会话语句。
在本公开一实施方式中,所述确定会话的第一会话方的当前会话语句所属的会话状态,包括:获取会话的第一会话方的当前会话语句的意图;根据所述意图,确定所述当前会话语句所属的会话状态。
在本公开又一实施方式中,所述根据所述会话状态的下游会话状态,确定所述会话的当前目标会话状态,包括:根据预设的会话状态跳转信息集合,确定所述会话状态的所有下游会话状态;将所述所有下游会话状态中的一个作为所述会话的当前目标会话状态。
在本公开再一实施方式中,所述将所述所有下游会话状态中的一个作为所述会话的当前目标会话状态,包括:根据所述会话状态跳转信息集合,确定所述会话状态的预期跳转会话状态;若所述预期跳转会话状态为第一预定会话状态,则将所述会话状态的除所述第一预定会话状态之外的其他下游会话状态中的一个作为所述会话的当前目标会话状态。
在本公开再一实施方式中,所述根据所述会话状态跳转信息集合,确定所述会话状态的预期跳转会话状态,包括:根据所述会话状态跳转信息集合,获取所述会话状态跳转到各下游会话状态的跳转概率;将对应跳转概率最大的下游会话状态,作为所述预期跳转会话状态。
在本公开再一实施方式中,所述将所述所有下游会话状态中的一个作为所述会话的当前目标会话状态,包括:根据所述会话状态跳转信息集合,确定所述所有下游会话状态中具有跳转至第二预定会话状态的跳转路径的下游会话状态;将所述具有跳转至第二预定会话状态的跳转路径的下游会话状态中的一个作为所述会话的当前目标会话状态。
在本公开再一实施方式中,所述将所述具有跳转至第二预定会话状态的跳转路径的下游会话状态中的一个作为所述会话的当前目标会话状态,包括:根据所述会话状态跳转信息集合,确定所述具有跳转至第二预定会话状态的跳转路径的下游会话状态各自抵达第二预定会话状态的抵达概率;将对应抵达概率最大的下游会话状态,作为所述会话的当前目标会话状态。
在本公开再一实施方式中,所述会话状态跳转信息集合是根据历史会话设置的;所述会话状态跳转信息集合的设置过程包括:确定各历史会话中的所述第一会话方的多个历史会话语句的意图;根据所述第一会话方的多个历史会话语句的意图,确定所述第一会话方的多个历史会话语句所属的会话状态;根据所述各历史会话中的第一会话方的各历史会话语句的先后顺序,设置所述第一会话方的多个历史会话语句的上游会话状态和下游会话状态;根据所述第一会话方的多个历史会话语句的上游会话状态和下游会话状态,设置所述会话状态跳转信息集合。
在本公开再一实施方式中,所述根据所述第一会话方的多个历史会话语句的上游会话状态和下游会话状态,设置所述会话状态跳转信息集合,包括:根据所述各历史会话中的第一会话方的多个历史会话语句所属的会话状态以及所述上游会话状态和下游会话状态,对各会话状态分别进行出边数和/或入边数统计;根据所述统计结果,为相应的会话状态分别设置会话状态跳转信息。
在本公开再一实施方式中,所述根据所述统计结果,为相应的会话状态分别设置会话状态跳转信息,包括:对于任一会话状态,若该会话状态的出边数和入边数之和满足预定条件,则设置该会话状态的上游会话状态、下游会话状态以及该会话状态跳转到各下游会话状态的跳转概率。
在本公开再一实施方式中,所述获取用于将所述会话状态引导至所述当前目标会话状态的引导会话语句,包括:从预设的用于将所述会话状态引导至所述当前目标会话状态的引导会话语句集合中,选取至少一引导会话语句。
在本公开再一实施方式中,所述引导会话语句集合是根据历史会话设置,所述引导会话语句集合的设置过程包括:获取各历史会话中的第二会话方的历史会话语句,其中,所述第二会话方为与所述第一会话方进行对话的会话方;针对任一历史会话而言,确定该历史会话中的第二会话方的历史会话语句对应的第一会话状态和第二会话状态,其中,所述第二会话方的历史会话语句使该历史会话中的第一会话方的会话语句由第一会话状态跳转至第二会话状态;针对具有相同第一会话状态和第二会话状态的所有第二会话方的历史会话语句,分别计算各历史会话的动作特征;根据所述动作特征计算结果,将相应的第二会话方的历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中。
在本公开再一实施方式中,所述计算各历史会话的动作特征,包括:将所述第二会话方的历史会话语句划分为多个类别;其中,一个类别中的所有历史会话语句表达相同的含义;针对任一历史会话,根据该历史会话中的第二会话方的历史会话语句所属的类别,设置该历史会话的基于类别的向量,并根据该历史会话中的第二会话状态是否为第一预定会话状态,为该历史会话的向量设置标签;根据带有标签的向量,确定所述历史会话中的第二会话方的历史会话语句的动作特征。
在本公开再一实施方式中,所述根据带有标签的向量,确定所述历史会话中的第二会话方的历史会话语句的动作特征,包括:根据带有标签的向量,利用词频逆文本频率指数算法,确定所述历史会话中的第二会话方的历史会话语句的动作特征;所述根据所述动作特征计算结果,将相应的第二会话方的历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中,包括:确定通过动作特征最显著的多个历史会话语句将所述第一会话状态引导至第二会话状态的动作概率;
将动作概率最大的至少一个历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中。
根据本公开实施例的另一个方面,提供了一种用于实现会话的装置,该装置包括:确定会话状态模块,用于确定会话的第一会话方的当前会话语句所属的会话状态;确定目标会话状态模块,用于根据所述会话状态的下游会话状态,确定所述会话的当前目标会话状态;引导控制模块,用于获取用于将所述会话状态引导至所述当前目标会话状态的引导会话语句,并向所述第一会话方提供所述引导会话语句。
在本公开一实施方式中,所述确定会话状态模块包括:第一子模块,用于获取会话的第一会话方的当前会话语句的意图;第二子模块,用于根据所述意图,确定所述当前会话语句所属的会话状态。
在本公开又一实施方式中,所述确定目标会话状态模块包括:第三子模块,用于根据预设的会话状态跳转信息集合,确定所述会话状态的所有下游会话状态;第四子模块,用于将所述所有下游会话状态中的一个作为所述会话的当前目标会话状态。
在本公开再一实施方式中,所述第四子模块,包括:第一单元,用于根据所述会话状态跳转信息集合,确定所述会话状态的预期跳转会话状态;第二单元,用于若所述预期跳转会话状态为第一预定会话状态,则将所述会话状态的除所述第一预定会话状态之外的其他下游会话状态中的一个作为所述会话的当前目标会话状态。
在本公开再一实施方式中,所述第一单元具体用于:根据所述会话状态跳转信息集合,获取所述会话状态跳转到各下游会话状态的跳转概率;将对应跳转概率最大的下游会话状态,作为所述预期跳转会话状态。
在本公开再一实施方式中,所述第四子模块包括:第三单元,用于根据所述会话状态跳转信息集合,确定所述所有下游会话状态中具有跳转至第二预定会话状态的跳转路径的下游会话状态;第四单元,用于将所述具有跳转至第二预定会话状态的跳转路径的下游会话状态中的一个作为所述会话的当前目标会话状态。
在本公开再一实施方式中,所述第四单元进一步用于:根据所述会话状态跳转信息集合,确定所述具有跳转至第二预定会话状态的跳转路径的下游会话状态各自抵达第二预定会话状态的抵达概率;将对应抵达概率最大的下游会话状态,作为所述会话的当前目标会话状态。
在本公开再一实施方式中,所述装置还包括:第一设置模块,用于利用历史会话设置会话状态跳转信息集合;所述第一设置模块包括:第五子模块,用于确定各历史会话中的所述第一会话方的多个历史会话语句的意图;第六子模块,用于根据所述第一会话方的多个历史会话语句的意图,确定所述第一会话方的多个历史会话语句所属的会话状态;第七子模块,用于根据所述各历史会话中的第一会话方的各历史会话语句的先后顺序,设置所述第一会话方的多个历史会话语句的上游会话状态和下游会话状态;第八子模块,用于根据所述第一会话方的多个历史会话语句的上游会话状态和下游会话状态,设置所述会话状态跳转信息集合。
在本公开再一实施方式中,所述第八子模块包括:第五单元,用于根据所述各历史会话中的第一会话方的多个历史会话语句所属的会话状态以及所述上游会话状态和下游会话状态,对各会话状态分别进行出边数和/或入边数统计;第六单元,用于根据所述统计结果,为相应的会话状态分别设置会话状态跳转信息。
在本公开再一实施方式中,所述第六单元进一步用于:对于任一会话状态,若该会话状态的出边数和入边数之和满足预定条件,则设置该会话状态的上游会话状态、下游会话状态以及该会话状态跳转到各下游会话状态的跳转概率。
在本公开再一实施方式中,所述引导控制模块进一步用于:从预设的用于将所述会话状态引导至所述当前目标会话状态的引导会话语句集合中,选取至少一引导会话语句。
在本公开再一实施方式中,所述装置还包括:第二设置模块,用于根据历史会话设置引导会话语句集合,所述第二设置模块包括:第九子模块,用于获取各历史会话中的第二会话方的历史会话语句,其中,所述第二会话方为与所述第一会话方进行对话的会话方;第十子模块,用于针对任一历史会话而言,确定该历史会话中的第二会话方的历史会话语句对应的第一会话状态和第二会话状态,其中,所述第二会话方的历史会话语句使该历史会话中的第一会话方的会话语句由第一会话状态跳转至第二会话状态;第十一子模块,用于针对具有相同第一会话状态和第二会话状态的所有第二会话方的历史会话语句,分别计算各历史会话的动作特征;第十二子模块,用于根据所述动作特征计算结果,将相应的第二会话方的历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中。
在本公开再一实施方式中,所述第十一子模块包括:第七单元,用于将所述第二会话方的历史会话语句划分为多个类别;其中,一个类别中的所有历史会话语句表达相同的含义;第八单元,用于针对任一历史会话,根据该历史会话中的第二会话方的历史会话语句所属的类别,设置该历史会话的基于类别的向量,并根据该历史会话中的第二会话状态是否为第一预定会话状态,为该历史会话的向量设置标签;第九单元,用于根据带有标签的向量,确定所述历史会话中的第二会话方的历史会话语句的动作特征。
在本公开再一实施方式中,所述第九单元进一步用于:根据带有标签的向量,利用词频逆文本频率指数算法,确定所述历史会话中的第二会话方的历史会话语句的动作特征;所述第十二子模块进一步用于:确定通过动作特征最显著的多个历史会话语句将所述第一会话状态引导至第二会话状态的动作概率;将动作概率最大的至少一个历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中。
根据本公开实施例的再一方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述用于实现会话的方法。
根据本公开实施例的又一方面,提供一种电子设备,该电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述用于实现会话的方法。
基于本公开上述实施例提供的一种用于实现会话的方法和装置,通过获得与第一会话方的会话的当前目标会话状态,并向第一会话方提供用于将会话状态引导至当前目标会话状态的引导会话语句,有利于使第一会话方的会话语句向当前目标会话状态跳转;由于当前目标会话状态是本公开主动从第一会话方的当前会话语句所属会话状态的下游会话状态中选取出来的,因此,本公开有利于避免第一会话方在会话过程中始终处于主导位置的现象,并有利于引导会话的方向发展,例如,本公开有利于避免在没有达到智能会话的目的之前,就朝向会话结束的方向发展的现象,从而有利于维持会话的持续性;再例如,本公开有利于引导会话尽快的朝向智能会话的目的方向发展,从而有利于提高会话的效率。由此可知,本公开提供的技术方案有利于提高会话的实现灵活性,并有利于提高用户的会话体验。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同描述一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1为本公开的适用场景的一个实施例的示意图;
图2为本公开的用于实现会话的方法一个实施例的流程图;
图3为本公开的利用历史会话设置会话状态跳转信息集合一个实施例的流程图;
图4为本公开的会话状态跳转图一个实施例的示意图;
图5为本公开的利用历史会话设置引导会话集合一个实施例的流程图;
图6为本公开的用于实现会话的装置一个实施例的结构示意图;
图7为本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
下面将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或者两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅是一种描述关联对象的关联关系,表示可以存在三种关系,如A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本公开的实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或者专用计算系统环境或配置一起操作。适于与终端设备、计算机系统或者服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境等等。
终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施。在分布式云计算环境中,任务可以是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
本公开概述
在实现本公开的过程中,发明人发现,在一些应用场景中,智能会话往往是具有目的性的。例如,对于房产领域而言,智能会话的目的包括但不限于:提高委托率或者提高转委托率等。然而,现有的采用一问一答的会话方式来实现智能会话,往往是用户按照自己的意愿提出问题,并等待回复,即用户始终处于会话的主导位置,这不但不利于达到智能会话的目的,而且往往会使与用户的对话较快结束,从而不但不利于维持对话的持续性,而且会使智能会话较单调乏味,不利于提高用户的会话体验。
示例性概述
本公开提供的用于实现会话的技术的应用场景的一个例子,如图1所示。
图1中,智能移动电话100中设置有一款用于为用户提供房屋服务的APP(Application,应用),该APP具有智能会话功能。该房屋服务可以包括但不限于:出租房屋服务以及租房服务。下面一租房服务为例对该应用场景进行说明。
在用户101有租房需求时,可以打开该APP,并通过输入文字或者输入语音的方式,向APP提供会话语句,以表达自己的租房需求。该APP可以根据用户101的会话语句,形成用于回复用户101的会话语句。
在用户101与该APP的本次会话过程中,如果该APP在获得用户101当前提供的一会话语句后,确定出其与用户101的会话即将结束,然而,该APP目前还没有为用户101提供令其满意的房屋信息,则该APP可以利用相应的引导会话语句,主动的引导会话向为用户101继续提供房屋信息的方向发展,从而不但有利于维持会话的持续性,而且有利于满足用户101的租房需求,使用户101获得较好的会话体验。
在用户101与该APP的本次会话过程中,如果该APP在获得用户101当前提供的一会话语句后,确定出目前有多种会话发展方向,且其中包括为用户101提供更多房屋信息的方向或者获得用户101的联系方式的方向,则该APP可以利用相应的引导会话语句,主动的引导会话向为用户101提供更多房屋信息的方向或者获得用户101的联系方式的方向发展,从而有利于尽快的满足用户101的租房需求或者有利于提高转委托率,使用户101获得较好的会话体验。
示例性方法
图2为本公开的用于实现会话的方法一个实施例的流程示意图。
如图2所示,该实施例的方法包括步骤:S200、S201以及S202。下面对各步骤分别进行说明。
S200、确定会话的第一会话方的当前会话语句所属的会话状态。
本公开中的会话可以是指第一会话方和第二会话方之间的对话。一次会话通常会包括:第一会话方的至少一个会话语句以及第二会话方的至少一个会话语句。第一会话方可以是指用户一方。第二会话方可以是指提供智能会话的一方。
本公开中的第一会话方的当前会话语句可以是指第一会话方当前发出的会话语句,且该会话语句需要第二会话方回复。第一会话方的当前会话语句也可以称为第一会话方的待回复会话语句。第一会话方的当前会话语句可以是文本或者音频等形式。
本公开中的会话状态可以是指会话所对应的业务流程中的业务进展状态。会话状态可以称为业务状态或者业务进展状态等。本公开可以预先针对业务流程中的多个重要的业务进展节点,分别设置会话状态。另外,本公开可以采用神经网络模型等方式,获得当前会话语句所属的会话状态。
S201、根据会话状态的下游会话状态,确定会话的当前目标会话状态。
本公开中的会话状态的下游会话状态可以是指:会话状态可以跳转到的下一个会话状态。例如,如果第一会话状态可以跳转至第二会话状态,则第二会话状态是第一会话状态的下游会话状态。需要说明的是,本公开中的会话状态到其下游会话状态的跳转通常是指一步跳转,例如,第一会话状态不需要借助其他会话状态,而可以直接跳转到第二会话状态。
本公开中的会话状态的下游会话状态可以包括一个或者多个会话状态。例如,假设第一会话状态不仅可以直接跳转到第二会话状态,还可以直接跳转到第三会话状态、第四会话状态、……、以及第n会话状态,则该第一会话状态的下游会话状态包括:n-1个会话状态。
本公开中的当前目标会话状态可以是指提供智能会话的一方(即第二会话方)基于当前会话语句而期望第一会话方跳转到的会话状态,以便于实现智能会话的目的。随着会话的不断推进,第一会话方提供的当前会话语句会不断发生变化,从而使当前目标会话状态也会随之发生变化。
S202、获取用于将会话状态引导至当前目标会话状态的引导会话语句,并向第一会话方提供该引导会话语句。
本公开中的引导会话语句可以是指用于将会话状态引导至当前目标会话状态的会话语句。本公开中的引导会话语句也可以称为引导话术。本公开可以以文本或者音频等形式向第一会话方提供该引导会话语句。
本公开通过获得会话的当前目标会话状态,并向第一会话方提供用于将会话状态引导至当前目标会话状态的引导会话语句,有利于使与第一会话方的会话,向当前目标会话状态跳转;由于当前目标会话状态是本公开主动从第一会话方的当前会话语句所属会话状态的下游会话状态中选取出来的,因此,本公开有利于避免第一会话方在会话过程中始终处于主导位置的现象,并有利于引导会话的发展方向;例如,本公开有利于避免在没有达到智能会话的目的之前,就朝向会话结束的方向发展的现象,从而有利于维持会话的持续性;再例如,本公开有利于引导会话尽快的朝向智能会话的目的方向发展,从而有利于提高会话的效率。由此可知,本公开提供的技术方案有利于提高会话的实现灵活性,并有利于提高用户的会话体验。
在一个可选示例中,本公开中的会话状态可以体现出会话语句的意图。即S200可以具体为:获取会话的第一会话方的当前会话语句的意图,并根据当前会话语句的意图,确定当前会话语句所属的会话状态。
可选的,本公开中的意图和会话状态可以是一对一的关系,即一个意图对应一种会话状态,不同意图对应不同的会话状态,也就是说,本公开可以直接将意图作为会话状态。本公开中的意图和会话状态也可以是多对一的关系,即一个意图对应一种会话状态,两种不同的意图可以对应同一种会话状态,此时,本公开在获得了当前会话语句的意图后,可以根据意图和会话状态之间的对应关系,确定当前会话语句所属的会话状态。
一个例子,假定当前会话语句为“几楼的”,由于该当前会话语句的意图为询问楼层,因此,本公开可以确定该当前会话语句的会话状态为与楼层相关的第一会话状态,如“floor(楼层)会话状态”。
另一个例子,假定当前会话语句为“预算250万左右”,由于该当前会话语句的意图为房源搜索,因此,本公开可以确定该当前会话语句的会话状态为与房源搜索相关的第二会话状态,如“house_search(房源搜索)会话状态”。
可选的,本公开可以使用神经网络模型,获得当前会话语句的意图。一个例子,本公开可以先将第一会话方的当前会话语句所包含的所有词均使用词向量表示,然后,将当前会话语句所包含的所有词向量作为神经网络模型的输入提供给神经网络模型,经由该神经网络模型对当前会话语句进行意图预测处理(如编解码处理等),本公开可以根据神经网络模型输出的意图预测处理结果获得当前会话语句的意图。例如,针对预先设置的所有意图(如几十或几百个意图等),神经网络模型输出其预测当前会话语句为不同意图的置信度,本公开可以将最高置信度对应的意图作为当前会话语句的意图。
可选的,本公开可以根据实际业务可能涉及到的多种意图,来设置上述所有意图。例如,对于房产领域而言,房屋租售业务可能涉及到基于首付的意图、基于是否出售的意图、基于楼层的意图、基于房源搜索的意图、基于房源推荐的意图、基于总价的意图、基于是否有钥匙的意图以及基于转委托的意图等。
可选的,本公开中的神经网络模型可以是利用历史会话语句样本成功训练获得的神经网络模型,且历史会话样本带有意图标注。历史会话样本的意图标注用于计算待训练神经网络模型的预测结果的损失,以便于利用该损失调整待训练神经网络模型的网络参数。该神经网络模型的训练过程在此不再详细说明。
本公开通过利用当前会话语句的意图确定当前会话语句所属的会话状态,有利于明确区分不同的会话状态,并有利于控制与第一会话方的会话发展方向。
在一个可选示例中,本公开预先设置有会话状态跳转信息集合,本公开可以利用会话状态跳转信息集合来确定会话的当前目标会话状态。会话状态跳转信息集合中设置有多条会话状态跳转信息。一条会话状态跳转信息可以体现出一个会话状态到其下游会话状态的历史跳转情况。例如,一条会话状态跳转信息可以包括:一个会话状态所对应的所有下游会话状态以及由该会话状态跳转到每一个下游会话状态的跳转概率。该跳转概率可以认为是历史跳转概率。
可选的,本公开利用会话状态跳转信息集合来确定会话的当前目标会话状态的过程可以为:先根据预设的会话状态跳转信息集合,确定第一会话方的会话语句所属的会话状态的所有下游会话状态,其次,将所有下游会话状态中的一个作为会话的当前目标会话状态。例如,本公开可以根据智能会话的应用场景(如租房服务等)所需的会话发展方向,从所有下游会话状态中选取出一个下游会话状态,作为会话的当前目标会话状态。由于会话状态跳转信息集合中包含有多个会话状态分别与其所有下游会话状态的对应关系,因此,本公开可以在会话状态跳转信息集合中查询到与第一会话方的会话语句所属的会话状态相匹配的对应关系,从而本公开可以基于该相匹配的对应关系可以便捷的获得第一会话方的会话语句所属的会话状态的所有下游会话状态。
本公开通过利用会话状态跳转信息集合,可以方便查询到第一会话方的会话语句所属的会话状态的所有下游会话状态,从而可以便捷的获得会话的当前目标会话状态,有利于避免为引导会话的发展方向而影响会话的实时性的现象。
在一个可选示例中,本公开将所有下游会话状态中的一个作为会话的当前目标会话状态的一实现方式可以为:先根据会话状态跳转信息集合,确定第一会话方的当前会话语句所属的会话状态的预期跳转会话状态,然后,判断该预期跳转会话状态是否为第一预定会话状态;如果该预期跳转会话状态为第一预定会话状态,则将会话状态的除第一预定会话状态之外的其他下游会话状态中的一个作为会话的当前目标会话状态;如果该预期跳转会话状态不为第一预定会话状态,则将该预期跳转会话状态作为会话的当前目标会话状态。
可选的,本公开中的预期跳转会话状态可以是指:第一会话方的会话语句所属的会话状态最有可能跳转到的下游会话状态。本公开中的第一预定会话状态可以是预先设置的不希望跳转到的一会话状态。例如,第一预定会话状态可以为结束会话状态等。
本公开通过对预期跳转会话状态是否为第一预定会话状态进行判断,并基于该判断结果来确定当前目标会话状态,可以避免将第一预定会话状态作为当前目标会话状态的现象,由于第一预定会话状态可以被设置为不希望跳转到的一会话状态,且本公开是将第一会话方的当前会话语句所属的会话状态的下游会话状态中的一个下游会话状态作为当前目标会话状态,因此,本公开在有利于保证会话的正常进行的同时,有利于避免会话向不期望的方向发展。
在一个可选示例中,本公开可以基于会话状态跳转信息集合中的跳转概率信息,确定出第一会话方的当前会话语句所属的会话状态的预期跳转会话状态。具体的,本公开中的会话状态跳转信息集合包括多条会话状态跳转信息,每一条会话状态跳转信息均可以包括:一会话状态、该会话状态的所有下游会话状态以及该会话状态跳转到每一个下游会话状态的跳转概率。另外,本公开中的每一条会话状态跳转信息还可以包括:该会话状态的所有上游会话状态以及每一个上游会话状态跳转到该会话状态的跳转概率。本公开可以先根据会话状态跳转信息集合,获取第一会话方的当前会话语句所属的会话状态跳转到各下游会话状态的跳转概率,然后,确定获取到的所有跳转概率中的最大跳转概率,并将最大跳转概率对应的下游会话状态,作为预期跳转会话状态。当然,本公开也不排除将随机选取的下游会话状态作为预期跳转会话状态的可能性。
本公开通过根据第一会话方的当前会话语句所属的会话状态跳转到各下游会话状态的跳转概率,来确定预期跳转会话状态,有利于尽可能的使与第一会话方的会话按照通常的会话交流方式实现。
在一个可选示例中,本公开将所有下游会话状态中的一个作为会话的当前目标会话状态的另一实现方式可以为:先根据会话状态跳转信息集合,确定第一会话方的当前会话语句所属的会话状态的所有下游会话状态中的具有跳转至第二预定会话状态的跳转路径的下游会话状态,并将具有跳转至第二预定会话状态的跳转路径的下游会话状态中的一个作为会话的当前目标会话状态。
可选的,本公开中的第二预定会话状态可以是指预先设置的希望跳转到的一会话状态。也就是说,本公开中的第二预定会话状态可以是指有利于实现智能会话的目的的会话状态。例如,第二预定会话状态可以为有利于提高租房委托率或者转委托率的会话状态等。
可选的,本公开中的第二预定会话状态并不是第一会话方的当前会话语句所属的会话状态的下游会话状态,即第一会话方的当前会话语句所属的会话状态与第二预定会话状态之间至少间隔了第一会话方的当前会话语句所属的会话状态的一下游会话状态。例如,假定第一会话方的当前会话语句所属的会话状态为会话状态A,且会话状态A的所有下游会话状态包括:会话状态B、会话状态C和会话状态D,假定第二预定会话状态为会话状态E,且会话状态E是会话状态B的下游会话状态,而会话状态C和会话状态D均不存在通往会话状态E的路径,则会话状态A和会话状态E之间间隔了会话状态B,本公开需要先从会话状态A跳转到会话状态B之后,才能够从会话状态B跳转到会话状态E。
可选的,本公开可以通过在会话状态跳转信息集合中查找下游会话状态的下游会话状态的方式,来确定具有跳转至第二预定会话状态的跳转路径的下游会话状态。例如,先在会话状态跳转信息集合中查找与第一会话方的当前会话语句所属的会话状态的下游会话状态相匹配的会话状态跳转信息,然后,判断该相匹配的会话状态跳转信息中的下游会话状态是否包括第二预定会话状态,如果包括第二预定会话状态,则认为第一会话方的当前会话语句所属的会话状态的该下游会话状态具有跳转至第二预定会话状态的跳转路径;此时可以停止查询,也可以继续后续的查询过程。例如,继续在会话状态跳转信息集合中查找与前述相匹配的会话状态跳转信息中的除第二预定会话状态之外的其他下游会话状态相匹配的会话状态跳转信息,并继续判断再次相匹配的会话状态跳转信息中的下游会话状态是否包括第二预定会话状态,以此类推,直到查找到第一会话方的当前会话语句所属的会话状态的所有下游会话状态各自跳转至第二预定会话状态的跳转路径、或者直到确定出第一会话方的当前会话语句所属的会话状态的部分下游会话状态不存在跳转至第二预定会话状态的跳转路径。
可选的,在会话状态跳转信息包括上游会话状态的情况下,本公开可以通过在会话状态跳转信息集合中查找第二预定会话状态的上游会话状态的方式,来确定具有跳转至第二预定会话状态的跳转路径的下游会话状态。例如,在会话状态跳转信息集合中查找与第二预定会话状态相匹配的会话状态跳转信息,并判断该相匹配的会话状态跳转信息中的上游会话状态是否包括第一会话方的当前会话语句所属的会话状态的至少一下游会话状态,如果包括至少一下游会话状态,则可以认为该至少一下游会话状态具有调整至第二预定会话状态的跳转路径;此时可以停止查询,也可以继续后续的查询过程。例如,继续在会话状态跳转信息集合中查找与前述相匹配的会话状态跳转信息中的除上述至少一下游会话状态之外的其他上游会话状态相匹配的会话状态跳转信息,并继续判断再次相匹配的会话状态跳转信息中的上游会话状态是否包括第一会话方的当前会话语句所属的会话状态的至少一下游会话状态,以此类推,直到查找到第一会话方的当前会话语句所属的会话状态的所有下游会话状态各自跳转至第二预定会话状态的跳转路径、或者直到确定出第一会话方的当前会话语句所属的会话状态的部分下游会话状态不存在跳转至第二预定会话状态的跳转路径。
本公开通过将具有跳转至第二预定会话状态的跳转路径的下游会话状态中的一个作为会话的当前目标会话状态,由于第二预定会话状态可以被设置为希望跳转到的一会话状态,且本公开是将第一会话方的当前会话语句所属的会话状态的下游会话状态中的一个下游会话状态作为当前目标会话状态,因此,本公开在有利于保证会话的正常进行的同时,有利于主动的将会话向智能会话所期望的方向引导。
在一个可选示例中,在具有跳转至第二预定会话状态的跳转路径的下游会话状态为多个时,本公开可以依据每一条跳转路径抵达第二预定会话状态的可能性,选择一个下游会话状态,并将其作为当前目标会话状态。具体的,本公开可以先根据会话状态跳转信息集合,确定具有跳转至第二预定会话状态的跳转路径的各下游会话状态各自抵达第二预定会话状态的抵达概率,之后,本公开可以将抵达概率最大的下游会话状态,作为会话的当前目标会话状态。当然,本公开也可以从具有跳转至第二预定会话状态的跳转路径的所有下游会话状态中随机选取一个下游会话状态,作为当前目标会话状态。
可选的,本公开中的下游会话状态的抵达概率可以是指从第一会话方的当前会话语句所属的会话状态开始,经由该下游会话状态跳转至第二预定会话状态的可能性。
可选的,该下游会话状态的抵达概率可以基于会话状态跳转信息集合中的跳转概率获得。例如,对于第一会话方的当前会话语句所属的会话状态的任一下游会话状态而言,如果该下游会话状态为第二预定会话状态,则该下游会话状态的抵达概率可以为由第一会话方的当前会话语句所属的会话状态跳转至该下游会话状态的跳转概率;如果该下游会话状态不是第二预定会话状态,则该下游会话状态的抵达概率可以是从第一会话方的当前会话语句所属的会话状态经由该下游会话状态跳转到第二预定会话状态路径中的每一跳所对应的跳转概率之和。
可选的,该下游会话状态的抵达概率也可以基于会话状态跳转信息集合中的跳转概率以及跳数获得的。例如,对于第一会话方的当前会话语句所属的会话状态的任一下游会话状态而言,该下游会话状态的抵达概率可以为:由第一会话方的当前会话语句所属的会话状态经由该下游会话状态,跳转至第二预定会话状态过程中的所有跳转概率之和及其权值以及跳数及其权值,计算获得。
本公开通过借助下游会话状态的抵达概率确定会话的当前目标会话状态,有利于尽可能的将与第一会话方的会话引导到第二预定会话状态,由于第二预定会话状态可以是智能会话希望的会话状态,例如,第二预定会话状态可以为有利于实现智能会话的目的的会话状态,因此,本公开在有利于有针对性的引导会话的方向发展的同时,还有利于使会话尽快的朝向智能会话希望的方向发展,从而有利于提高会话的效率。
在一个可选示例中,本公开的会话状态跳转信息集合是根据历史会话设置的。本公开利用历史会话设置会话状态跳转信息集合的一个实施例的流程如图3所示。
图3中,S300、确定各历史会话中的第一会话方的多个历史会话语句的意图。
可选的,本公开中的历史会话可以是指基于第一会话方和第二会话方的交流而形成的会话。其中的第二会话方可以是自然人,且第二会话方通常不是提供智能会话一方。例如,对于房产领域而言,历史会话可以是房产经纪人与用户之间的历史会话,其中的用户为第一会话方,房产经纪人为第二会话方。需要说明的是,本公开中的各历史会话通常是多个不同的房产经纪人与多个不同的用户之间的历史会话。所有的房产经纪人均被认为是第二会话方,所有的用户均被认为是第一会话方。
可选的,一个历史会话通常包括第一会话方的多个历史会话语句以及第二会话方的多个历史会话语句,且第一会话方的多个历史会话语句通常可以按照历史会话语句的产生时间进行排序。
可选的,对于任一历史会话而言,本公开均可以使用神经网络模型,获得第一会话方的多个历史会话语句的意图。一个例子,本公开可以先将第一会话方的一历史会话语句所包含的所有词均使用词向量表示,然后,将该历史会话语句所包含的所有词向量作为神经网络模型的输入提供给神经网络模型,经由该神经网络模型对该历史会话语句进行意图预测处理(如编解码处理等),本公开可以根据神经网络模型输出的意图预测处理结果获得该历史会话语句的意图。例如,针对预先设置的所有意图(如几十或几百个意图等),神经网络模型输出其预测该历史会话语句为不同意图的置信度,本公开可以将超过预定值的最高置信度对应的意图作为该历史会话语句的意图。如果最高置信度不超过预定值,则可以认为该历史会话语句的意图未知,意图未知的历史会话语句可以不应用于后续的步骤中。另外,对于任一历史会话而言,本公开可以使用神经网络模型对第一会话方的所有历史会话语句进行意图预测,也可以仅对第一会话方的部分历史会话语句进行意图预测。
S301、根据第一会话方的各历史会话语句的意图,确定第一会话方的多个历史会话语句所属的会话状态。
可选的,本公开可以直接将各历史会话语句的意图分别作为各历史会话语句所属的会话状态。本公开也可以根据预先设置的意图和会话状态之间的对应关系,确定各历史会话语句所属的会话状态。
S302、根据各历史会话中的第一会话方的各历史会话语句的先后顺序,设置第一会话方的多个历史会话语句的上游会话状态和下游会话状态。
可选的,对于任一历史会话而言,由于该历史会话中的所有历史会话语句均具有产生时间,因此,该历史会话中的所有历史会话语句可以按照时间的进度进行排序。对于一个历史会话中的任一历史会话语句(为方便描述,下述称为待处理历史会话语句)而言,本公开可以根据位于该待处理历史会话语句之前的第一个与该待处理历史会话语句的意图不相同的历史会话语句的意图,确定该待处理历史会话语句的上游会话状态,且本公开可以根据位于该待处理历史会话语句之后的第一个与该待处理历史会话语句的意图不相同的历史会话语句的意图,确定该待处理历史会话语句的下游会话状态。
S303、根据第一会话方的多个历史会话语句的上游会话状态和下游会话状态,设置会话状态跳转信息集合。
可选的,本公开中的会话状态跳转信息集合可以包括多条会话状态跳转信息。一条会话状态跳转信息可以体现出一个会话状态到其下游会话状态的历史跳转情况。本公开可以基于第一会话方的一个历史会话语句形成一条会话状态跳转信息。
可选的,针对任一历史会话中的第一会话方的任一历史会话语句而言,假定该历史会话语句所属的会话状态与其上游会话状态之间存在一条入边,假定该历史会话语句所属的会话状态与其下游会话状态之间存储一条出边,则本公开可以根据多个历史会话语句所属的会话状态、多个历史会话语句的所有上游会话状态、以及多个历史会话语句的所有下游会话状态,对各每一种话状态分别进行出边数统计和入边数统计中的至少一种统计,从而可以根据统计结果,为相应的会话状态分别设置会话状态跳转信息。
可选的,本公开可以为部分会话状态分别设置会话状态跳转信息,即本公开可以从所有会话状态中挑选出一部分会话状态(如挑选出经常被使用的会话状态等),并基于挑选出的会话状态设置会话状态跳转信息。本公开也可以为所有会话状态均设置会话状态跳转信息。
可选的,在挑选会话状态时,本公开可以基于会话状态的出边数和入边数之和来挑选会话状态,例如,在一个会话状态的出边数和入边数之和满足预定条件(如超过预定数值)时,则该会话状态被挑选出来。当然,本公开也可以基于会话状态的出边数或者入边数来挑选会话状态。本公开可以利用挑选出的会话状态以及各会话状态的上游会话状态和下游会话状态形成会话状态跳转图,会话状态跳转图中的每一个结点即为一个会话状态。状态跳转图中的结点可以称为hub(核心)结点。会话状态跳转图的一个例子如图4所示。
图4所示的会话状态跳转图包括:十个hub结点,即开始状态、第一会话状态、第二会话状态、第三会话状态、第四会话状态、第五会话状态、第六会话状态、第七会话状态、第八会话状态以及结束状态。其中的开始状态的下游会话状态包括:第一会话状态、第二会话状态以及第三会话状态,其中的第一会话状态的上游会话状态包括:开始状态和第二会话状态。在此不再一一说明。
图4,如果一箭头指向一hub结点,则该箭头表示该hub结点的入边。如果一箭头从一个hub结点出发,则该箭头表示该hub结点的出边。例如,由开始状态指向第一会话状态的箭头可以认为第一会话状态的一入边以及开始状态的一出边,由第一会话状态指向第四会话状态的箭头可以认为是第一会话状态的一出边以及第四会话状态的一入边。第一会话状态的入边数为2,出边数为3。第二会话状态的入边数为2,出边数为4。需要说明的是,图4仅示意性的示出了hub结点之间的状态转移情况,例如,图4中没有示出第五会话状态的上游会话状态。
本公开通过为出边数和入边数之和满足预定条件的会话状态设置会话状态跳转信息,可以针对较常用的会话状态设置会话状态跳转信息集合,有利于避免会话状态跳转信息集合过于庞大而影响会话的实时性的现象。
可选的,假定一条会话状态跳转信息包括:一个会话状态所对应的所有下游会话状态以及由该会话状态跳转到每一个下游会话状态的跳转概率,对于一会话状态的一下游会话状态(下述称为待处理下游会话状态)而言,本公开可以根据该会话状态与待处理下游会话状态的出边数与该会话状态与其所有下游会话状态的出边数之和的比值,确定由该会话状态跳转到该待处理下游会话状态的跳转概率。
在一个可选示例中,针对会话状态跳转信息集合中的任一会话状态而言,该会话状态与其任一下游会话状态之间均预先设置有引导会话语句集合,该引导会话语句集合至少包括一条引导会话语句,且每一条引导会话语句均用于将该会话状态引导到该引导会话语句集合所对应的下游会话状态。本公开在确定了第一会话方的当前会话语句所属的会话状态以及该会话的当前目标会话状态之后,就可以确定相应的引导会话语句集合,从而可以从该确定出的引导会话语句集合中选取一条或者多条引导会话语句,提供给第一会话方。
可选的,本公开中的引导会话语句集合可以包括:陈述句引导会话语句子集和疑问句引导会话语句子集,本公开可以根据实际需求从陈述句引导会话语句子集或者疑问句引导会话语句子集中选取一条或者多条引导会话语句,提供给第一会话方。
本公开通过为每一个会话状态与其所有下游会话状态分别设置引导会话语句集合,尤其是设置陈述句引导会话语句子集以及疑问句引导会话语句子集,有利于便捷的获得用于将第一会话方的当前会话语句所属的会话状态引导至该会话的当前目标会话状态的引导会话语句,从而有利于避免获得引导会话语句对会话的实时性的影响。另外,预先设置的引导会话语句集合通常是由线下优选出的引导会话语句形成,因此,有利于增大将第一会话方的当前会话语句所属的会话状态引导至该会话的当前目标会话状态的可能性。
在一个可选示例中,本公开的引导会话语句集合是根据历史会话设置的。本公开利用历史会话设置引导会话集合的一个实施例的流程如图5所示。
图5中,S500、获取各历史会话中的第二会话方的历史会话语句。
可选的,本公开中的历史会话可以是指基于第一会话方和第二会话方的交流而形成的会话。其中的第二会话方可以是自然人,且第二会话方通常不是提供智能会话一方。例如,对于房产领域而言,历史会话可以是房产经纪人与用户之间的历史会话,其中的用户为第一会话方,房产经纪人为第二会话方。需要说明的是,本公开中的各历史会话通常是多个不同的房产经纪人与多个不同的用户之间的历史会话。所有的房产经纪人均被认为是第二会话方,所有的用户均被认为是第一会话方。
可选的,一个历史会话通常包括第一会话方的多个历史会话语句以及第二会话方的多个历史会话语句,且第二会话方的多个历史会话语句通常可以按照历史会话语句的产生时间进行排序。另外,一个历史会话通常包括一个会话状态的跳转,例如,一个历史会话仅包括使第一会话方的历史会话语句由第一会话状态跳转到第二会话状态所涉及到的历史会话语句。
可选的,本公开可以分别获取各历史会话中的第二会话方的陈述句历史会话语句以及疑问句历史会话语句。
S501、针对任一历史会话而言,确定该历史会话中的第二会话方的历史会话语句对应的第一会话状态和第二会话状态。
可选的,在图3所示的实施方式中,本公开已经确定了历史会话中的第一会话方的多条历史会话语句的会话状态,而历史会话中的第一会话方的历史会话语句和第二会话方的历史会话语句是按照历史会话语句的产生时间顺序排列的,因此,第二会话方的历史会话语句之前可能存在第一会话方的历史会话语句(下述称为第一历史会话语句),该第一历史语句所属的会话状态为第一会话状态;第二会话方的历史会话语句之后也可能存在第一会话方的历史会话语句(下述称为第二历史会话语句),该第二历史会话语句所属的会话状态为第二会话状态,第一会话状态和第二会话状态之间的第二会话方的历史会话语句,使该历史会话中的第一会话方的会话语句由第一会话状态跳转至第二会话状态。
S502、针对具有相同第一会话状态和第二会话状态的所有第二会话方的历史会话语句,分别计算各历史会话的动作特征。
可选的,本公开可以将历史会话看做是一个动作。本公开可以利用多种算法计算各历史会话的动作特征。例如,可以利用TF-IDF(Term Frequency–Inverse DocumentFrequency,词频逆文本频率指数)算法,计算第二会话方的各历史会话语句的动作特征。再例如,可以利用卡方值算法计算各历史会话语句的动作特征。
可选的,无论使用何种算法计算各历史会话语句的动作特征,本公开均需要使用向量来表示历史会话语句,以便于针对向量进行动作特征的计算。
可选的,使用向量来表示历史会话语句的一个例子为:
首先,对第二会话方的所有历史会话语句进行聚类处理(如基于相同含义的聚类处理),从而可以将第二会话方的所有历史会话语句划分为多个类别,一个类别中的所有历史会话语句表达相同的含义。在聚类处理过程中,本公开可以将第二会话方的所有历史会话语句划分为陈述句历史会话语句和疑问句历史会话语句,然后,针对所有的陈述句历史会话语句进行聚类处理,并针对所有的疑问句历史会话语句进行聚类处理,从而可以确定出每一个历史会话语句各自所属的类别。
其次,针对任一历史会话,本公开可以根据该历史会话中的第二会话方的历史会话语句所属的类别,设置该历史会话的基于类别的向量,该向量的维数通常与类别的总数量相关,且该向量中的任一维的取值通常与该历史会话中是否包含有属于该类别的历史会话语句相关。
一个例子,假定本公开中的陈述句和疑问句在聚类处理后,均被划分为1000个类别,假定一个历史会话包括三个陈述句历史会话语句,即第一会话语句、第二会话语句和第三会话语句,且第一会话语句属于第一类别,第二会话语句属于第二类别,第三会话语句属于第三类别,则本公开为该历史会话设置的基于类别的向量可以是一个1000维的向量,该向量的第一维、第二维以及第三维的取值均为1,而其他维的取值均为0。
再一个例子,假定本公开中的陈述句和疑问句在聚类处理后,均被划分为1000个类别,假定一个历史会话包括第一会话语句、第二会话语句和第三会话语句,这三个陈述句历史会话语句,且第一会话语句属于第一类别,第二会话语句同样属于第一类别,第三会话语句属于第三类别,则本公开为该历史会话设置的基于类别的向量可以是两个1000维的向量,第一个向量的第一维以及第三维的取值均为1,而其他维的取值均为0,第二个向量的第二维的取值为1,其他维的取值均为0。
又一个例子,假定本公开中的陈述句和疑问句在聚类处理后,均被划分为1000个类别,假定一个历史会话包括第一会话语句、第二会话语句和第三会话语句,其中的第一会话语句和第二会话语句为陈述句历史会话语句,第三会话语句为疑问句历史会话语句,且第一会话语句属于第一类别,第二会话语句属于第二类别,第三会话语句属于第三类别,则本公开为该历史会话设置的基于类别的向量可以是两个1000维的向量,第一个向量的第一维以及第二维的取值均为1,而其他维的取值均为0,第二个向量的第三维的取值为1,其他维的取值均为0。
再次,本公开可以根据该历史会话语句对应的第二会话状态是否为第一预定会话状态,为该向量设置标签。本公开中的标签通常包括两个取值,其中一个取值表示第二会话状态为第一预定会话状态,其中另一个取值表示第二会话状态不为第一预定会话状态。例如,在第二会话状态为第一预定会话状态的情况下,可以将该历史会话的各向量的标签均设置为0,在第二会话状态不为第一预定会话状态的情况下,可以将该历史会话的各向量的标签均设置为1。
在针对每一个历史会话均设置了带有标签的向量之后,即可利用TF-IDF算法等,计算第二会话方的各历史会话语句的动作特征。
S503、根据动作特征计算结果,将相应的第二会话方的历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中。
可选的,本公开可以根据针对历史会话语句的动作特征计算结果,直接将第二会话方的动作特征最显著的一个或者多个历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中。在本公开将历史会话语句区分为陈述句和疑问句的情况下,一方面,本公开可以根据针对陈述句的动作特征计算结果,直接将第二会话方的动作特征最显著的一个或者多个陈述句历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中的陈述句引导会话语句子集中。另一方面,本公开可以根据针对疑问句的动作特征计算结果,直接将第二会话方的动作特征最显著的一个或者多个疑问句历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中的疑问句引导会话语句子集中。
可选的,本公开可以根据针对历史会话语句的动作特征计算结果,选取出动作特征最显著的多个历史会话语句,然后,针对选取出的动作特征最显著的每一个历史会话语句,分别计算该历史会话语句将第一会话状态引导至第二会话状态的动作概率,即计算历史会话语句将第一会话状态成功引导至第二会话状态的可能性,从而获得动作特征最显著的多个历史会话语句各自的动作概率,之后,本公开可以根据动作特征最显著的多个历史会话语句的动作概率,选取出动作概率最大的至少一个历史会话语句,并将选取出的至少一个历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中。本公开通过计算历史会话语句的动作概率,并利用动作概率来选取设置于引导会话语句集中的历史会话语句,有利于提高引导会话语句集中的历史会话语句将第一会话状态成功引导至第二会话状态的可能性。
可选的,在本公开将第二会话方的历史会话语句区分为陈述句和疑问句的情况下,本公开可以根据针对陈述句历史会话语句的动作特征计算结果,选取出动作特征最显著的多个陈述句历史会话语句,然后,针对选取出的动作特征最显著的每一个陈述句历史会话语句,分别计算其将第一会话状态引导至第二会话状态的动作概率,即计算陈述句历史会话语句将第一会话状态成功引导至第二会话状态的可能性,从而可以获得动作特征最显著的多个陈述句历史会话语句各自的动作概率,之后,本公开可以根据多个陈述句历史会话语句的动作概率,选取动作概率最大的至少一个陈述句历史会话语句,并将选取出的至少一个陈述句历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中的陈述句引导会话语句子集中。另外,本公开可以根据针对疑问句历史会话语句的动作特征计算结果,选取出动作特征最显著的多个疑问句历史会话语句,然后,针对选取出的动作特征最显著的每一个疑问句历史会话语句,分别计算其将第一会话状态引导至第二会话状态的动作概率,即计算疑问句历史会话语句将第一会话状态成功引导至第二会话状态的可能性,从而可以获得动作特征最显著的多个疑问句历史会话语句各自的动作概率,之后,本公开可以根据多个疑问句历史会话语句的动作概率,选取动作概率最大的至少一个疑问句历史会话语句,并将选取出的至少一个疑问句历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中的疑问句引导会话语句子集中。
可选的,无论历史会话语句是陈述句历史会话语句,还是疑问句历史会话语句,本公开均可以根据该历史会话语句将第一会话状态引导至多个会话状态的状态跳转总次数、以及该历史会话语句将第一会话状态引导至第二会话状态的状态跳转总次数,来计算该历史会话语句的动作概率。本公开计算一历史会话语句的动作概率的一实施例可以如下述公式(1)所示:
在上述公式(1)中,P(S1→S2,Ak)表示历史会话语句Ak将第一会话状态引导至第二会话状态的状态跳转概率,P(Ak)表示历史会话语句Ak将第一会话状态引导至多个会话状态的状态跳转概率;P(S1→S2,Ak)可以为历史会话语句Ak将第一会话状态引导至第二会话状态的状态跳转总次数与历史会话语句Ak引发状态跳转的总次数的比值;P(Ak)可以为历史会话语句Ak将第一会话状态引导至多个会话状态的状态跳转总次数与历史会话语句Ak引发状态跳转的总次数的比值。
上述历史会话语句Ak引发状态跳转的总次数可以是指:历史会话语句Ak将各会话状态引导分别至各会话状态的总次数。上述历史会话语句Ak将第一会话状态引导至多个会话状态的状态跳转总次数可以是指:历史会话语句Ak将第一会话状态引导至所有会话状态的总次数。
示例性装置
图6为本公开的用于实现会话的装置一个实施例的结构示意图。该实施例的装置可用于实现本公开上述各方法实施例。
如图6所示,该实施例的装置主要包括:确定会话状态模块600、确定目标会话状态模块601以及引导控制模块602。可选的,该装置还可以包括:第一设置模块603和第二设置模块604。
确定会话状态模块600用于确定会话的第一会话方的当前会话语句所属的会话状态。
可选的,确定会话状态模块600可以包括:第一子模块6001和第二子模块6002。其中的第一子模块6001用于获取会话的第一会话方的当前会话语句的意图。其中的第二子模块6002用于根据第一子模块6001获取到的意图,确定当前会话语句所属的会话状态。
确定目标会话状态模块601用于根据确定会话状态模块600确定出的会话状态的下游会话状态,确定会话的当前目标会话状态。
可选的,确定目标会话状态模块601可以包括:第三子模块6011和第四子模块6012。其中的第三子模块6011用于根据预设的会话状态跳转信息集合,确定第一会话方的当前会话语句所属的会话状态的所有下游会话状态。第四子模块6012用于将第三子模块6011确定出的所有下游会话状态中的一个作为会话的当前目标会话状态。
在一个实施例中,第四子模块6012可以包括:第一单元60121和第二单元60122。其中的第一单元60121用于根据会话状态跳转信息集合,确定会话状态的预期跳转会话状态。例如,第一单元60121可以具体用于根据会话状态跳转信息集合,获取会话状态跳转到各下游会话状态的跳转概率,并将对应跳转概率最大的下游会话状态,作为预期跳转会话状态。其中的第二单元60122用于如果预期跳转会话状态为第一预定会话状态,则将会话状态的除第一预定会话状态之外的其他下游会话状态中的一个作为会话的当前目标会话状态。
在另一个实施例中,第四子模块6012可以包括:第三单元60123和第四单元60124。其中的第三单元60123用于根据会话状态跳转信息集合,确定所有下游会话状态中具有跳转至第二预定会话状态的跳转路径的下游会话状态。其中的第四单元60124用于将具有跳转至第二预定会话状态的跳转路径的下游会话状态中的一个作为会话的当前目标会话状态。例如,第四单元60124可以根据会话状态跳转信息集合,确定具有跳转至第二预定会话状态的跳转路径的下游会话状态各自抵达第二预定会话状态的抵达概率,并将对应抵达概率最大的下游会话状态,作为会话的当前目标会话状态。
引导控制模块602用于获取用于将会话状态引导至当前目标会话状态的引导会话语句,并向第一会话方提供所述引导会话语句。例如,引导控制模块602可以从预设的用于将会话状态引导至当前目标会话状态的引导会话语句集合中,选取至少一引导会话语句。
第一设置模块603用于利用历史会话设置会话状态跳转信息集合。
可选的,第一设置模块603包括:第五子模块6031、第六子模块6032、第七子模块6033以及第八子模块6034。其中的第五子模块6031用于确定各历史会话中的第一会话方的多个历史会话语句的意图。其中的第六子模块6032用于根据第一会话方的多个历史会话语句的意图,确定第一会话方的多个历史会话语句所属的会话状态。其中的第七子模块6033用于根据各历史会话中的第一会话方的各历史会话语句的先后顺序,设置第一会话方的多个历史会话语句的上游会话状态和下游会话状态。其中的第八子模块6034用于根据第一会话方的多个历史会话语句的上游会话状态和下游会话状态,设置会话状态跳转信息集合。
可选的,第八子模块6034可以包括:第五单元60341和第六单元60342。
第五单元60341用于根据各历史会话中的第一会话方的多个历史会话语句所属的会话状态以及上游会话状态和下游会话状态,对各会话状态分别进行出边数和/或入边数统计。第六单元60342用于根据统计结果,为相应的会话状态分别设置会话状态跳转信息。例如,对于任一会话状态,若该会话状态的出边数和入边数之和满足预定条件,则第六单元60342设置该会话状态的上游会话状态、下游会话状态以及该会话状态跳转到各下游会话状态的跳转概率。
第二设置模块604用于根据历史会话设置引导会话语句集合。
可选的,第二设置模块604可以包括:第九子模块6041、第十子模块6042、第十一子模块6043和第十二子模块6044。其中的第九子模块6041用于获取各历史会话中的第二会话方的历史会话语句。其中,第二会话方为与第一会话方进行对话的会话方。其中的第十子模块6042用于针对任一历史会话而言,确定该历史会话中的第二会话方的历史会话语句对应的第一会话状态和第二会话状态,其中,第二会话方的历史会话语句使该历史会话中的第一会话方的会话语句由第一会话状态跳转至第二会话状态。其中的第十一子模块6043用于针对具有相同第一会话状态和第二会话状态的所有第二会话方的历史会话语句,分别计算各历史会话的动作特征。其中的第十二子模块6044用于根据动作特征计算结果,将相应的第二会话方的历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中。
可选的,第十一子模块6043可以包括:第七单元60431、第八单元60432以及第九单元60433。其中的第七单元60431用于将第二会话方的历史会话语句划分为多个类别;其中,一个类别中的所有历史会话语句表达相同的含义。其中的第八单元60432用于针对任一历史会话,根据该历史会话中的第二会话方的历史会话语句所属的类别,设置该历史会话的基于类别的向量,并根据该历史会话中的第二会话状态是否为第一预定会话状态,为该历史会话的向量设置标签。其中的第九单元60433用于根据带有标签的向量,确定历史会话中的第二会话方的历史会话语句的动作特征。例如,第九单元60433可以根据带有标签的向量,利用词频逆文本频率指数算法,确定历史会话中的第二会话方的历史会话语句的动作特征。此时,第十二子模块6044可以直接将对应动作特征最显著的至少一个历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中。另外,第十二子模块6044也可以先确定通过动作特征最显著的多个历史会话语句将第一会话状态引导至第二会话状态的动作概率,并将动作概率最大的至少一个历史会话语句设置于用于将第一会话状态引导至第二会话状态的引导会话语句集合中。
本公开的装置所包含的各模块、各子模块以及各单元具体执行的操作,可以参见上述方法实施例中的相关描述,在此不再详细说明。
示例性电子设备
下面参考图7来描述根据本公开实施例的电子设备。图7示出了根据本公开实施例的电子设备的框图。如图7所示,电子设备71包括一个或多个处理器711和存储器712。
处理器711可以是中央处理单元(CPU)或者具有用于实现会话的能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备71中的其他组件以执行期望的功能。
存储器712可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器,例如,可以包括:随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器,例如,可以包括:只读存储器(ROM)、硬盘以及闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器711可以运行所述程序指令,以实现上文所述的本公开的各个实施例的用于实现会话的方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,电子设备71还可以包括:输入装置713以及输出装置714等,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。此外,该输入设备713还可以包括例如键盘、鼠标等等。该输出装置714可以向外部输出各种信息。该输出设备714可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图7中仅示出了该电子设备71中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备71还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的用于实现会话的方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的用于实现会话的方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列举)可以包括:具有一个或者多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势以及效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备以及系统。诸如“包括”、“包含、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述,以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改等对于本领域技术人员而言,是非常显而易见的,并且在此定义的一般原理可以应用于其他方面,而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式中。尽管以上已经讨论了多个示例方面以及实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (26)
1.一种用于实现会话的方法,包括:
确定会话的第一会话方的当前会话语句所属的会话状态;
根据预设的会话状态跳转信息集合,确定所述会话状态的所有下游会话状态;
将所述所有下游会话状态中的一个作为所述会话的当前目标会话状态;
获取用于将所述会话状态引导至所述当前目标会话状态的引导会话语句,并向所述第一会话方提供所述引导会话语句;
所述会话状态跳转信息集合是根据第一会话方和第二会话方的多个历史会话设置的,其中的任一历史会话中的所有历史会话语句按照时间的进度进行排序;所述会话状态跳转信息集合的设置过程包括:
确定各历史会话中的所述第一会话方的多个历史会话语句的意图;
根据所述第一会话方的多个历史会话语句的意图,确定所述第一会话方的多个历史会话语句所属的会话状态;
将任一历史会话中的第一会话方的任一历史会话语句作为待处理历史会话语句,将位于该待处理历史会话语句之前的第一个与该待处理历史会话语句的意图不相同的历史会话语句的意图所属的会话状态,作为该待处理历史会话语句的上游会话状态,将位于该待处理历史会话语句之后的第一个与该待处理历史会话语句的意图不相同的历史会话语句的意图所属的会话状态,作为该待处理历史会话语句的下游会话状态;
根据所述第一会话方的多个历史会话语句的上游会话状态和下游会话状态,设置所述会话状态跳转信息集合。
2.根据权利要求1所述的方法,其中,所述确定会话的第一会话方的当前会话语句所属的会话状态,包括:
获取会话的第一会话方的当前会话语句的意图;
根据所述意图,确定所述当前会话语句所属的会话状态。
3.根据权利要求1所述的方法,其中,所述将所述所有下游会话状态中的一个作为所述会话的当前目标会话状态,包括:
根据所述会话状态跳转信息集合,确定所述会话状态的预期跳转会话状态;
若所述预期跳转会话状态为第一预定会话状态,则将所述会话状态的除所述第一预定会话状态之外的其他下游会话状态中的一个作为所述会话的当前目标会话状态。
4.根据权利要求3所述的方法,其中,所述根据所述会话状态跳转信息集合,确定所述会话状态的预期跳转会话状态,包括:
根据所述会话状态跳转信息集合,获取所述会话状态跳转到各下游会话状态的跳转概率;
将对应跳转概率最大的下游会话状态,作为所述预期跳转会话状态。
5.根据权利要求1所述的方法,其中,所述将所述所有下游会话状态中的一个作为所述会话的当前目标会话状态,包括:
根据所述会话状态跳转信息集合,确定所述所有下游会话状态中具有跳转至第二预定会话状态的跳转路径的下游会话状态;
将所述具有跳转至第二预定会话状态的跳转路径的下游会话状态中的一个作为所述会话的当前目标会话状态。
6.根据权利要求5所述的方法,其中,所述将所述具有跳转至第二预定会话状态的跳转路径的下游会话状态中的一个作为所述会话的当前目标会话状态,包括:
根据所述会话状态跳转信息集合,确定所述具有跳转至第二预定会话状态的跳转路径的下游会话状态各自抵达第二预定会话状态的抵达概率;
将对应抵达概率最大的下游会话状态,作为所述会话的当前目标会话状态。
7.根据权利要求1所述的方法,其中,所述根据所述第一会话方的多个历史会话语句的上游会话状态和下游会话状态,设置所述会话状态跳转信息集合,包括:
根据所述各历史会话中的第一会话方的多个历史会话语句所属的会话状态以及所述上游会话状态和下游会话状态,对各会话状态分别进行出边数和/或入边数统计;
根据所述统计结果,为相应的会话状态分别设置会话状态跳转信息。
8.根据权利要求7所述的方法,其中,所述根据所述统计结果,为相应的会话状态分别设置会话状态跳转信息,包括:
对于任一会话状态,若该会话状态的出边数和入边数之和满足预定条件,则设置该会话状态的上游会话状态、下游会话状态以及该会话状态跳转到各下游会话状态的跳转概率。
9.根据权利要求1至8中任一项所述的方法,其中,所述获取用于将所述会话状态引导至所述当前目标会话状态的引导会话语句,包括:
从预设的用于将所述会话状态引导至所述当前目标会话状态的引导会话语句集合中,选取至少一引导会话语句。
10.根据权利要求9所述的方法,其中,所述引导会话语句集合是根据历史会话设置,所述引导会话语句集合的设置过程包括:
获取各历史会话中的第二会话方的历史会话语句,其中,所述第二会话方为与所述第一会话方进行对话的会话方;
针对任一历史会话而言,确定该历史会话中的第二会话方的历史会话语句对应的第一会话状态和第二会话状态,其中,所述第二会话方的历史会话语句使该历史会话中的第一会话方的会话语句由第一会话状态跳转至第二会话状态;
针对具有相同第一会话状态和第二会话状态的所有第二会话方的历史会话语句,分别计算各历史会话的动作特征;
根据所述动作特征计算结果,将相应的第二会话方的历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中。
11.根据权利要求10所述的方法,其中,所述计算各历史会话的动作特征,包括:
将所述第二会话方的历史会话语句划分为多个类别;其中,一个类别中的所有历史会话语句表达相同的含义;
针对任一历史会话,根据该历史会话中的第二会话方的历史会话语句所属的类别,设置该历史会话的基于类别的向量,并根据该历史会话中的第二会话状态是否为第一预定会话状态,为该历史会话的向量设置标签;
根据带有标签的向量,确定所述历史会话中的第二会话方的历史会话语句的动作特征。
12.根据权利要求11所述的方法,其中,所述根据带有标签的向量,确定所述历史会话中的第二会话方的历史会话语句的动作特征,包括:
根据带有标签的向量,利用词频逆文本频率指数算法,确定所述历史会话中的第二会话方的历史会话语句的动作特征;
所述根据所述动作特征计算结果,将相应的第二会话方的历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中,包括:
确定通过动作特征最显著的多个历史会话语句将所述第一会话状态引导至第二会话状态的动作概率;
将动作概率最大的至少一个历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中。
13.一种用于实现会话的装置,其中,所述装置包括:
确定会话状态模块,用于确定会话的第一会话方的当前会话语句所属的会话状态;
确定目标会话状态模块,用于根据所述会话状态的下游会话状态,确定所述会话的当前目标会话状态;其中,所述确定目标会话状态模块包括:第三子模块和第四子模块;
所述第三子模块,用于根据预设的会话状态跳转信息集合,确定所述会话状态的所有下游会话状态;
所述第四子模块,用于将所述所有下游会话状态中的一个作为所述会话的当前目标会话状态;
引导控制模块,用于获取用于将所述会话状态引导至所述当前目标会话状态的引导会话语句,并向所述第一会话方提供所述引导会话语句;
第一设置模块,用于利用第一会话方和第二会话方的多个历史会话设置会话状态跳转信息集合;所述第一设置模块包括:
第五子模块,用于确定各历史会话中的所述第一会话方的多个历史会话语句的意图;
第六子模块,用于根据所述第一会话方的多个历史会话语句的意图,确定所述第一会话方的多个历史会话语句所属的会话状态;
第七子模块,用于将任一历史会话中的第一会话方的任一历史会话语句作为待处理历史会话语句,将位于该待处理历史会话语句之前的第一个与该待处理历史会话语句的意图不相同的历史会话语句的意图所属的会话状态,作为该待处理历史会话语句的上游会话状态,将位于该待处理历史会话语句之后的第一个与该待处理历史会话语句的意图不相同的历史会话语句的意图所属的会话状态,作为该待处理历史会话语句的下游会话状态;
第八子模块,用于根据所述第一会话方的多个历史会话语句的上游会话状态和下游会话状态,设置所述会话状态跳转信息集合。
14.根据权利要求13所述的装置,其中,所述确定会话状态模块包括:
第一子模块,用于获取会话的第一会话方的当前会话语句的意图;
第二子模块,用于根据所述意图,确定所述当前会话语句所属的会话状态。
15.根据权利要求13所述的装置,其中,所述第四子模块,包括:
第一单元,用于根据所述会话状态跳转信息集合,确定所述会话状态的预期跳转会话状态;
第二单元,用于若所述预期跳转会话状态为第一预定会话状态,则将所述会话状态的除所述第一预定会话状态之外的其他下游会话状态中的一个作为所述会话的当前目标会话状态。
16.根据权利要求15所述的装置,其中,所述第一单元具体用于:
根据所述会话状态跳转信息集合,获取所述会话状态跳转到各下游会话状态的跳转概率;
将对应跳转概率最大的下游会话状态,作为所述预期跳转会话状态。
17.根据权利要求13所述的装置,其中,所述第四子模块包括:
第三单元,用于根据所述会话状态跳转信息集合,确定所述所有下游会话状态中具有跳转至第二预定会话状态的跳转路径的下游会话状态;
第四单元,用于将所述具有跳转至第二预定会话状态的跳转路径的下游会话状态中的一个作为所述会话的当前目标会话状态。
18.根据权利要求17所述的装置,其中,所述第四单元进一步用于:
根据所述会话状态跳转信息集合,确定所述具有跳转至第二预定会话状态的跳转路径的下游会话状态各自抵达第二预定会话状态的抵达概率;
将对应抵达概率最大的下游会话状态,作为所述会话的当前目标会话状态。
19.根据权利要求13所述的装置,其中,所述第八子模块包括:
第五单元,用于根据所述各历史会话中的第一会话方的多个历史会话语句所属的会话状态以及所述上游会话状态和下游会话状态,对各会话状态分别进行出边数和/或入边数统计;
第六单元,用于根据所述统计结果,为相应的会话状态分别设置会话状态跳转信息。
20.根据权利要求19所述的装置,其中,所述第六单元进一步用于:
对于任一会话状态,若该会话状态的出边数和入边数之和满足预定条件,则设置该会话状态的上游会话状态、下游会话状态以及该会话状态跳转到各下游会话状态的跳转概率。
21.根据权利要求13至20中任一项所述的装置,其中,所述引导控制模块进一步用于:
从预设的用于将所述会话状态引导至所述当前目标会话状态的引导会话语句集合中,选取至少一引导会话语句。
22.根据权利要求21所述的装置,其中,所述装置还包括:第二设置模块,用于根据历史会话设置引导会话语句集合,所述第二设置模块包括:
第九子模块,用于获取各历史会话中的第二会话方的历史会话语句,其中,所述第二会话方为与所述第一会话方进行对话的会话方;
第十子模块,用于针对任一历史会话而言,确定该历史会话中的第二会话方的历史会话语句对应的第一会话状态和第二会话状态,其中,所述第二会话方的历史会话语句使该历史会话中的第一会话方的会话语句由第一会话状态跳转至第二会话状态;
第十一子模块,用于针对具有相同第一会话状态和第二会话状态的所有第二会话方的历史会话语句,分别计算各历史会话的动作特征;
第十二子模块,用于根据所述动作特征计算结果,将相应的第二会话方的历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中。
23.根据权利要求22所述的装置,其中,所述第十一子模块包括:
第七单元,用于将所述第二会话方的历史会话语句划分为多个类别;其中,一个类别中的所有历史会话语句表达相同的含义;
第八单元,用于针对任一历史会话,根据该历史会话中的第二会话方的历史会话语句所属的类别,设置该历史会话的基于类别的向量,并根据该历史会话中的第二会话状态是否为第一预定会话状态,为该历史会话的向量设置标签;
第九单元,用于根据带有标签的向量,确定所述历史会话中的第二会话方的历史会话语句的动作特征。
24.根据权利要求23所述的装置,其中,所述第九单元进一步用于:
根据带有标签的向量,利用词频逆文本频率指数算法,确定所述历史会话中的第二会话方的历史会话语句的动作特征;
所述第十二子模块进一步用于:
确定通过动作特征最显著的多个历史会话语句将所述第一会话状态引导至第二会话状态的动作概率;
将动作概率最大的至少一个历史会话语句设置于用于将所述第一会话状态引导至所述第二会话状态的引导会话语句集合中。
25.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-12中任一项所述的方法。
26.一种电子设备,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911179972.0A CN110941710B (zh) | 2019-11-27 | 2019-11-27 | 用于实现会话的方法、装置、介质以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911179972.0A CN110941710B (zh) | 2019-11-27 | 2019-11-27 | 用于实现会话的方法、装置、介质以及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110941710A CN110941710A (zh) | 2020-03-31 |
CN110941710B true CN110941710B (zh) | 2020-10-30 |
Family
ID=69908269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911179972.0A Active CN110941710B (zh) | 2019-11-27 | 2019-11-27 | 用于实现会话的方法、装置、介质以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110941710B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111753074B (zh) * | 2020-06-30 | 2021-08-17 | 贝壳找房(北京)科技有限公司 | 用于实现会话的方法、装置、介质和电子设备 |
CN111931494B (zh) | 2020-08-10 | 2022-06-28 | 北京字节跳动网络技术有限公司 | 用于生成预测信息的方法、装置、电子设备和介质 |
CN115473866B (zh) * | 2022-09-14 | 2024-07-05 | 康键信息技术(深圳)有限公司 | 一种会话管理方法、系统、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335400A (zh) * | 2014-07-22 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 针对用户的提问意图获取答案信息的方法及装置 |
CN105931638A (zh) * | 2016-04-26 | 2016-09-07 | 北京光年无限科技有限公司 | 面向智能机器人的对话系统数据处理方法及装置 |
CN106503030A (zh) * | 2015-09-03 | 2017-03-15 | 卡西欧计算机株式会社 | 对话控制装置、对话控制方法 |
CN106559321A (zh) * | 2016-12-01 | 2017-04-05 | 竹间智能科技(上海)有限公司 | 动态调整对话策略的方法及系统 |
CN108415932A (zh) * | 2018-01-23 | 2018-08-17 | 苏州思必驰信息科技有限公司 | 人机对话方法及电子设备 |
CN109710772A (zh) * | 2018-11-13 | 2019-05-03 | 国云科技股份有限公司 | 一种基于深度学习的问答库知识管理系统及其实现方法 |
CN109977208A (zh) * | 2019-03-22 | 2019-07-05 | 北京中科汇联科技股份有限公司 | 一种融合faq和任务及主动引导的对话系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110072847A (ko) * | 2009-12-23 | 2011-06-29 | 삼성전자주식회사 | 열려진 사용자 의도 처리를 위한 대화관리 시스템 및 방법 |
CN105094315B (zh) * | 2015-06-25 | 2018-03-06 | 百度在线网络技术(北京)有限公司 | 基于人工智能的人机智能聊天的方法和装置 |
CN106649404B (zh) * | 2015-11-04 | 2019-12-27 | 陈包容 | 一种会话场景数据库的创建方法及装置 |
-
2019
- 2019-11-27 CN CN201911179972.0A patent/CN110941710B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335400A (zh) * | 2014-07-22 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 针对用户的提问意图获取答案信息的方法及装置 |
CN106503030A (zh) * | 2015-09-03 | 2017-03-15 | 卡西欧计算机株式会社 | 对话控制装置、对话控制方法 |
CN105931638A (zh) * | 2016-04-26 | 2016-09-07 | 北京光年无限科技有限公司 | 面向智能机器人的对话系统数据处理方法及装置 |
CN106559321A (zh) * | 2016-12-01 | 2017-04-05 | 竹间智能科技(上海)有限公司 | 动态调整对话策略的方法及系统 |
CN108415932A (zh) * | 2018-01-23 | 2018-08-17 | 苏州思必驰信息科技有限公司 | 人机对话方法及电子设备 |
CN109710772A (zh) * | 2018-11-13 | 2019-05-03 | 国云科技股份有限公司 | 一种基于深度学习的问答库知识管理系统及其实现方法 |
CN109977208A (zh) * | 2019-03-22 | 2019-07-05 | 北京中科汇联科技股份有限公司 | 一种融合faq和任务及主动引导的对话系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110941710A (zh) | 2020-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12014379B2 (en) | Automating communications using an intent classifier | |
CN110941710B (zh) | 用于实现会话的方法、装置、介质以及电子设备 | |
US11676067B2 (en) | System and method for creating data to train a conversational bot | |
US11928611B2 (en) | Conversational interchange optimization | |
US20200410506A1 (en) | Matching a customer and customer representative dynamically based on a customer representative's past performance | |
US20220229993A1 (en) | Context tag integration with named entity recognition models | |
US11544721B2 (en) | Supporting automation of customer service | |
US11443115B2 (en) | Machine learning from tone analysis in online customer service | |
US11551143B2 (en) | Reinforcement learning for chatbots | |
US10643601B2 (en) | Detection mechanism for automated dialog systems | |
CN110574104A (zh) | 自动助理数据流 | |
US11210677B2 (en) | Measuring the effectiveness of individual customer representative responses in historical chat transcripts | |
CN111125326A (zh) | 用于实现人机对话的方法、装置、介质以及电子设备 | |
US11775894B2 (en) | Intelligent routing framework | |
US20230100508A1 (en) | Fusion of word embeddings and word scores for text classification | |
US11823082B2 (en) | Methods for orchestrating an automated conversation in one or more networks and devices thereof | |
WO2022115736A1 (en) | Distance-based logit values for natural language processing | |
CN114223188A (zh) | 用于管理交互邀请的系统和方法 | |
CN112989046A (zh) | 实时话术预判方法、装置、计算机设备和存储介质 | |
CN117157643A (zh) | 利用知识蒸馏的ai nlp编码器的域自适应 | |
CN111753074B (zh) | 用于实现会话的方法、装置、介质和电子设备 | |
CN111966805B (zh) | 用于辅助实现会话的方法、装置、介质以及电子设备 | |
CN111931507A (zh) | 获取用于实现会话的多元组集合方法、装置、介质及设备 | |
CN116204624A (zh) | 应答方法、装置、电子设备及存储介质 | |
CN115048517A (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200508 Address after: 100085 Floor 102-1, Building No. 35, West Second Banner Road, Haidian District, Beijing Applicant after: Seashell Housing (Beijing) Technology Co.,Ltd. Address before: 300 457 days Unit 5, Room 1, 112, Room 1, Office Building C, Nangang Industrial Zone, Binhai New Area Economic and Technological Development Zone, Tianjin Applicant before: BEIKE TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |