首页 / 专利库 / 人工智能 / 对话代理 / 聊天机器人 / 一种聊天机器人系统及自动聊天方法

一种聊天机器人系统及自动聊天方法

阅读:312发布:2020-11-12

专利汇可以提供一种聊天机器人系统及自动聊天方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种 聊天 机器人 系统,该系统包括分发 服务器 和至少两个机器人服务器,其中:分发服务器,用于接收用户语句,并根据负载均衡原理将用户语句分发到相应的机器人服务器;机器人服务器,用于响应于用户语句向用户自动反馈答复。本发明还公开了一种自动聊天的方法。应用本发明以后,可以支持海量用户,系统可扩展性也得到了提高,并且反馈答复也具有个性化。另外,本发明使得机器人服务器更加便于理解自然语言和执行逻辑推理。,下面是一种聊天机器人系统及自动聊天方法专利的具体信息内容。

1、一种聊天机器人系统,其特征在于,该系统包括分发服务器和至少两个 机器人服务器,其中:
分发服务器,用于接收用户语句,并根据负载均衡原理将用户语句分发到 相应的机器人服务器;
机器人服务器,用于响应于用户语句向用户自动反馈答复。
2、根据权利要求1所述的聊天机器人系统,其特征在于,所述分发服务器 的数目至少为两个,该系统进一步包括重定向服务器;
重定向服务器,用于接收用户会话,并根据该用户的属性信息,将用户会 话重定向到与所述属性信息相匹配的分发服务器;
所述与属性信息相匹配的分发服务器,用于接收该用户会话的用户语句, 并根据负载均衡原理将用户语句分发到相应的机器人服务器。
3、根据权利要求2所述的聊天机器人系统,其特征在于,所述用户的属性 信息包括用户的IP地址和/或客户端帐号。
4、根据权利要求1所述的聊天机器人系统,其特征在于,所述分发服务器 的数目至少为两个,该系统进一步包括重定向服务器;
重定向服务器,用于接收用户会话,并根据负载均衡原理将用户语句分发 到相应的分发服务器;
分发服务器,用于接收该用户会话的用户语句,并根据负载均衡原理将用 户语句分发到相应的机器人服务器。
5、根据权利要求1所述的聊天机器人系统,其特征在于,所述机器人服务 器包括:
语句目的识别单元,用于识别用户语句为格式化语句还是非格式化语句;
格式化语言执行单元,用于当语句目的识别单元识别出用户语句为格式化 语句时,执行所述格式化语句;
自然语言理解单元,用于当语句目的识别单元识别出用户语句为非格式化 语句时,对用户语句进行自然语言理解以确定语句属性;
用户属性管理单元,用于管理用户的属性信息;
推理引擎单元,用于加载知识库,并根据所述语句属性和用户属性信息在 知识库中进行模式匹配,确定匹配的反馈答复。
6、根据权利要求5所述的聊天机器人系统,其特征在于,所述用户的属性 信息包括:用户的姓名、用户的性别、用户所在城市、用户爱好中的任一个或者 多于一个的任意组合。
7、根据权利要求5所述的聊天机器人系统,其特征在于,
所述自然语言理解单元,用于对用户语句执行下列操作中的任一个或者多 于一个的任意组合以确定语句属性:
分词;
问句主干提取;
问句类型判断;
话题判断。
8、根据权利要求5所述的聊天机器人系统,其特征在于,所述机器人服务 器进一步包括备用推理引擎单元,用于当知识库更新时加载更新的知识库,并 在加载完更新的知识库后与所述推理引擎单元转换功能。
9、根据权利要求5所述的聊天机器人系统,其特征在于,该系统进一步包 括学习服务器,所述知识库位于学习服务器中;
学习服务器,用于记录用户对话,并将用户对话转化为知识库文件格式后 保存在知识库中。
10、根据权利要求9所述的聊天机器人系统,其特征在于,该系统进一步 包括审核服务器,
审核服务器,用于根据预先设置的知识审核规则对用户对话进行审核,并 仅将通过审核的用户对话发送到学习服务器。
11、根据权利要求9所述的聊天机器人系统,其特征在于,所述知识库文 件格式包括问题部分和应答部分,
问题部分以问句主干的方式保存,应答部分以完整保留的方式保存。
12、根据权利要求11所述的聊天机器人系统,其特征在于,所述格式化语 言执行单元包括:信息查询模、对话教育模块和游戏模块中的任一个或者多 于一个的任意组合,其中:
信息查询模块,用于确定信息查询类的格式化语句的反馈答复;
对话教育模块,用于确定对话教育类的格式化语句的反馈答复;
游戏模块,用于确定游戏类的格式化语句的反馈答复。
13、根据权利要求1所述的聊天机器人系统,其特征在于,
分发服务器,用于通过以下通讯方式中的任一种或者多于一种的任意组合 接收用户语句:
通过即时通讯方式接收用户语句;
通过电子邮件方式接收用户语句;
通过短消息方式接收用户语句。
14、根据权利要求1所述的聊天机器人系统,其特征在于,
分发服务器,用于通过以下通讯方式中的任一种或者多于一种的任意组合 向用户自动反馈答复:
通过即时通讯方式接收用户语句;
通过电子邮件方式接收用户语句;
通过短消息方式接收用户语句。
15、根据权利要求9所述的聊天机器人系统,其特征在于,该系统进一步 包括控制服务器,
所述控制服务器,用于向机器人服务器和学习服务器发送知识库更新切换 指令;
学习服务器,用于在收到知识库更新切换指令后,将积攒的用户对话转化 为知识库文件格式以更新知识库;
机器人服务器中的备用推理引擎单元,用于在收到知识库更新切换指令后, 加载更新的知识库,并在加载完更新的知识库后和所述推理引擎单元转换功能。
16、根据权利要求15所述的聊天机器人系统,其特征在于,控制服务器定 时向机器人服务器和学习服务器发送知识库更新切换指令;或
控制服务器在用户对话积攒到预定程度时向机器人服务器和学习服务器发 送知识库更新切换指令。
17、一种自动聊天方法,其特征在于,该方法包括:
A、分发服务器接收用户语句,并根据负载均衡原理将用户语句分发到相 应的机器人服务器;
B、机器人服务器响应于用户语句向用户自动反馈答复。
18、根据权利要求17所述的自动聊天方法,其特征在于,该方法在步骤A 前进一步包括:接收用户会话请求,并根据用户的属性信息,将用户会话重定 向到与所述属性信息相匹配的分发服务器;
分发服务器接收该用户会话的用户语句,并根据负载均衡原理将用户语句 分发到相应的机器人服务器。
19、根据权利要求17所述的自动聊天方法,其特征在于,该方法在步骤A 前进一步包括:接收用户会话,并根据负载均衡原理将用户语句分发到相应的 分发服务器;
分发服务器接收该用户会话的用户语句,并根据负载均衡原理将用户语句 分发到相应的机器人服务器。
20、根据权利要求17-19中任一项所述的自动聊天方法,其特征在于,所 述用户语句为聊天语句、信息查询问句、对话教育语句或格式化命令。

