使用使用Python AIML搭建聊天机器人的方法示例搭建聊天机器人的方法示例
主要介绍了使用Python AIML搭建聊天机器人的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个
参考。一起跟随小编过来看看吧
AIML全名为Artificial Intelligence Markup Language(人工智能标记语言),是一种创建自然语言软件代理的XML语言,是由
RichardS. Wallace 博士和Alicebot开源软件组织于1995-2000年间发明创造的。AIML是一种为了匹配模式和确定响应而进行
规则定义的 XML 格式。
AIML的设计目标如下:的设计目标如下:
1. AIML应当为大众所易学易会。
2. AIML应当使最小的概念得以编码使之基于L.I.C.E支持一种刺激-响应学科系统组件。
3. AIML应当兼容XML。
4. 书写AIML可处理程序文件应当简单便捷。
5. AIML对象应当对人而言具有良好的可读性和清晰度。
6. AIML的设计应当正式而简洁。
7. AIML应当包含对其他语言的依附性。
关于AIML详细的初级读物,可翻阅Alice Bot's AIML Primer。你同样可以在AIML Wikipedia page了解更多 AIML 的内容以及
它能够做什么。借助 Python 的 AIML 包,我们很容易实现人工智能聊天机器人。
1、安装Python aiml库
pip install aiml
2、获取alice资源
Python aiml安装完成后在Python安装目录下的 Lib/site-packages/aiml下会有alice子目录,这个是系统自带的一个简单的语料
库。
3、Python下加载alice
取得alice资源之后就可以直接利用Python aiml库加载alice brain了。
# -*- coding: utf-8 -*-
import aiml
import sys
import os
def get_module_dir(name):
path = getattr(sys.modules[name], '__file__', None)
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') + '/alice'
#切换到语料库所在工作目录
os.chdir(alice_path)
alice = aiml.Kernel()
alice.learn("startup.xml")
alice.respond('LOAD ALICE')
while True:
print alice.respond(raw_input("Enter your message >> "))
上述流程非常的简单,接下来我们要自己从0开始创建自己的机器人。
创建标准启动文件创建标准启动文件
标准的做法是,创建一个名为std-startup.xml的启动文件,作为加载AIML文件的主入口点。在这个例子中,我们将创建一个基
础的文件,它匹配一个模式,并且返回一个相应。我们想要匹配模式load aiml b,然后让它加载我们的aiml大脑作为响应。我
们将在一步内创建basic_chat.aiml文件。
<aiml version="1.0.1" encoding="UTF-8">
<!-- std-startup.xml -->
<!-- Category是一个自动的AIML单元 -->
<category>
<!-- Pattern用来匹配用户输入 -->
评论0