Python搭建聊天机器人
Python用AIML搭建聊天机器人
AIML,全名为Artificial Intelligence Markup Language(人工智能标记语言),是一种创建自然语言软件代理的XML语言,是由Richard Wallace和世界各地的自由软件社区在1995年至2002年发明的。
它的雏形是一个名为”A.L.I.C.E.” (“Artificial Linguistic Internet Computer Entity”)的高度扩展的Eliza机器人。ALICE总共赢得3次每年度的Loebner奖,并且在2004年获得了Chatterbox Challenge的冠军。由于A.L.I.C.E. 的AIML设置是在GNU GPL协议下发布的,所以已经有许多基于该程序和AIML库的“克隆ALICE”出现。目前AIML已经有了Java,Ruby,Python, C ,C#,Pascal等语言的版本。
AIML的官方网站:ALICE。
不过目前aiml上缺少高质量的中文语料库,因此不支持中文聊天。本文搭建的为英文聊天机器人。
本文简单介绍下如何用Python编写简单的聊天机器人。
1. 安装Python aiml库
pip install aiml
2. 获取alice资源
Python aiml安装完成后在Python安装目录下的 Lib/site-packages/aiml下会有alice子目录,将此目录复制到工作区。
或者在Google code上下载alice brain: aiml-en-us-foundation-alice.v1-9.zip
3. Python下加载alice
取得alice资源之后就可以直接利用Python aiml库加载alice brain了:
import aiml
os.chdir('./res/alice') #切换工作目录到alice文件夹下,视具体情况而定
alice = aiml.Kernel()
alice.learn("startup.xml")
alice.respond('LOAD ALICE')
注意加载时需要切换工作目录到alice下。
4. 与alice聊天
加载之后就可以与alice聊天了,每次只需要调用respond接口:
alice.respond('hello') #这里的hello即为发给机器人的信息
5. 用Tornado搭建聊天机器人网站
利用Tornado可以很方便地搭建一个web接口的聊天机器人。具体的代码可以在此链接下在:web接口的聊天机器人。
下载此代码之后直接运行main.py即可,然后可以通过浏览器访问url与聊天机器人,url类似http://localhost/aiml?req=hello的形式(req参数即为发给机器人的信息)。
注意要运行此代码,需要安装Python 的aiml与Tornado库。
lwons.com上已经搭建了这样的web接口,可以访问http://lwons.com/aiml?req=hello来测试下。
6. 搭建聊天机器人微信订阅号
上一步的web接口可以很方便地改造成一个微信订阅号,实现的效果可以添加微信订阅号 CuriousGuys 后直接发送消息。添加CuriousGuys请直接扫码:
如果需要微信订阅号的代码可以在评论区留言。
订阅号效果截图:
Python搭建聊天机器人相关推荐
- python制作聊天机器人原理_用 Python 来做一个聊天机器人吧!(一)
在我的一个回答里,我提到了用 Python 搭建聊天机器人.从今天开始,我就带着大家从0开始搭建一个聊天机器人. (顺便说一句,我喜欢把链接像上面这样加在文字里,如果找不到文中所说的资源,可以看看周围 ...
- python开源聊天机器人ChatterBot——聊天机器人搭建、流程分析、源码分析
开源聊天机器人ChatterBot 3.1 ChatterBot简介 ChatterBot是一个Python库,可以轻松生成对用户输入的自动响应.ChatterBot使用一系列机器学习算法来产生不同 ...
- python对话机器人框架_长篇文讲解:使用Python AIML搭建聊天机器人的方法示例(收藏)...
本文内容主要介绍了使用Python AIML搭建聊天机器人的方法示例,我觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随我过来看看吧 AIML全名为Artificial Intelligenc ...
- Python AIML搭建聊天机器人(附遇到的问题及解决)
Python AIML搭建聊天机器人(附遇到的问题及解决) AIML全名为Artificial Intelligence Markup Language(人工智能标记语言),是一种创建自然语言软件代理 ...
- 【免费福利】零AI基础,如何搭建聊天机器人:技术架构剖析
作为人工智能领域最为重要的技术,自然语言处理的应用在工业界无处不在.从网页公开数据的分析和抽取.情感分析.机器翻译.智能客服.问答系统到聊天机器人,它的重要性不言而喻. 今天我们来探讨一下自然语言处理 ...
- NoneBot2,基于Python的聊天机器人
NoneBot2,基于Python的聊天机器人 第一步,配置python 第二步,配置[go-cqhttp](https://github.com/Mrs4s/go-cqhttp) 第三步,配置[No ...
- python英文聊天机器人(亲测可用)
python英文聊天机器人(亲测可用) 本文参考https://www.cnblogs.com/youcong/p/10462924.html 第一步: 下载所需包 pip install aiml ...
- python aiml_使用Python AIML搭建聊天机器人的方法示例
AIML全名为Artificial Intelligence Markup Language(人工智能标记语言),是一种创建自然语言软件代理的XML语言,是由RichardS. Wallace 博士和 ...
- 不会编程也能搭建聊天机器人?ChatGPT + Notion AI助你一臂之力!
体验链接:Aitrend ChatBot (无需环境,无需账号,打开即用,完全免费,回答能力同ChatGPT) 背景介绍 本文主要谈关于如何使用ChatGPT(实际使用主力工具为Notion AI), ...
最新文章
- fir抽取滤波器matlab,Xilinx FPGA之抽取FIR滤波器的实现
- 成功的产品 = 做得好 + 卖得好
- VS2010解决方案转换到VS2008
- python日期加减源码_Python 时间序列的时间延迟计算
- win10电脑服务器在哪个文件夹下,Win10桌面背景在哪个文件夹?Win10桌面背景所在文件夹介绍...
- 【Redis】1.Redis入门简介以及基本操作命令
- 第三方提权之serv-u提权
- centos 下安装配置nfs服务器
- 使用librtmp进行H264与AAC直播
- c语言oj得pe,ACM入门之OJ~
- Wireshark抓包分析WLAN连接过程
- mysql与gbase获取行号_mysql/gbase数据库全库库表记录数统计
- CSS布局:多种方案实现固定页脚(sticky footer)
- antv g6多次渲染问题解决
- Logic Pro X for Mac(音乐制作软件)
- ListView中如何优化图片
- 自己的网页嵌入外部邮箱登陆
- cmake Could NOT find Boost (missing: xxx 的问题 已解决
- 影之刃服务器维护,影之刃无法联机到服务器怎么办 解决办法
- 领导艺术:如何留住员工的心