说明书全文

技术领域

发明涉及人工智能领域,更具体地说,本发明涉及一种聊天机器人系 统及自动聊天方法。

背景技术

近些年来,人们之间的通讯手段日益丰富。即时通信工具、手机短信等 通讯手段日渐行。基于这些通讯手段,除了实现人与人之间的沟通交流外, 也使得人与人工智能系统之间的沟通交流成为可能。
聊天机器人系统就是一种借助于通讯手段能够时时刻刻在线、并通过自 然语言与人沟通交流的人工智能系统。除了聊天功能外,聊天机器人系统还 可以拥有众多的增值服务,例如天气查询、地图查询、生活信息查询、计算 器、词典等,甚至还可以与人一起作游戏。聊天机器人系统实质上是一种自 动问答系统。自动问答系统以自然语言理解技术为核心,涉及到计算语言学、 信息科学和人工智能等多学科,是计算机应用研究的热点之一。自然语言 理解是人工智能领域中的一个重要研究方向,它使计算机能够理解和运用人 类的自然语言,可以理解用户的谈话内容或者查询意图,实现人与计算机之 间基于自然语言的有效沟通。
聊天机器人利用自然语言处理技术、知识库和实时更新的信息资源,一 方面完成对用户问题的分析处理,另一方面完成正确答案的生成。
目前现有技术中有一种聊天机器人系统,包含通讯模、查询服务器、 游戏服务器、人工智能服务器及相应的数据库。在这种聊天机器人系统中, 采用数据库作为知识点的记载方式,用户通过即时通讯平台或短信平台与聊 天机器人进行各种对话。
然而,现有技术的这种聊天机器人系统架构缺乏信息分发机制,在支持 海量用户时会遇到较大的困难,因此这种系统架构的可扩展性差。

发明内容

