ChatterBot之快速入门01
本人运行环境为Python 3.5.2;
首先你需要导入chatterbot 的包,如果没有你先需要下载 使用命令 pip install chatterbot
1 # -*- coding: utf-8 -*-
2 from chatterbot import ChatBot
3
4 bot = ChatBot(
5 'Norman',
6 storage_adapter='chatterbot.storage.SQLStorageAdapter',
7 input_adapter='chatterbot.input.TerminalAdapter',
8 output_adapter='chatterbot.output.TerminalAdapter',
9 logic_adapters=[
10 'chatterbot.logic.MathematicalEvaluation',
11 'chatterbot.logic.TimeLogicAdapter'
12 ],
13 database='./database.sqlite3'
14 )
15
16 while True:
17 try:
18 bot_input = bot.get_response(None)
19
20 except(KeyboardInterrupt, EOFError, SystemExit):
21 break
下面是简单测试的结果不过现在的Norman还是傻傻的.
E:\Pythons\python.exe F:/PhyWorkSpeace/bot/botTest.py
hi
hi
你好
The current time is 04:08 PM
^D Process finished with exit code 0
注意在的第一次执行时,会自动生成库.是系统带的简单的库.

storage_adapter='chatterbot.storage.SQLStorageAdapter',这是储存是储存适配器
input_adapter='chatterbot.input.TerminalAdapter',这是输入适配器
output_adapter='chatterbot.output.TerminalAdapter',这是输出适配器
logic_adapters=[
'chatterbot.logic.MathematicalEvaluation', 'chatterbot.logic.TimeLogicAdapter' ],
logic_adapters参数是逻辑适配器的列表。 在ChatterBot中,逻辑适配器是一个接受输入语句并返回该语句的响应的类。
database='./database.sqlite3'#这是数据库
接下来,您将需要创建一个while循环让您的聊天机器人运行。当特定的异常被触发时,通过跳出循环,当用户进入ctrl + d/ctrl + c时,我们可以退出循环并停止程序。
while True:
try:
bot_input = bot.get_response(None) except(KeyboardInterrupt, EOFError, SystemExit):
break
这样就是一个简单的机器人出来了,关于如何训练,和使用外部数据库,请听下回分解.
ChatterBot之快速入门01的更多相关文章
- 微信小程序_快速入门01
这段时间,嗯,大四课程已经结束了,工作也已经找到了,但是呢,到公司报道的时间还没到,哈哈,马上就开始人生的第一份工作了,怎么说确实有点期待~ 在这段时间一方面为第一份工作做各种准备,另一方面也没有停止 ...
- ETCD快速入门-01 ETCD概述
1.ETCD概述 1.1 ETCD概述 etcd是一个高可用的分布式的键值对存储系统,常用做配置共享和服务发现.由CoreOS公司发起的一个开源项目,受到ZooKeeper与doozer启发而 ...
- docker快速入门01——docker安装与简单应用
1.docker简介 Docker 是一个开源的应用容器引擎,Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化 ...
- 【PHP快速入门】 第二节 php基本语法
1.什么地方能写PHP代码? php代码需要写在php标识符内,就是这个东西: 在我们编写一个php程序时,必须要在这个文件里面写上 2.PHP语句要不要加分号? 有的地方要加,有的地方不要加.(似乎 ...
- AngularJS快速入门指南01:导言
AngularJS使用新的attributes扩展了HTML AngularJS对单页面应用的支持非常好(SPAs) AngularJS非常容易学习 现在就开始学习AngularJS吧! 关于本指南 ...
- MyBatis 学习总结 01 快速入门
本文测试源码下载地址: http://onl5wa4sd.bkt.clouddn.com/MyBatis0918.rar 一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级 ...
- Nginx快速入门菜鸟笔记
Nginx快速入门-菜鸟笔记 1.编译安装nginx 编译安装nginx 必须先安装pcre库. (1)uname -a 确定环境 Linux localhost.localdomain 2.6. ...
- AngularJS快速入门指南02:介绍
AngularJS是一个JavaScript框架.它可以通过<script>标记被添加到HTML页面中. AngularJS通过指令对HTML属性进行了扩展,然后通过表达式将数据绑定到HT ...
- Yacc 与 Lex 快速入门
Yacc 与 Lex 快速入门 Lex 与 Yacc 介绍 Lex 和 Yacc 是 UNIX 两个非常重要的.功能强大的工具.事实上,如果你熟练掌握 Lex 和 Yacc 的话,它们的强大功能使创建 ...
随机推荐
- css中居中方法小结
---恢复内容开始--- 1.文字垂直居中 .header_nav-item{ height:38px; line-height:38px; } 即文字所在模块的高度和行高设置成一样的! 2.块元素垂 ...
- 开发手机APP的神器 --- ionic
前 言 在如今的生活中,手机已经与我们的生活紧紧的联系在了一起.而手机APP更是其中,重要的一环.今天,影子就为大家介绍一种开发手机APP的超级神器---ionic. ioni ...
- iOS 之 protocol的相关问题
定义一个协议, 一个协议可以扩展子另一个协议 如果需要扩展多个协议中间使用逗号分隔 //定义一个协议 @protocol AnimalDelegate <NSObject, ***> @r ...
- Selenium Grid分布式测试入门详解
本文对Selenium Grid进行了完整的介绍,从环境准备到使用Selenium Grid进行一次完整的多节点分布式测试. 运行环境为Windows 10,Selenium版本为 3.5.0,Chr ...
- Strtus2框架笔记
Struts2以WebWork优秀的设计思想为核心,吸收了 Struts框架的部分优点,提供了一个更加整洁的MVC设计模式实现的Web 应用程序框架. Struts2引入了几个新的框架特性:从逻辑中分 ...
- windows中通过bat批处理打开exe文件
1.想要运行的程序: C:\Program Files\Windows Media Player\wmplayer.exe C:\Program Files\Haihaisoft Universal ...
- GCD Again
GCD Again Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- Air Raid
Air Raid Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...
- window.onload,document.ready
执行时间 window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行. $(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕. 编写个数不同 wind ...
- 学习笔记TF060:图像语音结合,看图说话
斯坦福大学人工智能实验室李飞飞教授,实现人工智能3要素:语法(syntax).语义(semantics).推理(inference).语言.视觉.通过语法(语言语法解析.视觉三维结构解析)和语义(语言 ...