python英文聊天机器人(亲测可用)
python英文聊天机器人(亲测可用)
本文参考https://www.cnblogs.com/youcong/p/10462924.html
第一步:
下载所需包
pip install aiml
出现Successfully installed aiml-0.9.2即安装成功
第二步:
编写代码
导入包:
import sys
import os
import aiml
获得语料库目录:
def _get_module_dir(name):if os.environ.get('show-info', False):print('module', sys.modules[name])path = getattr(sys.modules[name], '__file__', None)if os.environ.get('show-info', False):print(path)if not path:raise AttributeError(f'module {name} has not attribute __file__')return os.path.dirname(os.path.abspath(path))
创建机器人:
_alice_path = _get_module_dir('aiml') + '\\botdata\\alice'
os.chdir(_alice_path)
_alice = aiml.Kernel()
_alice.learn("startup.xml")
_alice.respond('LOAD ALICE')
定义聊天函数:
def english_chat(message: str):return _alice.respond(message)
第三步:
如果你按上代码执行,可能看到如下起飞(我已经起飞)
报错信息是说time包不支持clock函数了(我的python是3.8)
解决方案:
找到Kernel.py,我的Kernel.py在
F:\anaconda3\lib\site-packages\aiml下。将第335行
start = time.clock()
改为:
start = time.time()
然后把第356行
print( "done (%.2f seconds)" % (time.clock() - start) )
改为:
print( "done (%.2f seconds)" % (time.time() - start) )
最后附上全部代码:
import sys
import os
import warnings
try:import aiml
except (AttributeError, ImportError):print('''If you want to use english chat robot, please update lib aiml's Kernel.py
line 335 "start = time.time()" to:
"start = time.clock()"
and line 356 "print( "done (%.2f seconds)" % (time.clock() - start) )" to:
"print("done (%.2f seconds)" % (time.time() - start))"''')warnings.warn('aiml module is wrong')sys.exit(1)def _get_module_dir(name):if os.environ.get('show-info', False):print('module', sys.modules[name])path = getattr(sys.modules[name], '__file__', None)if os.environ.get('show-info', False):print(path)if not path:raise AttributeError('module %s has not attribute __file__' % name)return os.path.dirname(os.path.abspath(path))_alice_path = _get_module_dir('aiml') + '\\botdata\\alice'
os.chdir(_alice_path)
_alice = aiml.Kernel()
_alice.learn("startup.xml")
_alice.respond('LOAD ALICE')def english_chat(message: str):return _alice.respond(message)if __name__ == '__main__':while True:msg = input('Please input, input q to quit: ')if msg == 'q':sys.exit(0)print('Robot:', english_chat(msg))
python英文聊天机器人(亲测可用)相关推荐
- YDOOK: Sanic: Python request post请求 上传照片或文件 详细具体步骤 亲测可用!
YDOOK: Sanic: Python request post请求 上传照片或文件 详细具体步骤 亲测可用! ©YDOOK JYLin 1. 项目目录架构: Upload result: 上传结果 ...
- 谷歌翻译不用代理可用的免费api python版本亲测可用
上一篇写的最新2022亲测可用的免费google翻译api_金乌爬虫的博客-CSDN博客_免费的翻译api需要使用国外的代理才能使用,那有直接能用的API 答案是绝对,有. 前端时间看了一个 &quo ...
- python构建聊天机器人之录制声音保存为音频文件(利用pyaudio进行录音)
最近心血来潮想利用 python构建一个智能语音聊天机器人,这样就能在我们无聊的时候和我们聊天以此打发时间啦:). 要想最终实现聊天机器人的构建需要经过一系列过程功能的实现,大致思路为程序接受用户的语 ...
- python制作聊天机器人原理_用 Python 来做一个聊天机器人吧!(一)
在我的一个回答里,我提到了用 Python 搭建聊天机器人.从今天开始,我就带着大家从0开始搭建一个聊天机器人. (顺便说一句,我喜欢把链接像上面这样加在文字里,如果找不到文中所说的资源,可以看看周围 ...
- centos7.3部署django用uwsgi和nginx[亲测可用]
centos7.3部署django用uwsgi和nginx[亲测可用] 现在nginx nginx version: nginx/1.10.2 uwsgi 2.0.17 django2.0.5 都已经 ...
- Python搭建聊天机器人
Python用AIML搭建聊天机器人 AIML,全名为Artificial Intelligence Markup Language(人工智能标记语言),是一种创建自然语言软件代理的XML语言,是由R ...
- 【wencai】一文学会通过wencai包访问同花顺i问财实现AI选股(已修复链接报错问题,并扩展函数功能,修改后源代码亲测可用)
一文学会通过wencai包访问同花顺i问财实现AI选股(已修复链接报错问题,并扩展函数功能,修改后源代码亲测可用) 前言 一.准备工作很重要 二.wencai问财怎么用? 1.实用基础篇(wencai ...
- 教给大家怎么跟好友一起看视频?亲测可用
教给大家怎么跟好友一起看视频?亲测可用. 薯片APP 哈喽,大家好.最近很多朋友在后台留言咨询薯片小姐姐怎么跟好友一起看视频,相信大家在日常生活中都会遇到这样的问题,想找可用邀请好友一起同步观看视频的 ...
- jupyter notebook 添加核 (jupyter:ModuleNotFoundError: No module named ‘torch‘) 亲测可用
jupyter notebook 添加核 (jupyter:ModuleNotFoundError: No module named 'torch') 亲测可用 刚刚解决了一个困扰老衲很久的问题,开心 ...
最新文章
- 难以置信!小冰数字孪生虚拟人直播70天,没人发现不是真人
- 服务器无法显示大内存的处理办法
- 提高oracle查询效率
- wagtail python cms 测试部署
- python (3.5)字符串 持续更新中………………
- 布局练习——选择水果
- 【转】C# HttpWebRequest提交数据方式
- java工作笔记017---java8新特性_使用lamda表达式进行List分组_排序_去重_随时更新
- 《程序员代码面试指南》it名企算法与数据结构题目最优解(第二版)刷题笔记11
- 最新的ARM-GCC下载安装指南
- SaaS vs 低代码,谁在成为中国产业服务的楔子?
- 理解容器中超易混淆 Attach 和 Exec 的异同
- 如何搭建APP分发平台分发平台搭建教程
- verilog之分频大全
- 镜像miracast投屏软件_什么是Miracast投屏,Miracast是怎么投屏的?
- thinkpad e40 安装 nvidia显卡驱动之后
- 谷歌旗下专业图片编辑Snapseed获重大更新
- MySQL性能优化Buffer Pool详细介绍
- mysql 备份 第三方工具_目前主流的数据库备份第三方工具都有哪些比较好用
- LinuxTina动态调压调频配置与实现