CN101076061A - 一种机器人服务器及自动聊天方法 - Google Patents
一种机器人服务器及自动聊天方法 Download PDFInfo
- Publication number
- CN101076061A CN101076061A CN 200710090640 CN200710090640A CN101076061A CN 101076061 A CN101076061 A CN 101076061A CN 200710090640 CN200710090640 CN 200710090640 CN 200710090640 A CN200710090640 A CN 200710090640A CN 101076061 A CN101076061 A CN 101076061A
- Authority
- CN
- China
- Prior art keywords
- statement
- user
- knowledge base
- format
- attribute
- 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.)
- Pending
Links
Images
Abstract
本发明公开了一种机器人服务器,包括语句目的识别单元,用于识别用户语句为格式化语句还是非格式化语句;格式化语言执行单元,用于当语句目的识别单元识别出用户语句为格式化语句时,执行格式化语句;自然语言理解单元,用于当语句目的识别单元识别出用户语句为非格式化语句时,对用户语句进行自然语言理解以确定语句属性;用户属性存储单元,用于存储用户的属性信息;推理引擎单元,用于根据语句属性和用户属性信息在知识库中进行模式匹配,确定匹配的反馈答复;知识库,用于保存知识。本发明还公开了一种自动聊天的方法。应用本发明以后,反馈答复具有个性化。另外,本发明使得机器人服务器更加便于理解自然语言和执行逻辑推理。
Description
技术领域
本发明涉及人工智能领域,更具体地说,本发明涉及一种机器人服务器及自动聊天方法。
背景技术
近些年来,人们之间的通讯手段日益丰富。即时通信工具、手机短信等通讯手段日渐风行。基于这些通讯手段,除了实现人与人之间的沟通交流外,也使得人与人工智能系统之间的沟通交流成为可能。
聊天机器人系统就是一种借助于通讯手段能够时时刻刻在线、并通过自然语言与人沟通交流的人工智能系统。除了聊天功能外,聊天机器人系统还可以拥有众多的增值服务,例如天气查询、地图查询、生活信息查询、计算器、词典等,甚至还可以与人一起作游戏。聊天机器人系统实质上是一种自动问答系统。自动问答系统以自然语言理解技术为核心,涉及到计算语言学、信息科学和人工智能等多门学科,是计算机应用研究的热点之一。自然语言理解是人工智能领域中的一个重要研究方向,它使计算机能够理解和运用人类的自然语言,可以理解用户的谈话内容或者查询意图,实现人与计算机之间基于自然语言的有效沟通。
聊天机器人利用自然语言处理技术、知识库和实时更新的信息资源,一方面完成对用户问题的分析处理,另一方面完成正确答案的生成。
目前现有技术中有一种聊天机器人系统,包含通讯模块、查询服务器、游戏服务器、人工智能服务器及相应的数据库。在这种聊天机器人系统中,采用数据库作为知识点的记载方式,用户通过即时通讯平台或短信平台与聊天机器人进行各种对话。
然而,该技术中每个用户与聊天机器人聊天时,看到的都是无差别的应答,缺乏个性化。而且这种聊天机器人系统简单采用数据库作为知识点的记载方式,不利于自然语言理解和推理。不仅与此,该系统架构缺乏信息分发机制,在支持海量用户时会遇到较大的困难,因此这种系统架构的可扩展性也较差。
发明内容
有鉴于此,本发明的主要目的是提出一种机器人服务器,以使得反馈应答具有个性化。
本发明的另一目的是提出一种自动聊天方法,以使得反馈应答具有个性化。
为达到上述目的,本发明的技术方案是这样实现的:
一种机器人服务器,该机器人服务器包括:
语句目的识别单元,用于识别用户语句为格式化语句还是非格式化语句;
格式化语言执行单元,用于当语句目的识别单元识别出用户语句为格式化语句时,执行所述格式化语句;
自然语言理解单元,用于当语句目的识别单元识别出用户语句为非格式化语句时,对用户语句进行自然语言理解以确定语句属性;
用户属性存储单元,用于存储用户的属性信息;
推理引擎单元,用于根据所述语句属性和用户属性信息在知识库中进行模式匹配,确定匹配的反馈答复;
知识库,用于保存知识。
所述知识库,用于保存问题部分和应答部分,其中问题部分以问句主干的方式保存,应答部分以完整保留的方式保存。
所述用户语句为聊天语句、信息查询问句、对话教育语句或格式化命令。
所述用户的属性信息包括:用户的姓名、用户的性别、用户所在城市、用户爱好中的任一个或者多于一个的任意组合。
所述自然语言理解单元,用于对用户语句执行下列操作中的任一个或者多于一个的任意组合以确定语句属性:
分词;
问句主干提取;
问句类型判断;
话题判断。
所述机器人服务器进一步包括备用推理引擎单元,
备用推理引擎单元,用于当知识库更新时加载更新的知识库,并在加载完更新的知识库后与所述推理引擎单元转换功能。
所述格式化语言执行单元包括:信息查询模块、对话教育模块和游戏模块中的任一个或者多于一个的任意组合,其中:
信息查询模块,用于确定信息查询类的格式化语句的反馈答复;
对话教育模块,用于确定对话教育类的格式化语句的反馈答复;
游戏模块,用于确定游戏类的格式化语句的反馈答复。
所述知识库进一步用于从置于机器人服务器之外的学习知识库中获取知识,所述学习知识库位于学习服务器中;
学习服务器,用于记录用户对话,并将用户对话转化为知识库文件格式后保存在学习知识库中。
该机器人服务器进一步包括通信单元,
通信单元,用于通过以下通讯方式中的任一种或者多于一种的任意组合接收用户语句和将确定的反馈答复发送给用户:
即时通讯方式;
电子邮件方式;
短消息方式。
一种自动聊天方法,该方法包括:
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)本发明支持信息查询(包括自然语言查询)和人机互动游戏,使得用户通过聊天机器人得到更多服务。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
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中任一项所述的自动聊天方法,其特征在于,所述用户语句为聊天语句、信息查询问句、对话教育语句或格式化命令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710090640 CN101076061A (zh) | 2007-03-30 | 2007-03-30 | 一种机器人服务器及自动聊天方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710090640 CN101076061A (zh) | 2007-03-30 | 2007-03-30 | 一种机器人服务器及自动聊天方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101076061A true CN101076061A (zh) | 2007-11-21 |
Family
ID=38976871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710090640 Pending CN101076061A (zh) | 2007-03-30 | 2007-03-30 | 一种机器人服务器及自动聊天方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101076061A (zh) |
Cited By (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008119270A1 (fr) * | 2007-03-30 | 2008-10-09 | Tencent Technology (Shenzhen) Company Limited | Système robot de discussion en ligne, procédé et dispositif de discussion automatique |
CN101799849A (zh) * | 2010-03-17 | 2010-08-11 | 哈尔滨工业大学 | 采用计算机实现的非障碍性自动心理咨询方法 |
CN101883378A (zh) * | 2009-05-08 | 2010-11-10 | 卓望数码技术(深圳)有限公司 | 一种移动数据业务测试的方法及系统 |
CN102737049A (zh) * | 2011-04-11 | 2012-10-17 | 腾讯科技(深圳)有限公司 | 一种数据库的查询方法和系统 |
CN103268315A (zh) * | 2012-12-31 | 2013-08-28 | 威盛电子股份有限公司 | 自然语言对话方法及其系统 |
CN103294725A (zh) * | 2012-03-03 | 2013-09-11 | 李辉 | 智能应答机器人软件 |
CN103390047A (zh) * | 2013-07-18 | 2013-11-13 | 天格科技(杭州)有限公司 | 聊天机器人知识库及其构建方法 |
CN103400054A (zh) * | 2013-08-27 | 2013-11-20 | 哈尔滨工业大学 | 计算机辅助心理咨询自动问答机器人系统 |
CN103455592A (zh) * | 2013-08-30 | 2013-12-18 | 广州网易计算机系统有限公司 | 一种问答方法、装置及系统 |
WO2015062482A1 (en) * | 2013-11-01 | 2015-05-07 | Tencent Technology (Shenzhen) Company Limited | System and method for automatic question answering |
CN104615646A (zh) * | 2014-12-25 | 2015-05-13 | 上海科阅信息技术有限公司 | 智能聊天机器人系统 |
CN105094315A (zh) * | 2015-06-25 | 2015-11-25 | 百度在线网络技术(北京)有限公司 | 基于人工智能的人机智能聊天的方法和装置 |
CN105354286A (zh) * | 2015-10-30 | 2016-02-24 | 百度在线网络技术(北京)有限公司 | 规章类问题的查询方法和装置 |
CN105808695A (zh) * | 2016-03-03 | 2016-07-27 | 陈包容 | 一种获取聊天回复内容的方法及装置 |
CN105975622A (zh) * | 2016-05-28 | 2016-09-28 | 蔡宏铭 | 多角色智能聊天的方法及系统 |
CN106113052A (zh) * | 2016-06-27 | 2016-11-16 | 四川阿泰因机器人智能装备有限公司 | 一种社区矫正机器人 |
CN106294774A (zh) * | 2016-08-11 | 2017-01-04 | 北京光年无限科技有限公司 | 基于对话服务的用户个性化数据处理方法及装置 |
CN106489159A (zh) * | 2016-06-29 | 2017-03-08 | 深圳狗尾草智能科技有限公司 | 一种基于深度神经网络的用户画像表示学习系统及方法 |
CN106656732A (zh) * | 2015-11-04 | 2017-05-10 | 陈包容 | 一种基于场景信息获取聊天回复内容的方法及装置 |
CN106658441A (zh) * | 2015-11-04 | 2017-05-10 | 陈包容 | 一种快捷回复未读信息的方法及装置 |
CN106776825A (zh) * | 2016-11-24 | 2017-05-31 | 竹间智能科技(上海)有限公司 | 基于层级映射的用户偏好实体分类方法及系统 |
CN107133349A (zh) * | 2017-05-24 | 2017-09-05 | 北京无忧创新科技有限公司 | 一种对话机器人系统 |
CN107135143A (zh) * | 2017-03-27 | 2017-09-05 | 厦门快商通科技股份有限公司 | 多聊天机器人切换系统及其对话方法 |
CN107301213A (zh) * | 2017-06-09 | 2017-10-27 | 腾讯科技(深圳)有限公司 | 智能问答方法及装置 |
CN107526763A (zh) * | 2016-06-16 | 2017-12-29 | 松下知识产权经营株式会社 | 处理方法、处理系统及记录介质 |
WO2018010635A1 (zh) * | 2016-07-14 | 2018-01-18 | 腾讯科技(深圳)有限公司 | 随机性交互数据的处理方法、网络服务器及智能对话系统 |
CN107623620A (zh) * | 2016-07-14 | 2018-01-23 | 腾讯科技(深圳)有限公司 | 随机性交互数据的处理方法、网络服务器及智能对话系统 |
CN107766416A (zh) * | 2017-09-08 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 数据分析方法、装置及系统 |
CN108073804A (zh) * | 2016-11-14 | 2018-05-25 | 百度在线网络技术(北京)有限公司 | 一种风险识别方法和装置 |
CN108400933A (zh) * | 2018-03-21 | 2018-08-14 | 广东您好科技有限公司 | 一种基于语义理解和知识图谱实现智能通讯的方法及装置 |
CN108573705A (zh) * | 2018-07-17 | 2018-09-25 | 上海应用技术大学 | 智能语音聊天器 |
CN109151548A (zh) * | 2018-08-31 | 2019-01-04 | 北京优酷科技有限公司 | 界面交互方法及装置 |
CN109271498A (zh) * | 2018-09-14 | 2019-01-25 | 南京七奇智能科技有限公司 | 面向虚拟机器人的自然语言交互方法及系统 |
CN109760041A (zh) * | 2017-11-10 | 2019-05-17 | 贝斯平环球公司 | 基于聊天机器人的云管理系统及其操作方法 |
CN111881266A (zh) * | 2019-07-19 | 2020-11-03 | 马上消费金融股份有限公司 | 一种应答方法及装置 |
CN112989822A (zh) * | 2021-04-16 | 2021-06-18 | 北京世纪好未来教育科技有限公司 | 识别对话中句子类别的方法、装置、电子设备和存储介质 |
US11159457B2 (en) | 2019-11-12 | 2021-10-26 | International Business Machines Corporation | Chatbot orchestration |
-
2007
- 2007-03-30 CN CN 200710090640 patent/CN101076061A/zh active Pending
Cited By (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008119270A1 (fr) * | 2007-03-30 | 2008-10-09 | Tencent Technology (Shenzhen) Company Limited | Système robot de discussion en ligne, procédé et dispositif de discussion automatique |
CN101883378A (zh) * | 2009-05-08 | 2010-11-10 | 卓望数码技术(深圳)有限公司 | 一种移动数据业务测试的方法及系统 |
CN101799849A (zh) * | 2010-03-17 | 2010-08-11 | 哈尔滨工业大学 | 采用计算机实现的非障碍性自动心理咨询方法 |
CN102737049A (zh) * | 2011-04-11 | 2012-10-17 | 腾讯科技(深圳)有限公司 | 一种数据库的查询方法和系统 |
CN103294725A (zh) * | 2012-03-03 | 2013-09-11 | 李辉 | 智能应答机器人软件 |
CN103268315A (zh) * | 2012-12-31 | 2013-08-28 | 威盛电子股份有限公司 | 自然语言对话方法及其系统 |
CN103390047A (zh) * | 2013-07-18 | 2013-11-13 | 天格科技(杭州)有限公司 | 聊天机器人知识库及其构建方法 |
CN103400054A (zh) * | 2013-08-27 | 2013-11-20 | 哈尔滨工业大学 | 计算机辅助心理咨询自动问答机器人系统 |
CN103455592A (zh) * | 2013-08-30 | 2013-12-18 | 广州网易计算机系统有限公司 | 一种问答方法、装置及系统 |
CN103455592B (zh) * | 2013-08-30 | 2017-01-18 | 广州网易计算机系统有限公司 | 一种问答方法、装置及系统 |
WO2015062482A1 (en) * | 2013-11-01 | 2015-05-07 | Tencent Technology (Shenzhen) Company Limited | System and method for automatic question answering |
CN104615646A (zh) * | 2014-12-25 | 2015-05-13 | 上海科阅信息技术有限公司 | 智能聊天机器人系统 |
CN105094315A (zh) * | 2015-06-25 | 2015-11-25 | 百度在线网络技术(北京)有限公司 | 基于人工智能的人机智能聊天的方法和装置 |
CN105094315B (zh) * | 2015-06-25 | 2018-03-06 | 百度在线网络技术(北京)有限公司 | 基于人工智能的人机智能聊天的方法和装置 |
CN105354286A (zh) * | 2015-10-30 | 2016-02-24 | 百度在线网络技术(北京)有限公司 | 规章类问题的查询方法和装置 |
CN105354286B (zh) * | 2015-10-30 | 2019-05-03 | 百度在线网络技术(北京)有限公司 | 规章类问题的查询方法和装置 |
CN106656732A (zh) * | 2015-11-04 | 2017-05-10 | 陈包容 | 一种基于场景信息获取聊天回复内容的方法及装置 |
CN106658441A (zh) * | 2015-11-04 | 2017-05-10 | 陈包容 | 一种快捷回复未读信息的方法及装置 |
CN105808695A (zh) * | 2016-03-03 | 2016-07-27 | 陈包容 | 一种获取聊天回复内容的方法及装置 |
CN105975622A (zh) * | 2016-05-28 | 2016-09-28 | 蔡宏铭 | 多角色智能聊天的方法及系统 |
CN107526763A (zh) * | 2016-06-16 | 2017-12-29 | 松下知识产权经营株式会社 | 处理方法、处理系统及记录介质 |
CN106113052B (zh) * | 2016-06-27 | 2018-08-28 | 四川阿泰因机器人智能装备有限公司 | 一种社区矫正机器人 |
CN106113052A (zh) * | 2016-06-27 | 2016-11-16 | 四川阿泰因机器人智能装备有限公司 | 一种社区矫正机器人 |
CN106489159A (zh) * | 2016-06-29 | 2017-03-08 | 深圳狗尾草智能科技有限公司 | 一种基于深度神经网络的用户画像表示学习系统及方法 |
WO2018010635A1 (zh) * | 2016-07-14 | 2018-01-18 | 腾讯科技(深圳)有限公司 | 随机性交互数据的处理方法、网络服务器及智能对话系统 |
US11294962B2 (en) | 2016-07-14 | 2022-04-05 | Tencent Technology (Shenzhen) Company Limited | Method for processing random interaction data, network server and intelligent dialog system |
CN107623620A (zh) * | 2016-07-14 | 2018-01-23 | 腾讯科技(深圳)有限公司 | 随机性交互数据的处理方法、网络服务器及智能对话系统 |
CN106294774A (zh) * | 2016-08-11 | 2017-01-04 | 北京光年无限科技有限公司 | 基于对话服务的用户个性化数据处理方法及装置 |
CN108073804B (zh) * | 2016-11-14 | 2022-11-29 | 百度在线网络技术(北京)有限公司 | 一种风险识别方法和装置 |
CN108073804A (zh) * | 2016-11-14 | 2018-05-25 | 百度在线网络技术(北京)有限公司 | 一种风险识别方法和装置 |
CN106776825A (zh) * | 2016-11-24 | 2017-05-31 | 竹间智能科技(上海)有限公司 | 基于层级映射的用户偏好实体分类方法及系统 |
CN107135143A (zh) * | 2017-03-27 | 2017-09-05 | 厦门快商通科技股份有限公司 | 多聊天机器人切换系统及其对话方法 |
CN107133349B (zh) * | 2017-05-24 | 2018-02-23 | 北京无忧创新科技有限公司 | 一种对话机器人系统 |
CN107133349A (zh) * | 2017-05-24 | 2017-09-05 | 北京无忧创新科技有限公司 | 一种对话机器人系统 |
CN107301213A (zh) * | 2017-06-09 | 2017-10-27 | 腾讯科技(深圳)有限公司 | 智能问答方法及装置 |
CN107766416A (zh) * | 2017-09-08 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 数据分析方法、装置及系统 |
CN109760041B (zh) * | 2017-11-10 | 2022-05-06 | 贝斯平环球公司 | 基于聊天机器人的云管理系统及其操作方法 |
CN109760041A (zh) * | 2017-11-10 | 2019-05-17 | 贝斯平环球公司 | 基于聊天机器人的云管理系统及其操作方法 |
CN108400933A (zh) * | 2018-03-21 | 2018-08-14 | 广东您好科技有限公司 | 一种基于语义理解和知识图谱实现智能通讯的方法及装置 |
CN108573705A (zh) * | 2018-07-17 | 2018-09-25 | 上海应用技术大学 | 智能语音聊天器 |
CN109151548A (zh) * | 2018-08-31 | 2019-01-04 | 北京优酷科技有限公司 | 界面交互方法及装置 |
CN109271498B (zh) * | 2018-09-14 | 2022-02-22 | 南京七奇智能科技有限公司 | 面向虚拟机器人的自然语言交互方法及系统 |
CN109271498A (zh) * | 2018-09-14 | 2019-01-25 | 南京七奇智能科技有限公司 | 面向虚拟机器人的自然语言交互方法及系统 |
CN111881266A (zh) * | 2019-07-19 | 2020-11-03 | 马上消费金融股份有限公司 | 一种应答方法及装置 |
US11159457B2 (en) | 2019-11-12 | 2021-10-26 | International Business Machines Corporation | Chatbot orchestration |
CN112989822A (zh) * | 2021-04-16 | 2021-06-18 | 北京世纪好未来教育科技有限公司 | 识别对话中句子类别的方法、装置、电子设备和存储介质 |
CN112989822B (zh) * | 2021-04-16 | 2021-08-27 | 北京世纪好未来教育科技有限公司 | 识别对话中句子类别的方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101076061A (zh) | 一种机器人服务器及自动聊天方法 | |
CN101076060A (zh) | 一种聊天机器人系统及自动聊天方法 | |
US11645547B2 (en) | Human-machine interactive method and device based on artificial intelligence | |
CN106202301B (zh) | 一种基于深度学习的智能应答系统 | |
US11328017B2 (en) | Method and system for generating a conversational agent by automatic paraphrase generation based on machine translation | |
US9317501B2 (en) | Data security system for natural language translation | |
US9154629B2 (en) | System and method for generating personalized tag recommendations for tagging audio content | |
US7415409B2 (en) | Method to train the language model of a speech recognition system to convert and index voicemails on a search engine | |
CN101076184A (zh) | 一种实现自动应答的系统及方法 | |
EP2157571A2 (en) | Automatic answering device, automatic answering system, conversation scenario editing device, conversation server, and automatic answering method | |
US20200066259A1 (en) | Intelligence-driven virtual assistant for automated idea documentation | |
CN101256557A (zh) | 自定义词管理装置、方法及分词系统 | |
CN1219266C (zh) | 一种实现多路对话的人-机汉语口语对话系统的方法 | |
CN103458056A (zh) | 自动外呼系统基于自动分类技术的语音意图判定方法 | |
CN1842788A (zh) | 对话支援装置 | |
CN102460423A (zh) | 使用重新识别和统计分类的识别 | |
US20100204984A1 (en) | Virtual pet system, method and apparatus for virtual pet chatting | |
CN109325091A (zh) | 兴趣点属性信息的更新方法、装置、设备及介质 | |
CN109739969A (zh) | 答案生成方法和智能会话系统 | |
CN101075301A (zh) | 虚拟宠物系统和虚拟宠物聊天方法、装置 | |
CN113067950A (zh) | 一种智能讯呼平台 | |
CN113806503A (zh) | 一种对话融合方法和装置及设备 | |
CN112287082A (zh) | 结合rpa与ai的数据的处理方法、装置、设备及存储介质 | |
CN110011898A (zh) | 电子邮件的回复方法、装置、存储介质及计算机设备 | |
KR102357620B1 (ko) | 챗봇 채널연계 통합을 위한 챗봇 통합 에이전트 플랫폼 시스템 및 그 서비스 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20071121 |