专属个人的聊天机器人的实现——图灵机器人

先体验一下:图灵机器人智能聊天体验http://www.tuling123.com/openapi/cloud/proexp.jsp

1、简介

       本篇为大家介绍使用图灵机器人api实现聊天机器人的方法,该api本身已经拥有了智能聊天的功能,但我们可以自定义知识库的方式简单实现专属个人的聊天机器人。

2、开发步骤

      下面就以java开发为例,编写一个简单的网页聊天机器人,主要的开发过程如下:

1、编写一个简单的jsp页面(用于和自己的项目后台交互,提交请求内容、接收显示处理结果)

HTML代码

<body>  
    <textarea rows="5" cols="" placeholder="请输入内容" name="info" id="info"></textarea>  
    <br>  
    <input type="button" onclick="doSubmit()" value="提交">  
    <br>  
    <label id="res"></label>  
  </body>

JS代码

<script type="text/javascript">  
  
    function doSubmit(){  
        var info = $('#info').val()  
        var url='自己项目的后台接口(如servlet)';    
        $.get(url, {  
        info : info,  
        key : 注册图灵机器人帐号获取key  
    }, function(json) {  
        if(json != null){  
            alert(json);  
            document.getElementById("res").innerText = json;  
        }else{  
            document.getElementById("res").innerText = '无返回值';  
        }  
    });  
      
    }  
      
    </script>

2、项目后台接收页面请求内容,调用图灵api接口,返回处理结果(核心逻辑代码)

JAVA后台服务端代码(发送httpget请求,请求图灵机器人)

/** 调用图灵机器人平台接口 
    *   需要导入的包:commons-logging-1.0.4.jar、 httpclient-4.3.1.jar、httpcore-4.3.jar  
    */  
    public void getTulingApi() {      
  
        String INFO = URLEncoder.encode("北京今日天气", "utf-8");  
        String requesturl = "http://www.tuling123.com/openapi/api?key=注册激活获取的keykey&info="+INFO;  
        HttpGet request = new HttpGet(requesturl);  
        HttpResponse response = HttpClients.createDefault().execute(request);  
  
        //200即正确的返回码  
        if(response.getStatusLine().getStatusCode()==200){  
            String result = EntityUtils.toString(response.getEntity());  
            System.out.println("返回结果:"+result);  
        }  
    }

3、到此,这个简单的网页聊天机器人就开发完成,但是所有的聊天回复内容都是图灵机器人api本身的知识库,各位只需要登录其官网,通过知识库页面批量导入自己的问题和答案,就可让机器人回答自己定义的内容,实现专属个人的聊天机器人。

图灵机器人智能聊天体验http://www.tuling123.com/openapi/cloud/proexp.jsp

转自:http://blog.csdn.net/hguisu/article/details/38512543

原创文章,作者:s19930811,如若转载,请注明出处:http://www.178linux.com/2504

(0)
s19930811s19930811
上一篇 2016-03-28 23:16
下一篇 2016-03-28 23:18

相关推荐

  • 正则 grep查找find(xargs)练手

    1、显示当前系统上root、fedora或user1用户的默认shell; ~]# grep -E "^(root|fedora|user1)\>" /etc/passwd | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello(); ~]# gre…

    Linux干货 2016-10-24
  • N25 – Week6 作业

    春节过去了,我们又开学了,又可以写博客,做作业了,好开心. 下面是第6周的博客作业: 请详细总结vim编辑器的使用并完成以下练习题: 1. 复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc/sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@dhcp-10-129-6-166 ~]# …

    Linux干货 2017-02-13
  • N25_第三周作业_leon

    N25_第三周作业_leon 1.       列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who 全部 jj       tty1  …

    Linux干货 2017-01-06
  • week2

    一、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 常用工具cp mv rm cat tac head tail more less stat cp   cp SRC…DEST A. 如果SRC是文件: a. 如果目标不存在:新建DEST,并将SRC中的内容填充至DEST中。 b. 如果目标存在: (1). 如…

    Linux干货 2016-11-06
  • shell– 脚本编程

    编程基础 脚本基本格式 变量 运算 条件测试 流程控制 函数 数组 高级字符串操作 高级变量 配置用户环境 编程基础 程序:指令+数据 程序编程风格:     过程式:以指令为中心,数据服务于指令     对象式:以数据为中心,指令服务于数据 shell程序:提供了编程能力,解释…

    Linux干货 2016-08-21
  • 《 Git 权威指南 》学习笔记

    这个没办法直接发博客了,篇幅太长,无法直接在 Blog 上排版了,直接发上 pdf 文档了。 接 《LNAMP Shell 部署脚本》 博文的内容,线上测试系统的 Git 环境部署。 整个 Git 环境包括了:     Git / Gitweb     Gitolite / Gerrit &nbsp…

    Linux干货 2015-10-27