继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Python实现聊天机器人

慕村9548890
关注TA
已关注
手记 1102
粉丝 227
获赞 987

一、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 aimlimport sysimport 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.xmlalice.respond('LOAD ALICE') # 加载...\\botdata\\alice目录下的语料库
 while True:
    message = input("Enter your message >> ")    if("exit" == message):
        exit()
    response = alice.respond(message) # 机器人应答
    print(response)

2 运行结果

webp

1.png



作者:海天一树X
链接:https://www.jianshu.com/p/44139a6d8070


打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP