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

一种机器人服务器及自动聊天方法

阅读:138发布:2020-11-11

专利汇可以提供一种机器人服务器及自动聊天方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种 机器人 服务器 ,包括语句目的识别单元,用于识别用户语句为格式化语句还是非格式化语句;格式化语言执行单元,用于当语句目的识别单元识别出用户语句为格式化语句时,执行格式化语句;自然语言理解单元,用于当语句目的识别单元识别出用户语句为非格式化语句时,对用户语句进行自然语言理解以确定语句属性;用户属性存储单元,用于存储用户的 属性信息 ;推理引擎单元,用于根据语句属性和用户属性信息在 知识库 中进行模式匹配,确定匹配的反馈答复;知识库,用于保存知识。本发明还公开了一种自动 聊天 的方法。应用本发明以后,反馈答复具有个性化。另外,本发明使得机器人服务器更加便于理解自然语言和执行逻辑推理。,下面是一种机器人服务器及自动聊天方法专利的具体信息内容。

1、一种机器人服务器,其特征在于,该机器人服务器包括:
语句目的识别单元,用于识别用户语句为格式化语句还是非格式化语句;
格式化语言执行单元,用于当语句目的识别单元识别出用户语句为格式化 语句时,执行所述格式化语句;
自然语言理解单元,用于当语句目的识别单元识别出用户语句为非格式化 语句时,对用户语句进行自然语言理解以确定语句属性;
用户属性存储单元,用于存储用户的属性信息
推理引擎单元,用于根据所述语句属性和用户属性信息在知识库中进行模 式匹配,确定匹配的反馈答复;
知识库,用于保存知识。
2、根据权利要求1所述的机器人服务器,其特征在于,所述知识库,用于 保存问题部分和应答部分,其中问题部分以问句主干的方式保存,应答部分以 完整保留的方式保存。
3、根据权利要求1所述的机器人服务器,其特征在于,所述用户语句为聊 天语句、信息查询问句、对话教育语句或格式化命令。
4、根据权利要求1所述的机器人服务器,其特征在于,所述用户的属性信 息包括:用户的姓名、用户的性别、用户所在城市、用户爱好中的任一个或者多 于一个的任意组合。
5、根据权利要求1所述的机器人服务器,其特征在于,
所述自然语言理解单元,用于对用户语句执行下列操作中的任一个或者多 于一个的任意组合以确定语句属性:
分词;
问句主干提取;
问句类型判断;
话题判断。
6、根据权利要求1所述的机器人服务器,其特征在于,所述机器人服务器 进一步包括备用推理引擎单元,
备用推理引擎单元,用于当知识库更新时加载更新的知识库,并在加载完 更新的知识库后与所述推理引擎单元转换功能。
7、根据权利要求1所述的机器人服务器,其特征在于,
所述格式化语言执行单元包括:信息查询模、对话教育模块和游戏模块 中的任一个或者多于一个的任意组合,其中:
信息查询模块,用于确定信息查询类的格式化语句的反馈答复;
对话教育模块,用于确定对话教育类的格式化语句的反馈答复;
游戏模块,用于确定游戏类的格式化语句的反馈答复。
8、根据权利要求1所述的机器人服务器,其特征在于,所述知识库进一步 用于从置于机器人服务器之外的学习知识库中获取知识,所述学习知识库位于 学习服务器中;
学习服务器,用于记录用户对话,并将用户对话转化为知识库文件格式后 保存在学习知识库中。
9、根据权利要求1-8中任一项所述的机器人服务器,其特征在于,该机器 人服务器进一步包括通信单元,
通信单元,用于通过以下通讯方式中的任一种或者多于一种的任意组合接 收用户语句和将确定的反馈答复发送给用户:
即时通讯方式;
电子邮件方式;
短消息方式。
10、一种自动聊天方法,其特征在于,该方法包括:
A、接收用户语句,并识别用户语句为格式化语句还是非格式化语句;
B、如果识别出用户语句为格式化语句时,则执行所述格式化语句;如果识 别出用户语句为非格式化语句时,对用户语句进行自然语言理解以确定语句属 性,然后再根据所述语句属性和用户属性信息在知识库中进行模式匹配,确定 匹配的反馈答复。
11、根据权利要求10所述的自动聊天方法,其特征在于,所述步骤B执行 下列操作中的任一个或者多于一个的任意组合以确定语句属性:
分词;
问句主干提取;
问句类型判断;
话题判断。
12、根据权利要求10所述的自动聊天方法,其特征在于,步骤B所述执行 格式化语句包括:
确定信息查询类的格式化语句的反馈答复;或
确定对话教育类的格式化语句的反馈答复;或
确定游戏类的格式化语句的反馈答复。
13、根据权利要求10所述的自动聊天方法,其特征在于,该方法进一步包 括:记录用户对话,并将用户对话转化为知识库文件格式后保存在知识库中。
14、根据权利要求10-13中任一项所述的自动聊天方法,其特征在于,所 述用户语句为聊天语句、信息查询问句、对话教育语句或格式化命令。

