专利名称:基于会话树的智能在线客服方法及系统的制作方法
技术领域:
本发明涉及人机交互领域,特别是涉及一种以自然语言文本为媒介的、应用于网络辅助销售的智能在线客服方法及系统。
背景技术:
网商企业与终端客户省去中间环节而直接接触的扁平化营销模式是网络经济和电子商务的显著特征。当前一些大型电子商务网站、网络娱乐平台、在线社交网络拥有庞大的用户群,在服务高峰期同时在线用户数巨大。传统的人工销售与客服在面对巨大客户群时,显得力不从心,无法为客户提供及时的、高质量的在线业务咨询、业务引导与产品销售等方面的服务,需要开发基于人机自动会话技术的智能在线客服系统来分担人工压力,解决目前人工销售与客服所面临的困境。
现有的智能在线客服系统主要采用“常见问答库(Frequently Asked Questions,FAQ)+问句匹配技术”的方法,如365webcall、365W0S智能客服平台、移动在线客服小e等。这种方法以客户提问和系统自动回答为基本形式,以“一问一答”为基本会话单位,每轮问答之间是完全无关的,没有利用上下文信息,客户的每次咨询(可能含多轮问答)是由多个相互之间无联系的“一问一答”构成。而通常在客户服务中,客户的一次咨询过程往往是一个围绕某一主题展开的语义连贯的会话过程。这样一个过程一般由开场白、话题引入、话题展开、话题结束几个环节构成。开场白一般是问候语,话题引入可以是客户针对产品信息或服务内容的咨询,也可以是销售方对产品或服务的主动介绍,话题展开阶段客户继续就自己感兴趣的信息发话,销售方则通过介绍产品或服务能给顾客带来的利益,激发顾客的购买欲望,话题结束阶段以客户决定购买产品或服务,或者以销售终止结束。现有方法和系统没有利用上下文信息,造成会话过程中语义不连贯,自动回答的准确率不高,对于客户来说这样的咨询过程自然度不够,客户体验不佳。因此现有方法与系统存在缺陷,需要改进。
发明内容
本发明要解决的技术问题是如何在在线自动客服中利用会话的上下文信息,实现较高自然度的人机对话,从而实现智能化的在线业务咨询、业务引导与产品销售等服务。为解决以上技术问题,本发明提供一种基于会话树的智能在线客服方法,包括以下步骤
在线客户登录客户端;
服务器端向客户端自动发送问候语;
在线客户输入并向服务器端发送话语;
服务器端搜索销售知识库,获取回复话语并发送给客户端,其中销售知识库的逻辑结构是树状的,称为会话树;反复执行以上两步骤,直至在线客户关闭客户端。所述问候语和话语的形式均为 自然语言文本。以上所述的会话树,会话树根结点为问候语结点,会话树由多棵场景子树构成。以上所述的场景子树,其特征在于,每一棵场景子树由多个会话进程构成,会话进程是一个从场景子树根结点到叶子结点的结点序列。以上所述的会话树,其特征在于,会话树的结点分为“客户话语”结点和“机器人话语”结点。所述的“客户话语”结点,其特征在于,每一结点对应一个自然语言句子。所述的“机器人话语”结点,其特征在于,每一结点对应多个同义的自然语言句子。所述搜索销售知识库,获取回复话语并发送给客户端,包括以下步骤
若当前机器人结点为空,置问候语结点为当前机器人结点;
将客户话语与当前机器人结点的每一子结点(均为客户话语结点)对应的自然语言句子进行匹配,选择匹配度最高的结点并置为当前客户结点;
置当前客户结点的子结点为当前机器人结点;
从当前机器人结点对应的多个同义的自然语言句子中随机选取一个作为回复话语; 将回复话语发送到客户端。以上所述的自然语言句子匹配采用无需分词的、基于公共最大子串的句子匹配方法。另外,本发明提供一种基于会话树的智能在线客服系统,包括
服务器端模块,用于提供自动会话功能及其它系统管理功能。客户端模块,用于与服务器端建立连接,并为在线客户提供会话界面。数据存储模块,用于存储销售知识库和会话日志库。以上所述的服务器端模块,包括
接口单元,用于与所述客户端模块建立会话连接,并认证在线客户身份。会话队列管理单元,用于接收所述接口单元发出的会话请求,以队列形式保存并根据会话线程繁忙程度分发会话任务,并返回会话线程获得的回复话语。会话线程管理单元,用于管理所述线程连接(建立、删除、分配连接ID)。会话单元处理会话建立、会话删除请求,标记会话上下文信息,搜索所述销售知识库,获取回复话语。日志管理单元记录每次会话中客户端与服务器端交互的话语,并以独立会话的形式写入会话日志库。以上所述的数据存储模块
其存储的销售知识库是特定销售领域的会话树。其存储的会话日志库包括所述在线客户与所述服务器端模块的所有会话记录。本发明提供一种智能在线客服方法及系统,其创新性在于采用基于智能会话树的自动会话模式。这样一种模式使得自动客服过程更接近人与人之间的“会话”,而不是人与机器之间的“问答”,大大提高了在线客户咨询过程的自然度,能给客户带来更好的体验。同时这种模式可以实现带目的性的业务引导功能,从而提升网商企业的销售业绩。
图I为智能在线客服流程框图。图2为会话树结构示意图。图3为销售知识库搜索流程图。图4为智能在线客服系统结构图。图5为可实现本发明的网络系统。图6为实施例会话树。
具体实施例方式为更好理解本发明的技术方案,以下结合附图和实施例,对本发明的技术方案做进一步的详细描述。 图I是本发明所述智能在线客户服务流程框图。首先,网上产品/服务的潜在消费者通过运行客户端登录系统,客户端形式可以是传统的Client客户端,也可以是Web客户端。服务器端在检测到客户登录后,自动发送一条自然语言形式的问候话语向客户打招呼。然后客户和服务器就产品/服务展开“会话”,直到客户关闭客户端。客户和服务器进行“会话”的信息载体是自然语言文本。针对客户的每次发话,服务器根据会话的进程和上下文信息去搜索销售知识库,获取回复话语。本发明所述销售知识库,不同于目前已有智能在线客服平台的线性FAQ结构。它的逻辑结构是树状的,称为会话树。本发明的核心是利用会话树来对会话过程中的上下文信息进行建模与利用,从而实现较高自然度的人机会话,改善用户体验,提升网商企业的销售业绩。图2是会话树结构示意图。会话树的根结点是问候语结点,对应多条问候语,当需发送问候语时,随机选择一条,这样客户每次登录收到的问候语不是固定的,可提高自然度。问候语结点的每一子结点及其对应的子树代表一个会话场景,称为场景子树。每一场景子树对客服过程中的一种典型会话场景进行建模。每一棵场景子树又由多个会话进程构成,会话进程是一个从场景子树根结点到叶子结点的结点序列,这个结点序列上“客户话语”结点和“机器人话语”结点交替出现,用于反映客户和服务器会话过程中交替发话。其中“客户话语”结点代表客户发话,对应一条典型的自然语言句子,“机器人话语”结点代表服务器发话,对应多条典型的语义类似的自然语言句子。“机器人话语”结点之所以对应多条句子,是为了使相同情景下服务器的回复话语不单一,可改善客户体验。在特定应用领域,常见的会话场景和所有可能的会话进程是基本不变的。对于会话树的构建,可采用知识挖掘技术与机器学习算法。可通过对海量人工会话数据的聚类分析与关联挖掘,获取常见的会话场景和所有可能的会话进程,同时设计迭代学习算法来自动构建会话树,并采用增量式数据挖掘方法实现会话树的动态维护。具体的实现技术可根据应用领域和实施例确定。图3是销售知识库的搜索流程图。在线客户登录后,首先置当前机器人结点为问候语结点,并发送问候语。然后根据客户的第一条话语确定会话场景,具体是将客户的第一条话语与问候语结点的每一子结点(均为场景子树根结点)对应的自然语言句子进行匹配,选择匹配度最高的结点并置为当前客户结点,这时候进入该结点对应的会话场景。在后续会话中,反复执行如下搜索步骤置当前客户结点的子结点为当前机器人结点;从当前机器人结点对应的多个同义的自然语言句子中随机选取一个作为回复话语;将回复话语发送到客户端;将客户话语与当前机器人结点的每一子结点对应的自然语言句子进行匹配,选择匹配度最高的结点并置为当前客户结点。本发明为提高运算效率,所述的自然语言句子匹配,采用无需分词的、基于公共最大子串的句子匹配方法,具体来说就是寻找两个句子的公共最大子串,然后取公共最大子串与句子长度的比值作为两个句子的匹配度。这种算法的时间和空间复杂性低,也可满足系统的精度要求。图4是智能在线客服系统结构图,包括服务器端模块、客户端模块、数据存储模块。(I)客户端模块用于向服务器端发起、建立连接,并为在线客户提供会话界面。(2)服务器端模块用于提供自动会话功能及其它系统管理功能,又包括接口单元,用于与所述客户端模块建立会话连接,并认证在线客户身份,接口单元的实现可以采用动态库,或者WebService等形式;会话队列管理单元,用于接收所述接口单元发出的会话请求,以队列形式保存并根据会话线程繁忙程度分发会话任务,并返回会话线程获得的回复话语,具体开多少个线程可以根据系统的客户连接数和服务器性能来确定;会话线程管理单元,用于管理所述线程连接的建立、线程连接的删除、线程连接的状态监控、并为线程连接分配连接ID ;会话单元是核心功能单元,主要功能有处理会话建立、会话删除请求,标记会话上下文信息,搜索所述销售知识库,获取回复话语,其中搜索销售知识库的算法流程可见图3 ; 日志管理单元记录每次会话中客户端与服务器端交互的话语,并以独立会话的形式写入会话日志库。所谓独立会话的形式是指某一在线客户与服务器的一次完整对话,即从服务器发送问候语开始直到客户退出客户端这一过程中的每一轮话语。这些会话日志可以进行后续分析,用于评判会话效果和对会话树进行改进。(3)数据存储模块用于存储销售知识库和会话日志库,其中存储的销售知识库是特定销售领域的会话树,存储的会话日志库包括在线客户与服务器端模块的所有会话记录。会话树用3张表存储在关系数据库中,包括node表(存放结点信息)、edge表(存放边信息)、content表(存放结点对应的自然语言句子)。实施例一
本实施例涉及一个网络视频社交平台的VIP会员销售。图5是本实施例的网络系统结构图。在线客户在自己机器上运行Client端程序,通过TCP/IP与会话服务器建立连接,一台计算机可支持多个并发会话请求。会话服务器上的每个服务程序可同时支持多个TCP/IP链接,会话服务器可并行部署多台。本实施例销售知识库内容从海量的人工销售会话数据中挖掘获得,具有可靠性、实用性、动态性、及时性。首先对海量人工会话数据进行切分、整理、标注,进行聚类分析与关联挖掘,获取常见的会话场景和所有可能的会话进程;然后通过设计迭代学习算法来自动构建会话树。在会话树使用过程中,需要不断对其进行维护,本实施例通过设计增量式数据挖掘算法,实现智能会话树的动态更新与优化升级。具体步骤如下
步骤一人工会话数据预处理
收集、整理VIP会员销售领域中人工销售与客户之间的真实会话数据。首先利用分词工具对其进行分词,并统计出现的词语及其词频。一方面,从这个词表中人工挑选该领域的特殊噪声词,加入通用噪声词表形成适用于该领域的噪声词表;另一方面,根据词频从这个词表中人工整理该领域的关键词表,作为该领域语料的特征词,在后续处理中将赋予较高权值。然后,以销售人员与客户的一次完整真实会话为基本单位,根据噪声词表过滤掉噪声,提取其属性,如发话的时间属性,采用TF-IDF算法获取特征词及其权重(特征向量),对语料进行标注。步骤二 挖掘会话场景
以完整会话为基本聚类单位,通过以上预处理方法获取其特征向量,采用向量空间模型计算聚类单位之间的语义距离,采用蚁群与凝聚结合的算法对数据进行聚类。具体包括如下步骤a)将作为搜索空间的二维网格改造为类三维网格,使得蚁群在放置物体(文本对象)时可以叠加,以产生紧凑的大类簇;b)将蚁群算法的迭代过程划分为若干阶段,每个阶段完成后采用层次凝聚法对当前语义近似的小类簇进行合并,这样可加速从局部最优解中跳出,加快算法收敛速度;c)设计一个评估函数,根据一个物体(文本对象)已被拾取的次数及当前邻域内物体与该物体的平均相似度来决定蚂蚁是继续拾取该物体还是舍弃它。步骤三挖掘会话进程片段
以上聚类得到的类簇是语义内聚的,可作为会话场景。每一会话场景是一个会话集合,从会话内容方面来看,它们谈论的是同一主题,但每次会话的进程和结果可能是不同的,然而所有的可能情况是有限的。本实施例针对每一类簇,采用时序Apriori关联规则挖掘算法挖掘关联,并将挖掘出的每一关联作为一个抽象的会话进程片段。步骤四构建会话树
以上时序关联规则挖掘算法获得的是抽象的会话片段,如何将会话片段组合成树状结构也是一个比较复杂的问题。关联规则都有前件和后件,在我们获得的关联规则中,前件和后件均是关键词的集合,采用特征向量距离计算方法,如余弦相似度方法计算关键词集合之间的语义距离,通过设置合理阈值实现前件和后件的匹配操作。本实施例在此基础上,设计迭代学习算法,首先将获得的关联规则按时间属性进行排列,并按时间先后进行预装配,装配的准则是第I个关联规则的后件和第2个关联规则的前件是匹配的。然后在真实数据中进行验证,反复执行以上操作,直到装配结果稳定,形成会话树。当然以上自动形成的会话树不一定完全合理,在后期可以人工参与对其进行修正。步骤五维护会话树
采用数据挖掘构建的会话树,应该根据使用过程发现的问题,如回答不准确、过渡不自然等,进行动态更新与维护,以实现更好的会话效果。为实现这一目的,通过对新产生的自动会话数据的分析和整理,本实施例采用增量式挖掘方法即FUP算法,来优化会话树的结构和内容。 本实施例共包含15个会话场景,其中最后两个场景是特别设置的用于处理特殊情况,会话树的片段见图6。基于此会话树,一次会话实例如下
客服平台你好,帅锅!一(问候语)
在线客户能把你的QQ号码发给我吗?——(匹配场景2根结点)
客服平台嘿嘿!你要升级VIP的话,就告诉你!
在线客户多少钱啊?
客服平台包年200元内含10万点欢乐币,并送6位靓号哦
在线客户怎么办的啊?
客服平台找下平台代理就可以办理拉 在会话过程中,还有一些情况可能出现。一是可能会遇到喋喋不休喜欢将话题扯远的在线客户,客户的话语与销售主题无关,不属于任何销售场景,这时应尽快把话题拉回到产品销售上来。另一可能情况是客户没有离线但话题冷场,客户长时间不说话,这时候销售方应该主动重新挑起话题,重新引起客户兴趣或注意,如提出产品或服务可以为客户省钱、赚钱或产品的趣味性。为了应对客户偏离销售主题的情况,实施例会话树中特别设置一个“非常规场景”,客户话语无法匹配的时候默认为偏离销售主题,此时进入“非常规场景”,客服平台采用一定引导话语,尽量将话题拉回到产品销售上来。对于客户长时间(可设置一个具体时间)不说话的情况,设置“长时间无回应场景”,客服平台主动发话,以期重新引起客户兴趣或注意。以上对本发明所提供的一种基于会话树的智能在线客服方法及系统进行了详细介绍,并结合具体实施例对本发明的原理和实施方式进行了阐述。需进一步说明的是,对本领域的普通技术人员来说,可以根据以上描述对本发明的方法和系统加以改进或者变化,但所有这些改进或者变化都应属于本发明所附权利要求的保护范围。
权利要求
1.一种基于会话树的智能在线客服方法,其特征在于包括以下步骤 1-1.在线客户登录客户端; 1-2.服务器端向客户端自动发送问候语; 1-3.在线客户输入并向服务器端发送话语; 1-4.服务器端搜索销售知识库,获取回复话语并发送给客户端;所述销售知识库的逻辑结构是树状的,称为会话树; 1-5.反复执行步骤1-3到1-4,直至在线客户关闭客户端。
2.根据权利要求I所述的方法,其特征在于所述问候语和话语的形式均为自然语言文本。
3.根据权利要求I所述的方法,其特征在于会话树根结点为问候语结点,会话树由多棵场景子树构成。
4.根据权利要求3所述的方法,其特征在于每一棵场景子树由多个会话进程构成,会话进程是一个从场景子树根结点到叶子结点的结点序列。
5.根据权利要求I所述的方法,其特征在于会话树的结点分为客户话语结点和机器人话语结点;所述客户话语结点中的每一结点对应一个自然语言句子;所述机器人话语结点中的每一结点对应多个同义的自然语言句子。
6.根据权利要求I所述的方法,其特征在于所述搜索销售知识库,获取回复话语并发送给客户端,包括以下步骤 6-1.若当前机器人结点为空,置问候语结点为当前机器人结点; 6-2.将客户话语与当前机器人结点的每一子结点对应的自然语言句子进行匹配,选择匹配度最高的结点并置为当前客户结点; 6-3.置当前客户结点的子结点为当前机器人结点; 6-4.从当前机器人结点对应的多个同义的自然语言句子中随机选取一个作为回复话语; 6-5.将回复话语发送到客户端。
7.根据权利要求6所述的方法,其特征在于自然语言句子匹配采用无需分词的、基于公共最大子串的句子匹配方法。
8.一种基于会话树的智能在线客服系统,其特征在于包括 服务器端模块,用于提供自动会话功能及其它系统管理功能; 客户端模块,用于与服务器端建立连接,并为在线客户提供会话界面; 数据存储模块,用于存储销售知识库和会话日志库。
9.根据权利要求8所述的系统,其特征在于服务器端模块包括 接口单元,用于与所述客户端模块建立会话连接,并认证在线客户身份; 会话队列管理单元,用于接收所述接口单元发出的会话请求,以队列形式保存并根据会话线程繁忙程度分发会话任务,并返回会话线程获得的回复话语; 会话线程管理单元,用于管理线程连接; 会话单元处理会话建立、会话删除请求,标记会话上下文信息,搜索销售知识库,获取回复话语; 日志管理单元记录每次会话中客户端与服务器端交互的话语,并以独立会话的形式写入会话日志库。
10.根据权利要求8所述的系统,其特征在于数据存储模块中存储的销售知识库是销售领域的会话树;存储的会话日志库包括在线客户与服务器端模块的所有会话记录。
全文摘要
本发明提供一种基于会话树的智能在线客服方法及系统。该方法包括以下步骤在线客户登录客户端;服务器端向客户端自动发送问候语;在线客户输入并向服务器端发送话语;服务器端搜索销售知识库,获取回复话语并发送给客户端;反复执行以上两步骤,直至在线客户关闭客户端。本发明还提供一种基于会话树的智能在线客服系统,包括服务器端模块,用于提供自动会话功能及其它系统管理功能;客户端模块,用于与服务器端建立连接,并为在线客户提供会话界面;数据存储模块,用于存储销售知识库和会话日志库。本发明使得自动客服过程更接近人与人之间的会话,而不是人与机器之间的问答,可大大提高在线客户咨询过程的自然度,给客户带来更好的体验。
文档编号G06Q30/02GK102868695SQ20121034660
公开日2013年1月9日 申请日期2012年9月18日 优先权日2012年9月18日
发明者周建政, 王荣波, 谌志群, 傅政军, 朱文华, 姚金良, 黄孝喜, 黄金海, 严峻杰, 周渝清, 陆蓓 申请人:天格科技(杭州)有限公司, 杭州达言科技有限公司