ChatterBot之使用mongodb 03
Posted DanBrown
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ChatterBot之使用mongodb 03相关的知识,希望对你有一定的参考价值。
上一篇我们已经搭建好了mongodb环境,本篇为简单示例.
废话不多说先上代码然后开始讲解;
!!!别忘了打开你的mongdb服务!!!,如果没有mongodb请看上篇如何安装mongodb;
# -*- coding: utf-8 -*- from chatterbot import ChatBot from chatterbot.trainers import ListTrainer from chatterbot.trainers import ChatterBotCorpusTrainer import logging # Uncomment the following line to enable verbose logging #logging.basicConfig(level=logging.INFO) # Create a new ChatBot instance chatbot = ChatBot( \'Norman\', storage_adapter=\'chatterbot.storage.MongoDatabaseAdapter\', logic_adapters=[ \'chatterbot.logic.BestMatch\', \'chatterbot.logic.MathematicalEvaluation\', \'chatterbot.logic.TimeLogicAdapter\' ], filters=[ \'chatterbot.filters.RepetitiveResponseFilter\' ], input_adapter="chatterbot.input.TerminalAdapter", output_adapter="chatterbot.output.TerminalAdapter", trainer=\'chatterbot.trainers.ListTrainer\', database="chatterbot-1w", database_uri="mongodb://192.168.2.128:27017/", read_only=True ) print(\'Type something to begin...\') while True: try: bot_input = chatbot.get_response(None) # Press ctrl-c or ctrl-d on the keyboard to exit except (KeyboardInterrupt, EOFError, SystemExit): break;
1.filters条件RepetitiveResponseFilter, 这是一个滤波器,它的作用是滤掉重复的回答;
2.database="chatterbot-1w",这时你的数据库名称,如果没有,首次他会自动创建;
3.database_uri="mongodb://192.168.2.128:27017/", 这是设置你的数据库所在的地址端口号;
4.read_only=True
ChatterBot是会对每个输入的语句进行学习的。如果想要使得你已经训练过的bot不再继续学习输入的语句,可以通过以下方式进行设置,在初始化的时候将read_only设置为True。
关于如如何训练,请听下回分解;
以上是关于ChatterBot之使用mongodb 03的主要内容,如果未能解决你的问题,请参考以下文章