中博教育教育 主页 > 中博教育资讯 > 正文

美女技术帝教你如何开发“小黄鸡”

2013-02-19 17:23 点击咨询

  近日,聊天机器人软件“小黄鸡”在人人网上火了起来,仅用了11天,它就在人人网拥有了220万粉丝,并仍然在以每小时增加1万粉丝的神速在聚集人气!小黄鸡之所以走红,是因为它的回复上知天文、下知地理,又插科打诨、卖萌搞怪;它永远在线,是最好的倾听者,没事时与“小黄鸡”聊聊,可以打发时间、其乐无穷。

  那么,如何开发小黄鸡这样的受人欢迎的手机或者网页应用呢? 一位美女技术牛人在她的博客上做了介绍。小编在她的教程中整理出了易于理解的部分,有兴趣的同学可以跟着学、做出自己的“小黄鸡”或者“小黄鸭”等等聊天机器人软件。

  Part 1 什么是小黄鸡

  小黄鸡是一个典型的人工智能的聊天机器人,它的原型是韩国一家公司开发的智能聊天机器人SimSimi。那么什么是聊天机器人呢?简单地说,就是基于人工智能原理(Artificial Intelligence,以下简称AI),通过对聊天文本进行分析后给出应答的一类程序。

  Part 2 小黄鸡的基本原理

  聊天机器人小黄鸡的工作可以被分成两个部分:训练+匹配。小黄鸡中的“教学”,就是训练的过程,目的在于构建或是丰富词库。小黄鸡中的“聊天”,其实就是一个“匹配”过程,这个过程可以被描述成如下流程:

  以上两个部分涉及涉及到两个核心问题:
  1.给出一个话题时,系统是如何分词的?
  2.词库要如何设计才能又快又准地应答?
这两个问题涉及到“中文语意分析”这个AI领域前沿的研究方向,以及词库的数据结构如何设计这样比较复杂的问题,我们在此先省略,有兴趣的同学可以自行研究。

  Part 3 如何开发小黄鸡

  根据第二部分所介绍的原理可见,个人想要真正完成整个小黄鸡的制作是非常有难度的;但是我们可以跳过对智能算法的研究,利用接口、直接调用SimSimi的库。

  下面这个网址给出了SimSimi的官方API文档:http://developer.simsimi.com/api
  文档已经写得非常清晰了,http://api.simsimi.com/request.p?key=your key&lc=en&ft=1.0&text=hi这一行代码就是在调用官方API接口!也就是说,只要你申请到了key,就能调用simi的API,是不是想想就很爽?下面来讲解一下怎么做,我选择J2EE平台,MVC模式,JSP+JAVA语言。

  最核心的思想是这样的:我们将从表单中获取的字符串,送去调用官方API接口,用request对象返回结果,再打到屏幕上。
  下面介绍详细算法流程:
  S1:talk.jsp——用户填写表单内容,将参数String text传递给chuil.jsp;
  S2:chuli.jsp——request对象获取传递来的参数,调用API,用Content类中的getContent(urls)方法获取网页的内容,返回结果String ans,将ans传递给talk.jsp;
  S3:talk.jsp——request对象获取传递来的参数ans,将ans打印到屏幕上。结束。

  总结

  经过这么多的介绍,大家是不是对类似小黄鸡(SimSimi)的人工智能聊天机器人有了初步的认识。其实来中博教育徐州中博学习3G手机开发技术,你不仅可以学到类似于如何开发“小黄鸡”等智能手机应用的方法,更能够吃透技术原理、从而发挥创意,制作出属于自己的原创应用!怎么样,酷吧?

试听课
徐州市中博教育培训中心    版权所有    苏ICP备13053530号
地址:徐州市解放南路181号中博教育徐州中博(六中对面)        矿大校区地址:徐州市解放南路中国矿业大学(文昌校区西校区)
电话:0516-85628888        邮编:221000

苏公网安备 32030302000208号