有鉴于此,本发明的主要目的是提出一种聊天机器人系统,以满足海量 用户,提高可扩展性。
本发明的另一目的是提出一种聊天机器人系统的实现方法,以满足海量 用户,提高可扩展性。
为达到上述目的,本发明的技术方案是这样实现的:
一种聊天机器人系统,该系统包括分发服务器和至少两个机器人服务 器,其中:
分发服务器,用于接收用户语句,并根据负载均衡原理将用户语句分发 到相应的机器人服务器;
机器人服务器,用于响应于用户语句向用户自动反馈答复。
所述分发服务器的数目至少为两个,该系统进一步包括重定向服务器;
重定向服务器,用于接收用户会话,并根据该用户的属性信息,将用户 会话重定向到与所述属性信息相匹配的分发服务器;
所述与属性信息相匹配的分发服务器,用于接收该用户会话的用户语 句,并根据负载均衡原理将用户语句分发到相应的机器人服务器。
所述用户的属性信息包括用户的IP地址和/或客户端帐号。
所述分发服务器的数目至少为两个,该系统进一步包括重定向服务器;
重定向服务器,用于接收用户会话,并根据负载均衡原理将用户语句分 发到相应的分发服务器;
分发服务器,用于接收该用户会话的用户语句,并根据负载均衡原理将 用户语句分发到相应的机器人服务器。
所述机器人服务器包括:
语句目的识别单元,用于识别用户语句为格式化语句还是非格式化语 句;
格式化语言执行单元,用于当语句目的识别单元识别出用户语句为格式 化语句时,执行所述格式化语句;
自然语言理解单元,用于当语句目的识别单元识别出用户语句为非格式 化语句时,对用户语句进行自然语言理解以确定语句属性;
用户属性管理单元,用于管理用户的属性信息;
推理引擎单元,用于加载知识库,并根据所述语句属性和用户属性信息 在知识库中进行模式匹配,确定匹配的反馈答复。
所述用户的属性信息包括:用户的姓名、用户的性别、用户所在城市、 用户爱好中的任一个或者多于一个的任意组合。
所述自然语言理解单元,用于对用户语句执行下列操作中的任一个或者 多于一个的任意组合以确定语句属性:
分词;
问句主干提取;
问句类型判断;
话题判断。
所述机器人服务器进一步包括备用推理引擎单元,用于当知识库更新时 加载更新的知识库,并在加载完更新的知识库后与所述推理引擎单元转换功 能。
该系统进一步包括学习服务器,所述知识库位于学习服务器中;
学习服务器,用于记录用户对话,并将用户对话转化为知识库文件格式 后保存在知识库中。
该系统进一步包括审核服务器,
审核服务器,用于根据预先设置的知识审核规则对用户对话进行审核, 并仅将通过审核的用户对话发送到学习服务器。
所述知识库文件格式包括问题部分和应答部分,
问题部分以问句主干的方式保存,应答部分以完整保留的方式保存。
所述格式化语言执行单元包括:信息查询模块、对话教育模块和游戏模 块中的任一个或者多于一个的任意组合,其中:
信息查询模块,用于确定信息查询类的格式化语句的反馈答复;
对话教育模块,用于确定对话教育类的格式化语句的反馈答复;
游戏模块,用于确定游戏类的格式化语句的反馈答复。
分发服务器,用于通过以下通讯方式中的任一种或者多于一种的任意组 合接收用户语句:
通过即时通讯方式接收用户语句;
通过电子邮件方式接收用户语句;
通过短消息方式接收用户语句。
分发服务器,用于通过以下通讯方式中的任一种或者多于一种的任意组 合向用户自动反馈答复:
通过即时通讯方式接收用户语句;
通过电子邮件方式接收用户语句;
通过短消息方式接收用户语句。
该系统进一步包括控制服务器,
所述控制服务器,用于向机器人服务器和学习服务器发送知识库更新切 换指令;
学习服务器,用于在收到知识库更新切换指令后,将积攒的用户对话转 化为知识库文件格式以更新知识库;
机器人服务器中的备用推理引擎单元,用于在收到知识库更新切换指令 后,加载更新的知识库,并在加载完更新的知识库后和所述推理引擎单元转 换功能。
控制服务器定时向机器人服务器和学习服务器发送知识库更新切换指 令;或
控制服务器在用户对话积攒到预定程度时向机器人服务器和学习服务 器发送知识库更新切换指令。
一种自动聊天方法,该方法包括:
A、分发服务器接收用户语句,并根据负载均衡原理将用户语句分发到 相应的机器人服务器;
B、机器人服务器响应于用户语句向用户自动反馈答复。
该方法进一步包括:
接收用户会话请求,并根据用户的属性信息,将用户会话重定向到与所 述属性信息相匹配的分发服务器;
分发服务器接收该用户会话的用户语句,并根据负载均衡原理将用户语 句分发到相应的机器人服务器。
该方法进一步包括:
接收用户会话,并根据负载均衡原理将用户语句分发到相应的分发服务 器;
分发服务器接收该用户会话的用户语句,并根据负载均衡原理将用户语 句分发到相应的机器人服务器。
所述用户语句为聊天语句、信息查询问句、对话教育语句或格式化命令。
从上述技术方案中可以看出,本发明提出的系统包括分发服务器和至少 两个机器人服务器,其中分发服务器接收用户语句,并根据负载均衡原理将 用户语句分发到相应的机器人服务器;机器人服务器响应于用户语句向用户 自动反馈答复中。由此可见,应用本发明以后,分发服务器根据负载均衡原 理控制用户语句的分发,分发服务器的数目可以为多个,每个分发服务器可 以接多个机器人服务器,每个机器人服务器功能独立,因此本发明的可扩展 性很高,尤其适合海量用户。
另外,本发明还优选包括重定向服务器,重定向服务器决定一次会话由 哪一个分发服务器作为处理入口,随后采用分发服务器作为一次会话所有用 户语句的总入口和分发器,使得机器人服务器负载基本均衡,进一步提高了 系统的可扩展性,使得聊天机器人系统更适合支持海量用户。
还有,本发明采用知识库文件而不是数据库作为知识点的载体。这种知 识库文件采用特殊设计的格式更适合推理和生成个性化应答,使得聊天机器 人更具智能性。不仅与此,本发明根据话题、问句类型、用户属性等信息生 成个性化应答,使得机器人在模仿人类语言方面更加逼真。另外,本发明还 可以支持信息查询(包括自然语言查询)和人机互动游戏,使得用户通过聊 天机器人得到更多服务。
附图说明
图1为根据本发明的聊天机器人系统的示范性结构示意图;
图2为根据本发明的机器人服务器的示范性结构示意图;
图3为根据本发明的自动聊天方法的示范性流程示意图;
图4为根据本发明实施例的聊天机器人系统的示范性结构示意图;
图5为根据本发明实施例的自动聊天方法的示范性流程示意图。

