业务扩展:图灵机器人调用(API)接口模式的开发流程及其注意事项

业务场景

在网站中添加一个可以回答用户问题的自助服务对话机器人,帮助用户快速灵活了解企业产品信息,增加网页互动能力。

解决方案

通过接入第三方图灵机器人(turing)的开放接口完成对企业语料库编辑控制,数据统计,对话问答,产品反馈等功能;

操作流程

1、申请图灵开发者账号权限,官网网站:http://www.tuling123.com/

2、购买相应套餐获取机器人功能,完成认证之后可获得免费版,未完成认证则需要完成套餐购买;

3、进入个人中心(机器人控制台)设置机器人基本信息,获取机器人相关参数:apiKey,api接口文档等;

4、前端聊天对话框搭建,可以使用三方插件,也可以自行编写,建议对机器人内容组件化(或模块化),实现多项目复用,调用图灵接口传入问题,接口返回问答渲染到对话框;

接口说明

接口地址:http://openapi.turingapi.com/openapi/api/v2

请求方式:POST

请求参数:请求参数格式为 json

请求示例:

复制代码
{
    "reqType":0,
    "perception": {
        "inputText": {
            "text": "附近的酒店", // 对话内容 必传
        },
        "inputImage": {
            "url": "imageUrl", // 图片
        },
        "selfInfo": { // 客户端属性
            "location": {
                "city": "北京",
                "province": "北京",
                "street": "信息路"
            }
        }
    },
    "userInfo": {
        "apiKey": "", // 申请的apiKey, 必传
        "userId": "", // userId, 必传
    }
}

复制代码

返回示例:

复制代码
{
    "intent": {
        "code": 10005,
        "intentName": "",
        "actionName": "",
        "parameters": {
            "nearby_place": "酒店"
        }
    },
    "results": [
        {
             "groupType": 1,
            "resultType": "url",
            "values": {
                "url": "http://m.elong.com/hotel/0101/nlist/#indate=2016-12-10&outdate=2016-12-11&keywords=%E4%BF%A1%E6%81%AF%E8%B7%AF"
            }
        },
        {
             "groupType": 1,
            "resultType": "text",
            "values": {
                "text": "亲,已帮你找到相关酒店信息"
            }
        }
    ]
}

复制代码

异常返回示例:

{
    'intent':
        {
            'code':5000
        }
}

错误码对照表:

异常码说明
5000 无解析结果
6000 暂不支持该功能
4000 请求参数格式错误
4001 加密方式错误
4002 无功能权限
4003 该apikey没有可用请求次数
4005 无功能权限
4007 apikey不合法
4100 userid获取失败
4200 上传格式错误
4300 批量操作超过限制
4400 没有上传合法userid
4500 userid申请个数超过限制
4600 输入内容为空
4602 输入文本内容超长(上限150)
7002 上传信息失败
8008 服务器错误
0 上传成功

请求问题补充:接口不建议前端直接请求,建议后端中间桥接,一是接口存在跨域,如果直接使用需要解决跨域问题,vue项目中使用proxy代理解决跨域问题,但是服务部署时仍需要做相应配置,二是直接请求会暴露必传参数apiKey到请求体中,存在安全隐患;

生产阶段如自己调用则需开启代理,配置如下:

在vue.config.js中添加代码,没有此文件则在根目录创建

复制代码
module.exports = {
    devServer: {
        // host: 'xxsl.job.com',
        // port: 9246,
        // https: true,
        proxy: {
            // 配置跨域 带/robot得路径匹配替换为下面得地址,并且移除路径中的/robot
            '/robot': {
                target: "http://openapi.turingapi.com/openapi",
                changeOrigin: true,
                pathRewrite: {
                    '^/robot': ''
                }
            },
            '/api': {
                target: "https://xxsl.job.com",
                changeOrigin: true,
                pathRewrite: {
                    '^/api': '/api'
                }
            }
        }
    }
}
复制代码

posted on   泔茶先呐  阅读(422)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示