实例演示Python开发语言调用AIML库,实现简单的人机对话功能。
在2018年Google开发者大会( I/O)的主题演讲中,Google CEO 颂达尔·皮柴 (Sundar Pichai) 表示,Google Assistant 部门的一个最重要的目标,就是让用户和虚拟助手的对话变得更加自然,就像和真人交流那样。
AI人工智能无疑是未来发展的趋势,Python之所以适合AI项目,其实也是基于Python的很多有用的库都可以在AI中使用。上一篇文章为大家介绍了Python强大的工具库,这篇将演示Python开发语言调用AIML库,简单实现人机对话功能。
一、准备工作:
开发环境:Windows 7 ×64 英文版
JetBrains PyCharm 2017.1.3 x64
测试环境:Windows 7 ×64 英文版
需要技术:
1、Python语言的熟练掌握,Python版本2.7
2、Python服务端开发框架tornado的使用
3、aiml库接口的简单使用
4、HTML+CSS+Javascript(jquery)的熟练使用
5、Ajax技术的掌握
二、实现过程:
1、安装Python aiml库
如何安装Python 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了:
注意加载时需要切换工作目录到alice(刚才复制的文件夹)下。
4、 与alice聊天
加载之后就可以与alice聊天了,每次只需要调用respond接口:
5. 用Tornado搭建聊天机器人网站
Tornado可以很方便地搭建一个web网站的服务端,并且接口风格是Rest风格,可以很方便搭建一个通用的服务端接口。
这里写两个方法:
get:渲染界面
post:获取请求参数,并分析,返回聊天结果
Class类的代码如下:
6. 简单搭建一个聊天界面
该界面是基于BootStrap的,我们简单搭建这么一个聊天的界面用于展示我们的接口结果。同时进行简单的聊天。
7、接口调用
我们异步请求服务端接口,并将结果渲染到界面
8、Python服务端代码及Html前端代码有需要的请留言获取。
三、系统测试
1、首先我们将我们的服务运行起来
2、调用测试
然后我们进行前台界面的调用
这里我们可以看到,我们的项目完美运行,并且达到预期效果。
可能遇到问题:中文乱码 经过测试,中文目前不能进行对话,只能使用英文进行对话操作,有待改善
可以说这是一个技术含量很简单的小案例,在AI时代下任何与人工智能相关的东西都有其发展空间,Python亦是如此,任何Python问题欢迎留言讨论。
仅仅两年前的 I/O,Google Assistant 才首次亮相。很难想象一个刚两岁的新产品已经如此强大,影响和改变着用户数字生活的方方面面。Python编程语言的兴起和AI人工智能的快速发展有着密不可分的关系。
领取专属 10元无门槛券
私享最新 技术干货