使用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).