具体实施方式

为使本发明的目的、技术方案和优点表达得更加清楚明白,下面结合附 图及具体实施例对本发明再作进一步详细的说明。
本发明的主要思想是:分发服务器接收用户语句,然后根据负载均衡原 理将用户语句分发到相应的机器人服务器,机器人服务器再响应于用户语句 向用户自动反馈答复,从而使得机器人服务器的负载均衡,满足海量用户的 需求,并提高可扩展性。进一步,本发明采用知识库文件而不是数据库作为 知识点的载体,这种知识库文件采用特殊设计的格式更适合推理和生成个性 化应答,使得聊天机器人更具智能性。
图1为根据本发明的聊天机器人系统的示范性结构示意图。
如图1所示,该系统包括分发服务器101和至少两个机器人服务器102, 其中:
分发服务器101,用于接收用户语句,并根据负载均衡原理将用户语句分 发到相应的机器人服务器102;
机器人服务器102,用于响应于用户语句向用户自动反馈答复。
优选地,所述分发服务器的数目至少为两个,从而支持更多的聊天机器人, 此时优选该系统进一步包括重定向服务器103;
重定向服务器103,用于接收用户会话,并根据该用户的属性信息,将用 户会话重定向到与所述属性信息相匹配的分发服务器101;
其中,用户的属性信息可以包括用户的IP地址和/或客户端帐号。这样,重 定向服务器103考虑到用户的IP地址和/或客户端帐号来分配分发服务器。比 如,可以将用户会话重定向到与所述IP地址较接近的分发服务器,或者将用户 会话重定向到与客户端帐号相对应的分发服务器。此时,所述与属性信息相匹 配的分发服务器101,用于接收该用户会话的用户语句,并根据负载均衡原理 将用户语句分发到相应的机器人服务器102。
针对上述重定向服务器的另一种可选功能,分发服务器101的数目至少为 两个,该系统进一步包括重定向服务器103;
此处的重定向服务器103,用于接收用户会话,并根据负载均衡原理将用 户语句分发到相应的分发服务器101;
分发服务器101,用于接收该用户会话的用户语句,并根据负载均衡原 理将用户语句分发到相应的机器人服务器102。
其中,分发服务器101,可以通过以下通讯方式中的任一种或者多于一种 的任意组合接收用户语句:通过即时通讯方式接收用户语句;通过电子邮件方 式接收用户语句;通过短消息方式接收用户语句。
类似地,分发服务器102,可以通过以下通讯方式中的任一种或者多于 一种的任意组合向用户自动反馈答复:通过即时通讯方式接收用户语句;通 过电子邮件方式接收用户语句;通过短消息方式接收用户语句。
图2为图1中的机器人服务器的一种示范性具体结构。如图2所示,机 器人服务器102包括:
语句目的识别单元201,用于识别用户语句为格式化语句还是非格式化语 句;
格式化语言执行单元202,用于当语句目的识别单元201识别出用户语 句为格式化语句时,执行所述格式化语句;
在图1中,没有明确示出格式化语言执行单元202。实质上,所述格式 化语言执行单元可以包括:信息查询模块、对话教育模块和游戏模块中的任 一个或者多于一个的任意组合,其中:
信息查询模块,用于确定信息查询类的格式化语句的反馈答复;
对话教育模块,用于确定对话教育类的格式化语句的反馈答复;
游戏模块,用于确定游戏类的格式化语句的反馈答复。
为了简单视图,图2中仅示出信息查询模块2021和游戏模块2022。其 中信息查询模块2021与实用信息数据库209连接,检索实用信息数据库209, 以确定信息查询类的格式化语句的反馈答复。
自然语言理解单元203,用于当语句目的识别单元识别出用户语句为非 格式化语句时,对用户语句进行自然语言理解以确定语句属性;
用户属性管理单元204,用于管理用户的属性信息;
推理引擎单元205,用于加载知识库206,并根据所述语句属性和用户 属性信息在知识库206中进行模式匹配,确定匹配的反馈答复。其中用户的 属性信息可以包括:用户的姓名、用户的性别、用户所在城市、用户爱好中 的任一个或者多于一个的任意组合。
所述自然语言理解单元203,可以对用户语句执行下列操作中的任一个 或者多于一个的任意组合以确定语句属性:分词、问句主干提取、问句类型 判断和话题判断。
所述机器人服务器还可以进一步包括备用推理引擎单元207,用于当知 识库更新时加载更新的知识库208,并在加载完更新的知识库208后与所述 推理引擎单元205转换功能。
图1中的聊天机器人系统还可以进一步包括学习服务器,图2中的所述知 识库206可以位于该学习服务器中;
该学习服务器,用于记录用户对话,并将用户对话转化为知识库文件格 式后保存在知识库206中。
聊天机器人系统还可以进一步包括审核服务器。审核服务器,用于根据预 元设置的知识审核规则对用户对话进行审核,并仅将通过审核的用户对话发送 到学习服务器。比如,为了防止在知识库206中写入黄色信息等不健康信息, 可以在审核服务器中预先设置若干过滤关键字,当用户对话包含过滤关键字时, 则审核服务器判定该知识不符合知识审核规则,不将该用户对话发送到学习服 务器;否则,审核服务器判定该知识符合知识审核规则,将该用户对话发送到 学习服务器。
所述知识库文件格式可以包括问题部分和应答部分,问题部分以问句主 干的方式保存,应答部分以完整保留的方式保存。
知识库206是聊天机器人系统的重要组成部分,采用特定适合推理的格 式、以问答语句对的形式存储了大量的知识。当用户输入的自然语言句子与 知识库中的某一个句子匹配成功的时候,其对应的应答就会被返回给用户。
为了便于推理,知识库206中包含了很多属性。下面分别对[“]问题” 部分和“应答”部分的属性简单介绍。
知识库206中保存的“问题”部分,经过自然语言处理,以问句主干的 方式保存。问句主干提取可以有多种规则,例如对同义词作了替换,如 “Email”和“电子邮件”,“首都”和“北京”等,被替换为统一的表示 方法。再如,仅保留最能表达问句语义的词语。如一个问句“北京火车站在 什么地方?”,得到的句子主干为“北京火车站”。
另外,知识库206中保存的“问题”部分还包括问句的类型。例如“北 京火车站在什么地方?”这个问句,经过自然语言处理得到的问句类型是“询 问地点”。综合“问题”的“问句主干”和“问句类型”两个属性可以表示 一个问题的多种不同表述方法。“北京火车站在什么地方?”的其它表述方 式“首都火车站在哪里?”“北京火车站怎么走?”的问句主干都是“北京 火车站”,问句类型都是“问句类型”都是“询问地点”。因此这些问句可 以返回相同的应答。
生成知识库时提取问句类型和问句主干的任务是由学习服务器完成的, 机器人服务器的自然语言理解单元203采用相同的规则处理在线用户输入 问句,同样生成在线用户问句的“问句主干”和“问句类型”,用于在知识 库中进行匹配。另外,一些问题的“问句主干”可以包含通配符,用于扩展 “问句主干”适配范围。还有问句主题(如娱乐、军事等)也是“问题”的 一个属性。
知识库206中保存的“应答”部分,不像“问题”部分一样以主干的方 式保存,而是保留完整的应答,知识库中一个“问题”对应多种“应答”, 一个来自用户教育的“应答”会包括一个“教育用户ID”属性。机器人服 务器的推理引擎单元在匹配了“问题”之后,要从该“问题”对应的多个应 答中选择一个返回给用户,选择时优先选择该用户自己教育的应答。一个应 答还可能包含一些替换符,该替换符需要机器人服务器的推理引擎单元在返 回最终应答之前进行替换,这些替换符可能代表一些用户属性或其它信息。 例如:一个应答“我知道你来自XX。”该应答中“XX”部分(“XX”需 要采用不同格式来代表不同的意义,具体格式此处省略)需要用用户属性中 的信息来替换,用户属性查询是由机器人服务器的用户属性管理单元来完成 的,例如用户所在城市属性为“深圳”,则机器人服务器的推理引擎单元在 生成的最终应答中将“XX”部分替换成“深圳”,最终机器人返回应答“我 知道你来自深圳。”
该聊天机器人系统还可以进一步包括控制服务器,
所述控制服务器,用于向机器人服务器102和学习服务器发送知识库更新 切换指令;学习服务器,用于在收到知识库更新切换指令后,将积攒的用户对 话转化为知识库文件格式以更新知识库;
机器人服务器中的备用推理引擎单元,用于在收到知识库更新切换指令 后,加载更新的知识库,并在加载完更新的知识库后和所述推理引擎单元转 换功能。
控制服务器定时向机器人服务器和学习服务器发送知识库更新切换指令; 或
控制服务器在用户对话积攒到预定程度时向机器人服务器和学习服务 器发送知识库更新切换指令。
本发明还公开了一种自动聊天方法。图3为根据本发明的机器人服务器 的示范性结构示意图。
如图3所示,该方法包括:
步骤301:分发服务器接收用户语句,并根据负载均衡原理将用户语句 分发到相应的机器人服务器;
步骤302:机器人服务器响应于用户语句向用户自动反馈答复。
以上流程中,可以在步骤301之前,接收用户会话请求,并根据用户的 属性信息,将用户会话重定向到与所述属性信息相匹配的分发服务器;然后 该分发服务器接收该用户会话的用户语句,并根据负载均衡原理将用户语句 分发到相应的机器人服务器。
可选地,还可以在步骤301之前接收用户会话,并根据负载均衡原理将 用户语句分发到相应的分发服务器;分发服务器接收该用户会话的用户语 句,再根据负载均衡原理将用户语句分发到相应的机器人服务器。
图4为根据本发明实施例的聊天机器人系统的示范性结构示意图。
在图4所示的实施例中,本发明提出的聊天机器人系统除了必需的前端 通信系统(即时通信平台、短信平台等)之外,还包括5类服务器:重定向 (Redirect)服务器、分发(Dispatch)服务器、机器人(Robot)服务器、 学习服务器(Learning)和控制(Control)服务器。
当前端通信系统中传来的一个新会话的开始时,前端通信系统首先告知 重定向服务器,重定向服务器根据前端通信系统中客户端的IP地址或者客 户端使用的帐号,决定本次会话由哪一个分发服务器作为处理的入口。
再确定由哪一个分发服务器作为处理的入口之后,本次会话所有通讯不 再经过重定向服务器,本次会话内所有从前端通信系统中传来的数据直接发 向分发服务器,直至本次会话结束。因此重定向服务器在整个聊天机器人中 完成会话的重定向任务,在重定向过程中考虑到了各分发服务器的负载均 衡。
分发服务器是聊天机器人系统的一个会话处理的总入口,用于接收从即 时通信平台、短信平台等前端通信系统发送来的本次会话的所有用户语句, 并将用户语句按照某种机制分发给各机器人服务器,这种机制使得各机器人 服务器的负载是近似均衡的。为了便于扩展,分发服务器可以有多个,每个 分发服务器可以对应多个机器人服务器。
机器人服务器是聊天机器人系统中处理用户语句并作出响应的服务器, 一个聊天机器人系统中的机器人服务器可以是一个或多个。用户语句可能是 聊天语句、信息查询问句、对话教育、格式化命令等。机器人服务器解析用 户语句,判断其目的类别,并作不同处理,然后将应答直接返回给即时通信 平台或者短信平台等前段通信系统。
如图2中的示范性分析,机器人服务器可以包含语句目的识别单元、自 然语言理解单元、推理引擎单元、用户属性管理单元、格式化语言执行单元 等,其中格式化语言执行单元可以包括游戏模块和信息查询模块等。
机器人服务器的语句目的识别单元对用户语句的目的类别进行辨识,判 断语句为格式化语句或非格式化语言语句,如果是格式化语句,继续判别是 对话教育格式化语句、信息查询格式化语句、游戏格式化命令、还是其他格 式化命令(如设置用户属性)。
机器人服务器的自然语言理解单元对非格式化用户句子作自然语言处 理,完成包括分词、问句主干提取、问句类型判断、话题判断等处理。
机器人服务器的推理引擎单元,加载由学习服务器生成的知识库文件, 基于自然语言理解单元输出的用户句子属性,以及用户属性管理单元提取的 用户属性,生成自然语言应答,完成对用户聊天语句的处理。
为了更新知识库,一个机器人服务器可以包含两个推理引擎单元,一个 用于在线实时的处理、生成自然语言应答,另一个是备份推理引擎单元,用 于加载最近更新过的知识库。
机器人服务器的用户属性管理单元完成用户属性的存储和查询读取。这 些属性包括用户的姓名、性别、所在城市等。推理引擎单元基于这些属性可 返回个性化的应答。这些属性是用户自愿提交的,提交的方法有很多,包括 通过向聊天机器人提交某种格式化命令来设置。
机器人服务器的游戏模块处理游戏格式化命令,按照游戏逻辑,推进互 动游戏的进行。
机器人服务器的信息查询模块实现实用信息查询,包括天气查询、地图 查询、邮编查询、手机归属地查询、生活信息查询、词典查询、计算器等增 值服务功能。
学习服务器负责记录用户教育的对话,保存在用户教育数据库中,留待 编辑来人工审核,待人工审核通过后,这些对话将被学习服务器转化为知识 库文件,这种知识库文件格式是为逻辑推理而特殊设计的。知识库中的知识 除了来自用户教育外,还包括自编辑知识和知识社区沉淀下来的知识等其他 来源。这些不同来源的知识在转化过程中被汇总合并在知识库中。
知识库中包含问答的话题属性、上下文属性、教育该问答的用户的ID 属性(如果前段是即时通信平台,那么该ID是用户使用即时通信工具的帐 号ID)等用于推理的属性,其中用户ID属性被用来实现聊天过程中的个性 化。另外知识库中还包含一些语义通配符,用于扩展应答可适用的问句的范 围。最后这种知识库文件在控制服务器的指令下发送到各机器人服务器。
控制服务器负责向机器人服务器和学习服务器发送知识库更新切换指 令,更新切换指令发出的时机可以是定时的,也可以是当学习服务器接收到 的新用户教育对话积累到一定程度后。指令发出后,学习服务器将用户教育 数据库中的问答对话转化为知识库文件,并发送给各机器人服务器,随后控 制服务器发送指令给机器人服务器,机器人服务器中的备份推理引擎单元加 载最新知识库,而后,备份推理引擎和在线推理引擎的色被交换,完成知 识库的替换。
一个新会话开始之前,首先由重定向服务器确定由哪一个分发服务器作 为本次会话的总入口(考虑了各分发服务器的负载均衡),此后本次会话的 所有从前段通信系统传来的用户的语句首先传入分发服务器,分发服务器将 用户语句传给其中一个机器人服务器(分发服务器在选择转发给哪一个机器 人服务器时,同样考虑到了各机器人服务器负载均衡),机器人服务器对用 户语句完成处理后将应答直接返回给前端通信系统。
聊天机器人的主要操作流程是系统运营时对用户句子的处理流程,下面 对这个过程进行详细描述。
首先一个会话在一个用户开始与聊天机器人聊天时被建立,前端通信系 统保留了聊天机器人系统的重定向服务器地址,新会话开始时,前端通信系 统首先告知重定向服务器,重定向服务器决定本次会话交由哪一个分发服务 器作为处理入口,并且告知前端通信系统,此后本次会话所有从前端通信系 统传来的用户语句都交由该重定向服务器处理。
重定向服务器在决定由哪一个分发服务器处理时,考虑了各分发服务器 的负载均衡或是业务特征等信息,比如根据用户在使用前端通信工具时使用 的帐号ID(如即时通信工具的帐号)的号码段来实现分发。
下面介绍一个会话建立起来后,聊天机器人处理本会话中的一个用户问 句的流程。
首先聊天机器人的分发服务器首先从前端通信系统获得用户句子,分发 服务器将用户语句传给其中一个机器人服务器(分发服务器在选择转发给哪 一个机器人服务器时,考虑到了各机器人服务器负载均衡)。
机器人服务器调用语句目的识别单元对用户语句的意图进行判断,然后 根据目的类别作不同处理,机器人服务器对用户语句完成处理后将应答直接 返回给前端通信系统。
图5为根据本发明实施例的自动聊天方法的示范性流程示意图。
如图5所示,该方法包括:
步骤501~步骤503:分发服务器从前端通信系统收到用户语句,分发 服务器采用负载均衡的机制将用户语句转发给某个机器人服务器,机器人服 务器判断用户语句的意图;
步骤504:判断用户语句是非格式化语言语句还是格式化语句,如果是 非格式化语言语句则执行步骤505,如果是格式化语言语句则执行步骤509;
步骤505~步骤506:对用户句子作分词、问句主干提取、问句类型判 断、话题判断等处理,并根据问句类型和话题判断结果判断用户的意图是否 是通过自然语言执行某种信息查询,如果是则执行步骤510,否则执行步骤 507;
步骤507~步骤508:机器人服务器的用户属性管理单元读取用户属性 给推理引擎单元,推理引擎单元根据用户语句,从知识库中查找匹配的知识 点,并根据话题属性、问句类型属性、用户属性等信息生成个性化应答,然 后执行步骤514并结束本流程;
步骤509:判断格式化语句是信息查询、对话教育或游戏命令,如果是 信息查询,则执行步骤510;如果是对话教育,则执行步骤512;如果是游 戏命令,则执行步骤511;
步骤510:机器人服务器的信息查询模块解析用户查询意图,并从实用 信息数据库中查找,将查找结果作为应答,然后执行步骤514并结束本流程;
步骤511:机器人服务器的游戏模块解析用户的游戏命令,根据游戏逻 辑推进游戏进行,并将游戏当前进行结果作为应答。
步骤512~步骤513:机器人服务器将用户教育的对话转发给学习服务 器;学习服务器将它记录在用户教育数据库中;机器人服务器将一句感谢用 户教育的话作为应答,然后执行步骤514并结束本流程;
步骤514:机器人服务器将应答直接返回到前端通信系统,用户最终收 到聊天机器人应答
如图5所示,在步骤502中,分发服务器采用考虑了负载均衡或业务特 征的分发机制,例如采用类似于重定向服务器重定向的原则,根据用户在使 用前端通信工具时使用的帐号ID(如即时通信工具的帐号)的号码段来实 现分发。
在步骤504处,为了便于识别,可以事先与用户约定格式格式化语句。 例如“tq深圳”表示查询深圳天气,“Q:你是机器人?A:是啊,我很聪 明的。”表示用户教育对话。机器人服务器的语句目类别识别单元根据这些 事先约定的格式识别格式化语句。
在步骤505处,机器人服务器的自然语言理解单元采用自然语言处理技 术,对用户输入的自然语言语句进行词法分析、语法分析、语义分析等处理。
在步骤506处作判断的原因是:有些用户习惯采用自然语言而非格式化 语句的方式来查询信息,例如用户的语句“明天深圳天气如何?”,这种情 况下,聊天机器人通过自然语言处理后识别出用户真正意图,处理过程转入 信息查询模块,进行信息查询的处理。
在步骤508处,为了使得聊天机器人具有个性化,相同的用户问句能够 产生不同的应答,机器人服务器的推理引擎单元根据用户语句,从知识库中 查找语义匹配的知识点,并根据话题属性、问句类型属性、用户属性等信息 生成个性化应答。
在步骤512处,如果是对话教育格式化语句,则把用户教育的对话转发 给学习服务器,并直接返回一个感谢用户教育之类的应答给用户。学习服务 器将用户教育的对话连同用户的ID一同记录在用户教育数据库中。
由于不断有新的用户教育对话加入知识库,同时不断有知识类社区沉淀 下来的知识加入知识库,因此学习服务器不断的生成新知识库,并且机器人 服务器不断的更新知识库。以上过程由控制服务器通过发送指令调度完成。
综上所述,在本发明中,本发明提出的聊天机器人系统能够带来的有 益效果包括:
(1)本发明提出的聊天机器人可包含多个分发服务器,每个分发服务 器可接多个机器人服务器,每个机器人服务器功能独立。本发明还优选包括 重定向服务器,重定向服务器决定由一次会话由哪一个分发服务器作为处 理入口,随后采用分发服务器作为聊天机器人的一次会话所有用户语句的总 入口和分发器,使得机器人服务器负载基本均衡,并且提高了系统的可扩展 性,使得聊天机器人系统更适合支持海量用户。
(2)本发明采用知识库文件而不是数据库作为知识点的载体,这种知 识库文件采用特殊设计的格式更适合推理和生成个性化应答,使得聊天机器 人更具智能性。
(3)本发明根据话题、问句类型、用户属性等信息生成个性化应答, 使得机器人在模仿人类语言方面更加逼真。
(4)本发明支持信息查询(包括自然语言查询)和人机互动游戏,使 得用户通过聊天机器人得到更多服务。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护 范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等, 均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