💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、豆包、星火、月之暗面及文生图、文生视频 广告
### 数据编码 > UTF-8 ### 请求方式 > POST ### 使用说明 > 1. 使用者须为图灵机器人标准版或儿童版用户。 > 2. 用户使用知识库新增接口批量导入数据时,享有与官网Excel上传导入相同的权限设置(10000条/5次/天)。官网导入数据与接口导入数据都以累计的方式进行,每天数据导入量上限为10000条,次数上限为5次。 > 3. 用户使用知识库新增接口逐条添加数据时,每日导入量上限为10000条 > 4. 图灵机器人对知识库接口提供了安全模式设置,目前分为加密和不加密两种形式,用户可按需自行设定。用户可登录图灵机器人官网,进入到机器人详情页的知识库模块的知识库API接口中对API进行“是否开启安全模式”配置 > 5. 用户如想修改知识库中的数据时,推荐将该条数据删除后再重新添加 ### 安全模式 > 用户登录图灵机器人官网,可以在机器人详情页的知识库模块的知识库API接口中自行选择,目前提供加密和不加密两种模式,如果采用加密模式,还需设置加密模式的编码密钥(密钥按照要求自行设置,如:密钥为test123),如下图所示: ![](https://box.kancloud.cn/b2b53f05974da3f4c774142dfd8b8e62_1283x371.png) ### 常见问题 #### 1. 知识库可以通过接口来实现吗? > 目前图灵机器人对标准版、儿童版用户提供了知识库开放接口服务。通过该接口,您可以实现对私有知识库数据的增删改查,享有和官网导入知识库一样的服务。使用接口操作的数据也会和官网知识库数据保持同步(数据默认导入到该机器人账号下的“默认知识库”中) #### 2. 在哪里可以获取到知识库相关的接口服务? > 目前图灵机器人对标准版、儿童版用户提供了知识库开放接口服务。如果您已拥有相关权限,即可在机器人详情页的知识库模块的知识库API接口中找到该服务。如果您还未有权限使用,可通过付费升级此机器人账号来获取使用权限 #### 3. 知识库开放接口主要有哪些功能? > 图灵机器人知识库开放接口提供了5个接口,包括知识库新增接口、知识库删除接口、知识库修改接口、知识库查询接口以及机器人名称修改接口,方便用户使用及管理。 ## **接口** ### **知识库导入** >[success] 请求地址 http://www.tuling123.com/v1/setting/importfaq >[info] 请求示例 ``` json { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": [ { "question": "测试问题1", "answer": "测试答案1" }, { "question": "测试问题2", "answer": "测试答案2" } ], "token": "ca7faa2295639b8c1c84a30e7da3756a" } ``` >token计算示例(javascript) ```javascript var param = { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": [ { "question": "测试问题1", "answer": "测试答案1" }, { "question": "测试问题2", "answer": "测试答案2" } ] }; var sec = "test123"; //知识库密匙 var dataString = JSON.stringify(param.data); //param.data字符串转换 var token = md5(dataString + sec); //使用MD5计算token值 param.token = token; ``` >请求字段说明 | 字段 | 类型 | 必须 | 说明 | | --- | --- | --- | |apikey|字符串|√|图灵机器人APIKEY| |data|JSON数组|√|导入的数据| |question|字符串|√|问题| |answer|字符串|√|答案| |token|字符串|×|**加密模式必填**,计算方式见【token计算示例】| >[success] 返回示例 ``` json { "code": 0, "data": "2" } ``` >返回字段说明 | 字段 | 类型 | 说明 | | --- | --- | --- | |code|整数|状态码| |data|字符串|成功条数或失败原因的描述| ### **知识库查询** >[success] 请求地址 http://www.tuling123.com/v1/setting/selectfaq #### **获取总条数** >[info] 请求示例 ``` json { "apikey": "90d05439eb6c49939afb1c0e033095c2" } ``` #### **分页搜索** >[info] 请求示例 ``` json { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": { "pages": { "pageNumber": 1, "pageSize": 10, "searchBy": "测试" } }, "token":"c0479ba61b40454e8be4b9b108d401ca" } ``` >token计算示例(javascript) ```javascript var param = { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": { "pages": { "pageNumber": 1, "pageSize": 10, "searchBy": "测试" } } }; var sec = "test123"; //知识库密匙 var dataString = JSON.stringify(param.data); //param.data字符串转换 var token = md5(dataString + sec); //使用MD5计算token值 param.token = token; ``` #### **根据数据ID查询** >[info] 请求示例 ``` json { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": { "ids": [ 1, 2 ] }, "token":"c0479ba61b40454e8be4b9b108d401ca" } ``` >token计算示例(javascript) ```javascript var param = { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": { "ids": [ 1, 2 ] } }; var sec = "test123"; //知识库密匙 var dataString = JSON.stringify(param.data); //param.data字符串转换 var token = md5(dataString + sec); //使用MD5计算token值 param.token = token; ``` >请求字段说明 | 字段 | 类型 | 必须 | 说明 | | --- | --- | --- | |apikey|字符串|√|图灵机器人APIKEY| |data|JSON|×|请求参数| |pages|JSON|×|分页参数| |pageNumber|整数|×|分页-当前页码| |pageSize|整数|×|分页-每页条数| |searchBy|字符串|×|分页-搜索(问题和答案都搜索)| |ids|整数数组|×|知识库数据ID| |token|字符串|×|**加密模式必填**,计算方式见【token计算示例】| >[success] 返回示例 ``` json { "code": 0, "data": { "totalCount": 2, "knowledgeCount": 2, "knowledgeList": [ { "id": "2", "question": "测试问题2", "answer": "新的答案2", "time": "2015-12-03 14:34:36" }, { "id": "1", "question": "测试问题1", "answer": "新的答案1", "time": "2015-12-03 14:34:35" } ] } } ``` >返回字段说明 | 字段 | 类型 | 说明 | | --- | --- | --- | |code|整数|状态码| |data|JSON或字符串|查询数据结果列表或失败原因的描述| |totalCount|整数|知识库数据总条数| |knowledgeCount|整数|返回的查询数据条数| |knowledgeList|JSON|返回的数据列表| |id|字符串|返回数据id| |question|字符串|返回数据的问题| |answer|字符串|答案| |time|时间(year-mon-day hour:min:sec)|修改时间| ### **知识库修改** >[success] 请求地址 http://www.tuling123.com/v1/setting/updatefaq >[info] 请求示例 ``` json { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": [ { "id": "1", "question": "新的问题", "answer": "新的答案1" }, { "id": "2", "question": "新的问题", "answer": "新的答案2" } ], "token": "ca7faa2295639b8c1c84a30e7da3756a" } ``` >token计算示例(javascript) ```javascript var param = { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": [ { "id": "1", "question": "新的问题", "answer": "新的答案1" }, { "id": "2", "question": "新的问题", "answer": "新的答案2" } ] }; var sec = "test123"; //知识库密匙 var dataString = JSON.stringify(param.data); //param.data字符串转换 var token = md5(dataString + sec); //使用MD5计算token值 param.token = token; ``` >请求字段说明 | 字段 | 类型 | 必须 | 说明 | | --- | --- | --- | |apikey|字符串|√|图灵机器人APIKEY| |data|JSON数组|√|请求参数| |id|字符串|√|知识库数据ID| |question|字符串|×|问题| |answer|字符串|×|答案| |token|字符串|×|**加密模式必填**,计算方式见【token计算示例】| >[success] 返回示例 ``` json { "code": 0, "data": "2" } ``` >返回字段说明 | 字段 | 类型 | 说明 | | --- | --- | --- | |code|整数|状态码| |data|字符串|成功条数或失败原因的描述| ### **知识库删除** >[success] 请求地址 http://www.tuling123.com/v1/setting/deletefaq #### **根据数据ID删除** >[info] 请求示例 ``` json { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": { "ids": [ 1, 2, 3 ] }, "token":"ca7faa2295639b8c1c84a30e7da3756a" } ``` >token计算示例(javascript) ```javascript var param = { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": { "ids": [ 1, 2, 3 ] } }; var sec = "test123"; //知识库密匙 var dataString = JSON.stringify(param.data); //param.data字符串转换 var token = md5(dataString + sec); //使用MD5计算token值 param.token = token; ``` #### **清空知识库** >[info] 请求示例 ``` json { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": { "clear": { "isclear": true } }, "token":"ca7faa2295639b8c1c84a30e7da3756a" } ``` >token计算示例(javascript) ```javascript var param = { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": { "clear": { "isclear": true } } }; var sec = "test123"; //知识库密匙 var dataString = JSON.stringify(param.data); //param.data字符串转换 var token = md5(dataString + sec); //使用MD5计算token值 param.token = token; ``` >请求字段说明 | 字段 | 类型 | 必须 | 说明 | | --- | --- | --- | |apikey|字符串|√|图灵机器人APIKEY| |data|JSON|√|请求参数| |clear|JSON|×|清空知识库时用到的字段| |isclear|布尔型|×|为true时**清空知识库**| |ids|整数数组|×|要删除的知识库数据ID| |token|字符串|×|**加密模式必填**,计算方式见【token计算示例】| >[success] 返回示例 ``` json { "code": 0, "data": "2" } ``` >返回字段说明 | 字段 | 类型 | 说明 | | --- | --- | --- | |code|整数|状态码| |data|字符串|成功条数或失败原因的描述| ### **修改机器人名称** >[success] 请求地址 http://www.tuling123.com/v1/setting/setnickname >[info] 请求示例 ``` json { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": "新名称", "token":"ca7faa2295639b8c1c84a30e7da3756a" } ``` >token计算示例(javascript) ```javascript var param = { "apikey": "90d05439eb6c49939afb1c0e033095c2", "data": "新名称" }; var sec = "test123"; //知识库密匙 var dataString = JSON.stringify(param.data); //param.data字符串转换 var token = md5(dataString + sec); //使用MD5计算token值 param.token = token; ``` >请求字段说明 | 字段 | 类型 | 必须 | 说明 | | --- | --- | --- | |apikey|字符串|√|图灵机器人APIKEY| |data|字符串|√|新名称| |token|字符串|×|**加密模式必填**,计算方式见【token计算示例】| >[success] 返回示例 ``` json { "code": 0 } ``` >返回字段说明 | 字段 | 类型 | 说明 | | --- | --- | --- | |code|整数|状态码| ### 状态码 | code |说明 | | --- | --- | | 0 | 请求成功 | | 101 | 请求内容为空 | | 201 | 请求超时 | | 301 | 异常(json格式错误,500错误等) | | 401 | 账号不合法| | 403 | 账号上传权限已经用尽| | 404 | 账号没有知识库接口使用权限| | 405 |账号开启安全模式,token校验失败| | 501 |json请求的内容有误|