python aiml_Python:用aiml构建英语聊天机器人
写在前面的话
安装aiml库
获取语料库路径
获取aiml的安装路径
补充路径名称
切换到语料库所在工作目录
(所有的语料库,是可以自己补充修改的,这里就先用现成的)
创建机器人alice对象
加载语料库
如果是第一次加载语料库,读取数据,同时保存资料至bot_brain.brn
如果是之后再加载语料库,就不需要读取所有数据了,直接读取bot_brain.brn
正式开始聊天
如果遇到用户输入exit,就退出聊天
运行界面
聊天界面
前面的加载过程,是为了调试。实际使用的时候,可以全部注释掉,直接开始对话。
输入exit,程序会自动退出
安装库
pip install aiml
完整代码
# -*- coding: utf-8 -*-
# 加载库
import aiml
import sys
import os
# 获取aiml的安装路径
def get_module_dir(name):
print("module", sys.modules[name])
path = getattr(sys.modules[name], '__file__', None)
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对象
alice = aiml.Kernel()
print("正在加载语料库")
# 这里做一个判断
# 如果是第一次加载语料库,就进入else部分,读取数据,同时保存资料至bot_brain.brn
# 如果是之后再加载语料库,就不需要读取所有数据了,直接读取保存数据bot_brain.brn
if os.path.isfile("bot_brain.brn"):
alice.bootstrap(brainFile = "bot_brain.brn")
else:
alice.learn("startup.xml") # 加载...\\botdata\\alice\\startup.xml
alice.respond('LOAD ALICE') # 加载...\\botdata\\alice目录下的语料库
alice.saveBrain("bot_brain.brn")
print("数据加载完毕,开始对话\n")
# 正式开始聊天
while True:
message = input("Enter your message >> ")
if ("exit" == message):# 如果输入exit,程序退出
exit()
response = alice.respond(message) # 机器人应答
print(response)
break # 结束循环
response = alice.respond(message) # 机器人应答
print(response)
参考资料
python aiml_Python:用aiml构建英语聊天机器人相关推荐
- 用aiml构建英语聊天机器人
用aiml构建英语聊天机器人 整体思路 安装aiml库 获取语料库路径 获取aiml的安装路径 补充路径名称 切换到语料库所在工作目录(所有的语料库,是可以自己补充修改的,这里就先用现成的) 创建机器 ...
- 自然语言处理--基于 AIML 的模式匹配聊天机器人
AIML 是一种基于 XML 标准的声明式语言,它规定了可以在机器人中使用的编程构想和数据结构.我们基于人工智能标记语言(AIML)来定义聊天机器人的模式和回复,构建模式匹配聊天机器人. 展示如何在聊 ...
- chatbot:基于 AIML 的 PHP 聊天机器人
基于AIML的PHP聊天天机器人 本文章中讲介绍用PHP实现的一个小聊天机器人程序,用到了php操作dom相关的知识和mysql数据库,可以用来学习.代码可以从https://github.com/k ...
- php mysql生日提醒_基于AIML的PHP聊天机器人
php中文网最新课程 每日17点准时技术干货分享 chatbot:基于AIML的PHP聊天天机器人 本文章中讲介绍用PHP实现的一个小聊天机器人程序,用到了php操作dom相关的知识和mysql数据库 ...
- aiml php,chatbot:基于 AIML 的 PHP 聊天机器人
原标题:chatbot:基于 AIML 的 PHP 聊天机器人 紧跟技术风向标,不迷失但也绝不落后,Go技术大全公众号正式开启,欢迎关注. 基于AIML的PHP聊天天机器人 0. 介绍 该聊天机器人是 ...
- 使用 Python 实现一个简单的智能聊天机器人
使用 Python 实现一个简单的智能聊天机器人 文章目录 使用 Python 实现一个简单的智能聊天机器人 简要说明 总体的思路 需要准备的环境 接收用户的语音输入, 并将其存为音频文件 调用百度A ...
- 如何用 Slack 和 Kubernetes 构建一个聊天机器人?| 附代码
作者 | Alexander Kainz 译者 | 天道酬勤,责编 | Carol 出品 | AI科技大本营(ID:rgznai100) ChatOps可以让你使用基于聊天的接口来管理DevOps任务 ...
- 深度操作系统 机器学习_深度学习如何构建情感聊天机器人,第2部分对话系统...
深度操作系统 机器学习 情感聊天机器人(emotional chatbot) From part 1, we have built the BERT sentiment predictor, we n ...
- 使用dialogflow和firebase构建whatsapp聊天机器人的指南
ChatBots are conversational agents, programs capable of conducting a conversation with an Internet u ...
- 微软推出 AI 开发免费电子书,手把手教你构建智能聊天机器人
日前,微软推出 AI 开发者免费电子书,教导大家利用微软 AI 平台开发智能聊天机器人.该电子书不长,核心内容共有四十多页,其中涵盖大量代码,相信对于 AI 初学者来说,这将是一本很有用的实战教程. ...
最新文章
- python 定义空集合 和定义空字典的
- Matlab编程与数据类型 -- 开关语句switch/end
- 关于吃掉物理的二次聚合无法实现的需要之旁门左道实现法
- latex_Texstudio+Miktex+Bibtex(参考文献引用信息)
- idea使用ant配置_Linux下Jenkins+ant+jmeter[上]
- 常用数据库的Jdbc连接代码
- usb接口供电不足_电脑USB接口不够用?来试试ORICO条纹hub扩展器吧
- python的tell和seek_python文件对象的seek和tell
- PHP弹窗回送,PHP点点滴滴 一(我抄来滴,非常简单的东西)
- SQL Server 2005 COM+ 目录要求”警告
- C语言按各科分数段统计人数,(更新啦)学校学生成绩统计通用模板(科目、分数、统计分数段等均可自定,班级数、学生人数不受限制)...
- 无法运行的愿意_分享减肥食谱一周瘦10斤,你愿意尝试吗?
- C语言及程序设计进阶例程-12 结构体成员的引用
- 【Python实例第36讲】一个高斯过程回归的例子
- 高通QFIL刷机指南
- Windows Server 2012安装密钥
- html字体有哪些mac,Mac字体推荐
- 2020年最新世界地图_2020世界地图下载
- 华为云计算IE面试笔记-名词解释
- win10计算机不显示usb,win10插入U盘不显示怎么办_解决win10u盘插电脑上不显示的办法...