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

先体验一下:图灵机器人智能聊天体验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
下一篇 2016-03-28

相关推荐

  • 第六周作业

    请详细总结vim编辑器的使用并完成以下练习题 基本模式:     编辑模式,命令模式     输入模式     末行模式         内置的命令行接口 打开…

    Linux干货 2017-02-14
  • 文件压缩,解压缩及归档

        在Linux的环境中,压缩文件的扩展名大多是:“*.tar, *.tar.gz, *.gz, *.Z, *.bz2, *.xz”,因为 Linux 支持的压缩指令非常多,且不同的指令所用的压缩技术并不相同,当然彼此之间可能就无法互通压缩/解压缩文件,当你下载到某个压缩文件时,自然就需要知道该文件是由哪种压缩指令…

    Linux干货 2016-08-18
  • http

    http 笔记整理

    Linux干货 2018-01-31
  • 马哥教育网络20期+第7周练习博客

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;    (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@7b ~]#&nbsp…

    Linux干货 2016-07-24
  • 常见HTTP code大全

    1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码。 代码 说明 100 (继续) 请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。  101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。 2xx (成功)表示成功处理了请求的状…

    Linux干货 2016-09-19
  • 第一周作业

    一、计算机的基本组成和功能   cpu包括运算器、控制器、寄存器、缓存       运算器:计算功能,对数据进行加工处理的的部件;       控制器:负责从存储器取出指令,控制cpu计算器之间的运行结果和状态;       寄存器:暂存指令和数据的地方,存储…

    Linux干货 2016-12-04