aiml 怎么让机器人输出<号?

本文章中讲介绍用PHP实现的一个小聊天机器人程序,用到了php操做dom相关的知识和mysql数据库,能够用来学习。代码能够从下载。php

该聊天机器人是参考AIML 2.5和而写成的,这聊天机器人实现的aiml标签和标准的aiml标签由必定的差距,因此你从网上下载的aiml语料库可能无法正常工做。适用于UTF-8编码的,单词后缀根据不一样的时态而改变的那些语言。感兴趣的朋友能够本身研究学习一下。mysql

这是一个用PHP写的aiml解析器,目前在PHP5.4环境上能正常运行。git

你能够打开index.php进行和机器人聊天作测试。数组

修改以后的匹配规则 :

本聊天机器人的aiml标签和标准aiml标签有所不一样,我根据需求对标签作了一些个性化,咱们能够在AIML.MD文件里面查到更多本聊天机器人所支持的标签。

当你给api.phpGET方式发送请求的时候带了userId参数, 这个参数会看成用户的惟一标识。若你没给这个参数,程序会用用户的ip看成惟一标示。

若是你把'chatbot/Config.php'文件里面的multiChatbot设置成false,全部的用户会分享一个defaultchatbot。当你设置成true的时候每一个用户都会拥有独立的chatbot,这些chatbot会吧userId做为惟一标示,每一个用户给本身的chatbot设置相关名字,性别,年龄之类的属性。当你在写一个语音助手之类的时候多个chatbot功能会特别好用,由于用户能够给本身的语音助手设置名字了。

userInfo和botInfo是指用户和聊天机器人的一些属性,例如姓名,年龄,性别等等。用户能够改变这些属性,固然这是咱们当写aiml语料库的时候经过一些标签来实现的,咱们能够从AIML.MD 学习set, get, del, user, bot等有关标签。

等标签会操做Parser::$_data数组,每次程序开始运行的时候程序会从这个表加载数据到这个数组里,而后程序要结束的时候再会存储到这个表里面。表的惟一标示仍是userId


聊天机器人文档(AIML)

国外有一个聊天机器人Alice做的很好,但是不支持中文,我修改其内置的AIML解析器的源代码使其支持中文,并且增加了机器人的学习功能,最后还集成了数据库。我将自己做过的一些工作整理成一个文档,希望大家能来这里给我点建议(/wangxiaolongbob/article/details/8090897)。收起

我要回帖

更多关于 机器人编码 的文章

 

随机推荐