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

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

相关推荐

  • 如何恢复误删除的rpm包命令

    如何恢复误删除的rpm包命令 在linux学习过程中,我们会遇到各种各样的问题,当然,如果能够将遇到的问题一一解决也是非常开心的,因为在解决问题的过程中我们的专业技能也得到了很大的提升。最近的测试中遇到了一个平时很少接触的问题:如何恢复误删除的rpm包命令。所以觉得有必要写下来,以防止下次出现类似的问题而不会解决。 首先模拟卸载rpm rpm -e &#82…

    2017-08-26
  • 马哥教育网络班21期-第五周课程练习

    第五周作业 1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@zz ~]# egrep "^[[:space:]]+" /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有…

    Linux干货 2016-07-29
  • HA Cluster 之 vrrp (keepalived)

      HA Cluster 之 vrrp (keepalived) 0x00 前言 0x01 VRRP 协议 VRRP 简介 VRRP 工作原理 VRRP负载分担方式的特点 VRRP 中的一些术语 0x02 keepalived 功用: 0x03 keepalived 配置 HA Cluster 的配置前提: 配置文件组件部分: 配置文件解析: 附:…

    Linux干货 2017-05-16
  • python-多进程

    进程是由系统自己管理的。 1:最基本的写法 from multiprocessing import Pool def f(x):     return x*x if __name__ == '__main__': &nb…

    Linux干货 2016-11-05
  • 第一周课程练习

    一、计算机组成及其功能。      计算机系统由硬件系统和软件系统两个部分组成。      硬件系统由运算器、控制器、存储器、输入设备、输出设备组成。           运算器是…

    Linux干货 2016-08-15
  • LVM管理

    1、逻辑卷管理器(LVM) (1)逻辑卷管理器(LVM,logical volume manager)可以整合多个物理分区在一起,让这些分区看起来就像一个磁盘一样,而且,还可以在将来其他的物理分区或将其从这个LVM管理的磁盘中删除。这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性,同时LVM还有快照功能。 (2)逻辑卷管理器的基本术语 物理…

    Linux干货 2016-09-01