ChatterBot之快速入门01
2024-08-30 15:52:56
本人运行环境为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中,逻辑适配器是一个接受输入语句并返回该语句的响应的类。
您可以选择使用尽可能多的逻辑适配器。 在这个例子中,我们将使用两个逻辑适配器。 TimeLogicAdapter返回输入语句要求的当前时间。 MathematicalEvaluation适配器解决了使用基本操作的数学问题。
database='./database.sqlite3'#这是数据库
接下来,您将需要创建一个while循环让您的聊天机器人运行。当特定的异常被触发时,通过跳出循环,当用户进入ctrl + d/ctrl + c时,我们可以退出循环并停止程序。
while True:
try:
bot_input = bot.get_response(None) except(KeyboardInterrupt, EOFError, SystemExit):
break
这样就是一个简单的机器人出来了,关于如何训练,和使用外部数据库,请听下回分解.
最新文章
- 为Gradle添加tomcat插件,调试WEB应用
- hdu 1849 Rabbit and Grass 博弈论
- Penalty
- Redis缓存实现单点登录SSO
- 阅读&;lt;反欺骗的艺术&;gt;思考
- NOIP2015普及组第四题推销员
- android-------手写签名系统的设计与实现之实现画笔设置
- Java编程练习(四)——集合框架应用
- python 3 中的raw_input 报错
- volatile CAS
- swiper使用中一些点的总结
- ASP.Net上传文件
- 前端之css样式(选择器)。。。
- mysql Column count doesn't match value count at row 1
- Kubernetes1.91(K8s)安装部署过程(二)--证书kubeconfig文件创建
- Java快速排序和归并排序详解
- mybatis由浅入深day01_1课程安排_2对原生态jdbc程序中问题总结
- binary tree
- Collection集合学习(一)———Set接口与具体实现
- Linux Nginx环境安装配置redmine3.1
热门文章
- [poj1644]放苹果
- Java基础总结--IO总结2
- jsp <;input type=";checkbox"; name=";fileId";>; 是否选中
- 改变 font Awesome、Ionic 图标属性
- 主键乱序插入对Innodb性能的影响
- 4天精通arcgis
- ubuntu上安装adt时无法在线安装的问题
- sudo使用详细讲解
- D3.js使用过程中的常见问题(D3版本D3V4)
- JavaNIO阻塞IO