使用Hobot搭建可学习(调教)的简单会话人工智障.Part1

之前虽然试着用AIML制作不过每句都要自己写太麻烦多所以还是制作个可以学习(被调教)的AI会比较方便。至少可以丢出去让大家来一起玩弄之后看看最后学习的成果。

当然根据之前某魔理沙的结果来看有点危险就是了。不过这才是可玩的AI不是么。

 

于是基本上要用的是Hobot。官方有教程,基本上就是先装好npm(也就是node.js,Linux可以直接通过命令行安装),然后根据官方教程终端里执行以下命令即可。

npm install -g yo generator-hubot
mkdir myhubot
cd myhubot
yo hubot

之后是各种配置信息,比如bot的名字、邮箱等。完事之后执行

bin/hubot

就可以启动bot了。

操作的话基本是hubot <命令>。比如帮助是hubot help。当然注意这里hubot是你自己设定的bot的名字。

 

bot正常工作之后就该装学习脚本了。好在之前已经有人写好了这些所以直接可以借来用,下载之后丢入bot文件夹下的scrtpts文件夹里(比如~/myhubot/scripts/)。然后修改bot文件夹下的hubot-scripts.json文件,默认应该只有”[]”。改成

["talkative.coffee"]

之后保存。然后重新执行bin/hubot。首先输入

hubot forget answers

清空之前的记录(不知道为啥每次启动不清空的话直接调教会报错)。
接着执行

hubot when asked "regexp_of_question" answer "response" 

意思就是当问”regexp_of_question”的时候回答”response”。比如执行

hubot asked hi answer hello

当显示OK, I will answer “hello” when asked “hi”的时候则代表调教成功。下次直接输入hubot hi的时候bot则会回答hello。

至此基于英语的基本调教功能就算完成了,不过bug略多比如每次执行必须先清空数据,而且似乎不支持UTF-8?要支持中文得自己设置编码?总之欢迎各位自己尝试,Part2估计会写如何解决这些问题。

最后还是希望有能力的人能复刻一个当年的魔理沙出来啊_(:з」∠)_

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

:b1 :b2 :b3 :b4 :b5 :b6 more »

Note: Commenter is allowed to use '@User+blank' to automatically notify your reply to other commenter. e.g, if ABC is one of commenter of this post, then write '@ABC '(exclude ') will automatically send your comment to ABC. Using '@all ' to notify all previous commenters. Be sure that the value of User should exactly match with commenter's name (case sensitive).

This site uses Akismet to reduce spam. Learn how your comment data is processed.