ChatterBot
ChatterBot是一个基于机器学习的聊天机器人引擎,构建在python上,也是python的一个库
chatterbot的聊天逻辑和输入输出以及存储,是由各种adapter来限定的
构建ChatBot并指定Adapter
创建ChatBot对象来构建一个ChatBot
bot = ChatBot(name,若干Adapter...)
如:bot = ChatBot(“newBot”,input_adapter="chatterbot.input.VariableInputTypeAdapter",)
Apdater类型:
logic_adapters:机器人应答逻辑
Closest Match Adapter :字符串模糊匹配(编辑距离)
Closest Meaning Adapter :借助nltk的WordNet,近义词评估
Time Logic Adapter :处理涉及时间的提问
Mathematical Evaluation Adapter: 涉及数学运算
storage_adapters:存储器后端
Read Only Mode :只读模式,当有输入数据到chatterbot的时候,数
据库并不会发生改变
Json Database Adapter :用以存储对话数据的接口,对话数据以Json格式
进行存储。
Mongo Database Adapter 以MongoDB database:方式来存储对话数据
input_adapters:输入形式
Variable input type adapter :允许chatter bot接收不同类型的输入的,如strings,dictionaries和Statements
Terminal adapter :使得ChatterBot可以通过终端进行对话
HipChat Adapter :使得ChatterBot 可以从HipChat聊天室获取输入语句,通过HipChat 和 ChatterBot 进行对话
Speech recognition :语音识别输入,详见chatterbot-voice
output_adapters:输出形式
Output format adapter:支持text,json和object格式的输出
Terminal adapter
HipChat Adapter
Mailgun adapter:允许chat bot基于Mailgun API进行邮件的发送
Speech synthesisTTS(Text to speech)部分,详见chatterbot-voice