说明书全文

技术领域

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

背景技术

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

发明内容

有鉴于此,本发明的主要目的是提出一种机器人服务器,以使得反馈应 答具有个性化。
本发明的另一目的是提出一种自动聊天方法,以使得反馈应答具有个性 化。
为达到上述目的,本发明的技术方案是这样实现的:
一种机器人服务器,该机器人服务器包括:
语句目的识别单元,用于识别用户语句为格式化语句还是非格式化语 句;
格式化语言执行单元,用于当语句目的识别单元识别出用户语句为格式 化语句时,执行所述格式化语句;
自然语言理解单元,用于当语句目的识别单元识别出用户语句为非格式 化语句时,对用户语句进行自然语言理解以确定语句属性;
用户属性存储单元,用于存储用户的属性信息
推理引擎单元,用于根据所述语句属性和用户属性信息在知识库中进行 模式匹配,确定匹配的反馈答复;
知识库,用于保存知识。
所述知识库,用于保存问题部分和应答部分,其中问题部分以问句主干 的方式保存,应答部分以完整保留的方式保存。
所述用户语句为聊天语句、信息查询问句、对话教育语句或格式化命令。
所述用户的属性信息包括:用户的姓名、用户的性别、用户所在城市、 用户爱好中的任一个或者多于一个的任意组合。
所述自然语言理解单元,用于对用户语句执行下列操作中的任一个或者 多于一个的任意组合以确定语句属性:
分词;
问句主干提取;
问句类型判断;
话题判断。
所述机器人服务器进一步包括备用推理引擎单元,
备用推理引擎单元,用于当知识库更新时加载更新的知识库,并在加载 完更新的知识库后与所述推理引擎单元转换功能。
所述格式化语言执行单元包括:信息查询模块、对话教育模块和游戏模 块中的任一个或者多于一个的任意组合,其中:
信息查询模块,用于确定信息查询类的格式化语句的反馈答复;
对话教育模块,用于确定对话教育类的格式化语句的反馈答复;
游戏模块,用于确定游戏类的格式化语句的反馈答复。
所述知识库进一步用于从置于机器人服务器之外的学习知识库中获取 知识,所述学习知识库位于学习服务器中;
学习服务器,用于记录用户对话,并将用户对话转化为知识库文件格式 后保存在学习知识库中。
该机器人服务器进一步包括通信单元,
通信单元,用于通过以下通讯方式中的任一种或者多于一种的任意组合 接收用户语句和将确定的反馈答复发送给用户:
即时通讯方式;
电子邮件方式;
短消息方式。
一种自动聊天方法,该方法包括:
A、接收用户语句,并识别用户语句为格式化语句还是非格式化语句;
B、如果识别出用户语句为格式化语句时,则执行所述格式化语句;如 果识别出用户语句为非格式化语句时,对用户语句进行自然语言理解以确定 语句属性,然后再根据所述语句属性和用户属性信息在知识库中进行模式匹 配,确定匹配的反馈答复。
步骤B中执行下列操作中的任一个或者多于一个的任意组合以确定语 句属性:
分词;
问句主干提取;
问句类型判断;
话题判断。
步骤B所述执行格式化语句包括:
确定信息查询类的格式化语句的反馈答复;或
确定对话教育类的格式化语句的反馈答复;或
确定游戏类的格式化语句的反馈答复。
该方法进一步包括:记录用户对话,并将用户对话转化为知识库文件格 式后保存在知识库中。
所述用户语句为聊天语句、信息查询问句、对话教育语句或格式化命令。
从上述技术方案中可以看出,本发明中推理引擎单元并不简单地从数据 库中检索答复,而是根据语句属性和用户属性信息在知识库中进行模式匹 配,以确定匹配的反馈答复。由此可见,应用本发明以后,可以根据话题、 问句类型、用户属性等信息生成个性化应答,所以生成的反馈应答具有个性 化,使得机器人在模仿人类语言方面更加逼真。
另外,本发明采用知识库而不是数据库作为知识点的载体。这种知识库 文件采用特殊设计的格式更适合推理和生成个性化应答,使得聊天机器人更 具智能性。另外,本发明还可以支持信息查询(包括自然语言查询)和人机 互动游戏,使得用户通过聊天机器人得到更多服务。
附图说明
图1为根据本发明的机器人服务器的示范性结构示意图;
图2为根据本发明实施例的机器人服务器的示范性结构示意图;
图3为根据本发明的自动聊天方法的示范性流程示意图;
图4为根据本发明实施例的聊天机器人系统的示范性结构示意图;
图5为根据本发明实施例的自动聊天方法的示范性流程示意图。

具体实施方式

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