python训练聊天机器人词库_Python实现聊天机器人的示例代码

本文介绍了AIML(人工智能标记语言)及其在创建自然语言软件代理中的作用,并详细说明了如何使用Python的aiml库实现第一个聊天机器人,包括安装库、获取Alice语料库以及编写和运行聊天机器人程序。
摘要由CSDN通过智能技术生成

一、AIML是什么

AIML全名为Artificial Intelligence Markup Language(人工智能标记语言),是一种创建自然语言软件代理的XML语言,是由RichardS. Wallace 博士和Alicebot开源软件组织于1995-2000年间发明创造的。AIML是一种为了匹配模式和确定响应而进行规则定义的 XML 格式。

二、实现第一个聊天机器人

(一)安装Python aiml库

pip install aiml

(二)获取alice资源

Python aiml安装完成后在Python安装目录下的 site-packages的aiml下会有alice子目录(比如D:\Program Files\Python36\Lib\site-packages\aiml\botdata\alice),这个是系统自带的一个简单的英文语料库。

(三)编程实现机器人聊天

1 程序

# -*- coding: utf-8 -*-

import aiml

import sys

import os

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 = aiml.Kernel() # 创建机器人alice对象

alice.learn("startup.xml") # 加载...\\botdata\\alice\\startup.xml

alice.respond('LOAD ALICE') # 加载...\\botdata\\alice目录下的语料库

while True:

message = input("Enter your message >> ")

if("exit" == message):

exit()

response = alice.respond(message) # 机器人应答

print(response)

2 运行结果

0b4c2b9f791443ed733bedc595870838.png

三、参考资料

https://www.jb51.net/article/143395.htm

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持聚米学院。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值