知识库
知识库是TorchV提供的Paas接口,开发者在TorchV的后台创建应用后,可以根据应用的access_token创建知识库
请求域名:
https://api.torchv.com
注意:如果您在试用系统环境中,请将
api.torchv.com
替换成demo.torchv.com
[TOC]
1.请求Header
所有的接口都必须带上该Header参数,否则鉴权失败
参数名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | string | 是 | 请求鉴权的应用AccessToken,创建应用后获取。Bearer 开头,例如:Bearer ak_xxxx |
例如分页查询知识库的API接口CURL:
curl -X GET -H "Accept:*/*" -H "Authorization:Bearer ak_f78a3****"
-H "Content-Type:application/x-www-form-urlencoded"
"https://api.torchv.com/openapi/paas/v1/knowledge/container/list?pageNo=1&pageSize=10"
2.知识库
2.1创建知识库
接口地址:/openapi/paas/v1/knowledge/container/add
请求方式:POST
请求数据类型:application/json
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
name | 知识库名称 | true | string |
category | 知识库类型(COMMON-通用知识库,DATABASE-关系型数据库,WEBSITE-爬虫站点,NO_SQL-NoSQL数据库,OTHER-其它),如果容器类型为文件夹,那么该值传输OTHER,目前仅支持COMMON,DATABASE | true | string |
description | 描述 | false | string |
tag | 标签,支持多个 | false | array(string) |
classifyCode | 知识库分类编码,默认"0" | false | string |
请求示例:
{
"name": "", //知识库名称
"category": "", // 知识库类型(COMMON-通用知识库,DATABASE-关系型数据库,WEBSITE-爬虫站点,NO_SQL-NoSQL数据库,OTHER-其它),如果容器类型为文件夹,那么该值传输OTHER
"description": "",// 描述信息
"tag": [], // 标签,支持多个,最大支持10个,单个tag最大长度为6个字符
"classifyCode": "0" // 分类编码
}
响应示例:
{
"code": 8200, //请参考错误编码的完整定义
"message": "",
"data": ""
}
2.2分页检索知识库
接口地址:/openapi/paas/v1/knowledge/container/list
请求方式:GET
请求数据类型:application/x-www-form-urlencoded
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
pageNo | 当前页码,默认1 | true | integer(int32) |
pageSize | 页码大小,默认10 | true | integer(int32) |
name | 知识库名称,支持模糊搜索 | false | string |
category | 知识库类型(common-通用知识库,database-数据库,website-爬虫站点,other-其它) | false | string |
type | 容器类型(knowledge-知识库,directory-文件夹) | false | string |
parentCode | 父编码,顶级为0 | false | string |
tag | 标签,支持模糊搜索 | false | string |
classifyCode | 知识库分类编码 | false | string |
响应参数:
{
"pageSize": 10,
"pageNo": 1,
"data": [
{
"id": 73, // 知识库id
"creator": "",//创建人
"createTime": 1714055256000, // 创建时间
"modifier": "", // 修改人
"modifierTime": 1714295732000, //修改时间
"sort": 0,// 排序
"name": "医保", //知识库名称
"category": "COMMON", //知识库类型(common-通用知识库,database-数据库,website-爬虫站点,other-其它)
"description": "", // 描述
"code": "1783503126077165568", //知识库编码
"type": "knowledge", // 容器类型(knowledge-知识库,directory-文件夹)
"parentCode": "0", // 知识库父编码
"totalSize": 0, //知识库容量占用体积(字节)
"totalSizeDisplay": "-", //知识库容量占用显示(GB\MB\KB)
"status": 1, // 知识库容量占用统计状态,是否已经统计,0-未统计,1-已统计
"statisticalTime": 1714295732000, // 容量占用统计时间
"tag": [ //标签
"金融",
"医保"
],
"classifyCode": "0", // 业务分类编码
"classifyName": "" // 业务分类名称
}
],
"total": 15, // 总记录数
"totalPage": 2, //总页码
"code": 8200, //响应编码
"message": null // 错误信息
}
2.3根据知识库id查询详情
接口地址:/openapi/paas/v1/knowledge/container/queryById
请求方式:GET
请求数据类型:application/x-www-form-urlencoded
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
id | 知识库id | true | integer(int32) |
响应示例:
{
"code": 0, //响应编码
"message": "",
"data": {
"id": 73, // 知识库id
"creator": "",//创建人
"createTime": 1714055256000, // 创建时间
"modifier": "", // 修改人
"modifierTime": 1714295732000, //修改时间
"sort": 0,// 排序
"name": "医保", //知识库名称
"category": "COMMON", //知识库类型(common-通用知识库,database-数据库,website-爬虫站点,other-其它)
"description": "", // 描述
"code": "1783503126077165568", //知识库编码
"type": "knowledge", // 容器类型(knowledge-知识库,directory-文件夹)
"parentCode": "0", // 知识库父编码
"totalSize": 0, //知识库容量占用体积(字节)
"totalSizeDisplay": "-", //知识库容量占用显示(GB\MB\KB)
"status": 1, // 知识库容量占用统计状态,是否已经统计,0-未统计,1-已统计
"statisticalTime": 1714295732000, // 容量占用统计时间
"tag": [ //标签
"金融",
"医保"
],
"classifyCode": "0", // 业务分类编码
"classifyName": "" // 业务分类名称
}
}
2.4删除知识库
接口地址:/openapi/paas/v1/knowledge/container/delete
请求方式:DELETE
请求数据类型:application/x-www-form-urlencoded
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
id | 知识库id | true | integer(int32) |
响应示例:
{
"code": 8200, // 业务错误编码
"message": "",
"data": ""
}
2.5修改知识库信息
接口地址:/openapi/paas/v1/knowledge/container/update
请求方式:PUT
请求数据类型:application/json
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
id | 知识库id | true | integer(int32) |
name | 知识库名称 | true | string |
description | 描述 | false | string |
tag | 标签,支持多个 | false | array |
classifyCode | 知识库分类编码,默认为0 | false | string |
请求示例:
{
"id": 0, // 知识库id
"name": "", //知识库名称
"description": "", // 描述信息
"tag": ["金融","法律"], //标签
"classifyCode": "" //业务分类编码
}
响应示例:
{
"code": 8200, //业务编码
"message": "",
"data": ""
}
2.6统计知识库容量
该接口会统计当前知识库下的所有知识文件所占用的存储容量信息,并立即返回知识库明细数据信息
接口地址:/openapi/paas/v1/knowledge/container/statistical
请求方式:PUT
请求数据类型:application/json
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
id | 知识库id | true | integer(int32) |
请求示例:
{
"id": 0 //知识库id
}
响应示例:
{
"code": 8200, //响应编码
"message": "",
"data": {
"id": 73, // 知识库id
"creator": "",//创建人
"createTime": 1714055256000, // 创建时间
"modifier": "", // 修改人
"modifierTime": 1714295732000, //修改时间
"sort": 0,// 排序
"name": "医保", //知识库名称
"category": "COMMON", //知识库类型(common-通用知识库,database-数据库,website-爬虫站点,other-其它)
"description": "", // 描述
"code": "1783503126077165568", //知识库编码
"type": "knowledge", // 容器类型(knowledge-知识库,directory-文件夹)
"parentCode": "0", // 知识库父编码
"totalSize": 0, //知识库容量占用体积(字节)
"totalSizeDisplay": "-", //知识库容量占用显示(GB\MB\KB)
"status": 1, // 知识库容量占用统计状态,是否已经统计,0-未统计,1-已统计
"statisticalTime": 1714295732000, // 容量占用统计时间
"tag": [ //标签
"金融",
"医保"
],
"classifyCode": "0", // 业务分类编码
"classifyName": "" // 业务分类名称
}
}
2.7 查询标签列表信息
接口地址:/openapi/paas/v1/knowledge/container/tags
请求方式:GET
请求数据类型:application/x-www-form-urlencoded
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
pageNo | 当前页码,默认1 | true | integer(int32) |
pageSize | 页码大小,默认10 | true | integer(int32) |
name | 名称,支持模糊搜索标签 | false | string |
响应示例:
{
"pageSize": 0,
"pageNo": 0,
"data": [
{
"name": "金融", // 标签名称
"num": 0 // 该标签下的知识库数量
}
],
"total": 0,
"totalPage": 0,
"code": 0,
"message": ""
}
3.知识库文件列表
3.1分页查询文件
接口地址:/openapi/paas/v1/knowledge/file/list
请求方式:GET
请求数据类型:application/x-www-form-urlencoded
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
pageNo | 当前页码,默认1 | true | integer(int32) |
pageSize | 页码大小,默认10 | true | integer(int32) |
containerId | 所属知识库编码 | false | string |
category | 知识实例类型(files-文件,virtual_file-虚拟文件,directory-文件夹) | false | string |
parentCode | 父编码,默认为0 | false | string |
eleName | 知识库元素名称(文件名称/文件夹名称等等),支持模糊查询 | false | string |
processStatus | 处理状态 0:未处理,10、11、12、15、16:处理中 20 处理完成 30 处理失败 | false | string |
响应示例:
{
"pageSize": 10,
"pageNo": 1,
"data": [
{
"id": 369, // 文件id
"creator": null, //创建者
"createTime": 1714055277000, //创建时间
"modifier": null, // 修改人
"modifierTime": 1714055292000, //修改时间
"sort": 0, // 排序
"containerId": "1783503126077165568", // 所属知识库编码
"category": "FILE", // 知识实例类型(files-文件,virtual_file-虚拟文件,directory-文件夹)
"code": "1783503215814299648", // 文件编码-唯一
"parentCode": "0", // 文件父编码,一般在文件归属文件夹时,该值是上层文件夹的编码code
"eleName": "深圳市人民政府令(第358号)深圳市医疗保障办法.pdf", // 文件名称
"eleSuffix": "pdf", // 后缀
"eleUrl": "https://xxx.oss-cn-beijing.aliyuncs.com/1706909030917734400/2024/0425/39891d38-6566-464b-b79d-e54ddd8feb79.pdf?OSSAccessKeyId=LTAI5t6CsmJ2DSBfqFAnjYv5&Expires=2029415275&Signature=ulhMLuFwQs3VL7PznQs5mi62VhE%3D", // 文件oss地址
"elePreviewUrl": null, // 文件预览地址
"eleSize": 159672, // 文件大小-字节
"eleSizeDisplay": "155.93 KB", // 文件大小-字符串展示(GB\MB\KB)
"eleTokenSize": 6594, // 文件token大小,该值是一个大概的值,不一定准确
"eleMd5": "f3206c34221557d1867a7baa3397a500", //文件md5
"neverExpire": 1, // 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间
"startTime": 1714055277000, // 开始时间
"endTime": 1714055277000, // 截止时间
"processStatus": 20, // 处理状态 0:未处理,10、11、12、15、16:处理中 20 处理完成 30 处理失败
"errorMessage": "SUCCESS", // 处理状态
"processCount": 17, // 处理数量
"processPercent":100, // 当前文件的embedding处理进度
"pageCount": 17, // 页码
"config": null, //其它配置信息,网页参数等等
"answer": null, // 知识类型非文件,是QA问答对时,QA对-答案
"originContent":"", //富文本内容
"similar": [] //知识类型非文件,是QA问答对时, QA对-相似问题,集合的方式
}
],
"total": 12, // 总数量
"totalPage": 2, // 总页码
"code": 8200, // 业务状态码
"message": ""
}
3.1文件重命名
接口地址:/openapi/paas/v1/knowledge/file/rename
请求方式:PUT
请求数据类型:application/json
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
id | 文件id | true | integer(int32) |
eleName | 文件名称(文件名称/文件夹名称等等) | true | string |
请求示例:
{
"id": 0, // 文件id
"eleName": "" // 重命名名称
}
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
3.3新增文本(快捷方式)
接口地址:/openapi/paas/v1/knowledge/file/text
请求方式:POST
请求数据类型:application/json
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
containerId | 所属知识库编码 | true | string |
parentCode | 父编码 | true | string |
neverExpire | 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间 | true | integer(int32) |
name | 数据集名称 | true | string |
content | 文本内容 | true | string |
originContent | 原始文本,知识是富文本时该字段可以使用,其他情况则可以保持和content 字段值一致即可。 | true | string |
startTime | 开始日期,格式(yyyy-MM-dd HH:mm:ss) | false | string |
endTime | 截止日期,格式(yyyy-MM-dd HH:mm:ss) | false | string |
请求示例:
{
"containerId": "", // 知识库编码
"name": "", // 名称
"content": "", // 文本内容
"originContent": "", // 富文本内容
"parentCode": "", //文件所属父编码(文件夹),
"neverExpire": 0, // 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间
"startTime": "", // 开始日期,格式(yyyy-MM-dd HH:mm:ss)
"endTime": ""// 截止日期,格式(yyyy-MM-dd HH:mm:ss)
}
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
3.4新增文件夹
接口地址:/openapi/paas/v1/knowledge/file/directory
请求方式:POST
请求数据类型:application/json
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
name | 文件夹名称 | true | string |
containerId | 所属知识库编码 | true | string |
parentCode | 父编码,顶级为0 | true | string |
请求示例:
{
"containerId": "", // 所属知识库编码
"name": "", // 文件夹名称
"parentCode": "0" // 父文件夹编码,默认0
}
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
3.5获取文件的预览信息
接口地址:/openapi/paas/v1/knowledge/file/loader
请求方式:GET
请求数据类型:application/x-www-form-urlencoded
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
id | 文件id | true | integer(int32) |
响应示例:
{
"code": 8200,
"message": "",
"data": {
"id": 369, // 文件id
"creator": null, //创建者
"createTime": 1714055277000, //创建时间
"modifier": null, // 修改人
"modifierTime": 1714055292000, //修改时间
"sort": 0, // 排序
"containerId": "1783503126077165568", // 所属知识库编码
"category": "FILE", // 知识实例类型(files-文件,virtual_file-虚拟文件,directory-文件夹)
"code": "1783503215814299648", // 文件编码-唯一
"parentCode": "0", // 文件父编码,一般在文件归属文件夹时,该值是上层文件夹的编码code
"eleName": "深圳市人民政府令(第358号)深圳市医疗保障办法.pdf", // 文件名称
"eleSuffix": "pdf", // 后缀
"eleUrl": "https://xxx.oss-cn-beijing.aliyuncs.com/1706909030917734400/2024/0425/39891d38-6566-464b-b79d-e54ddd8feb79.pdf?OSSAccessKeyId=LTAI5t6CsmJ2DSBfqFAnjYv5&Expires=2029415275&Signature=ulhMLuFwQs3VL7PznQs5mi62VhE%3D", // 文件oss地址
"elePreviewUrl": "https://xxx.oss-cn-beijing.aliyuncs.com/1706909030917734400/2024/0425/39891d38-6566-464b-b79d-e54ddd8feb79.pdf?OSSAccessKeyId=LTAI5t6CsmJ2DSBfqFAnjYv5&Expires=2029415275&Signature=ulhMLuFwQs3VL7PznQs5mi62VhE%3D", // 文件预览地址
"eleSize": 159672, // 文件大小-字节
"eleSizeDisplay": "155.93 KB", // 文件大小-字符串展示(GB\MB\KB)
"eleTokenSize": 6594, // 文件token大小,该值是一个大概的值,不一定准确
"eleMd5": "f3206c34221557d1867a7baa3397a500", //文件md5
"neverExpire": 1, // 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间
"startTime": 1714055277000, // 开始时间
"endTime": 1714055277000, // 截止时间
"processStatus": 20, // 处理状态 0:未处理,10、11、12、15、16:处理中 20 处理完成 30 处理失败
"errorMessage": "SUCCESS", // 处理状态
"processCount": 17, // 处理数量
"pageCount": 17, // 页码
"config": null, //其它配置信息,网页参数等等
"answer": null, // 知识类型非文件,是QA问答对时,QA对-答案
"similar": [] //知识类型非文件,是QA问答对时, QA对-相似问题,集合的方式
}
}
3.6上传文件并预览
需要注意,该接口仅仅只是上传文件流后获取文件流的预览信息,不会导入知识库中
支持格式:.pdf/ppt/.docx/doc/txt/.md/.html/xls/xlsx
接口地址:/openapi/paas/v1/knowledge/file/upload/preview
请求方式:POST
请求数据类型:multipart/form-data
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
file | 文件流对象,支持多个文件批量上传预览,单次最大10个文件 | true | array |
响应示例:
{
"code": 0,
"message": "",
"data": {
"dataId": "", // 临时预览的数据集id,如果预览成功,要支持导入动作,则需要使用此参数进行提交
"responses": [
{
"category": "", // 数据集类型
"eleName": "", // 文件名称
"eleSuffix": "", //文件后缀
"eleUrl": "", // oss地址
"eleSize": 0, // 文件大小-字节
"tokenSize": 0, // 文件token数量
"eleMd5": "", // 文件md5
"pageCount": 0, // 页码
"status": true, // 预览状态
"errorMsg": "", // 错误信息
"config": "", // 配置信息
"chunks": [ // 预览块列表信息,最多10条
{
"page": 0, // 块页码
"content": "", // 预览内容
"tokenSize": 0 // 块的长度token数量
}
]
}
]
}
}
3.7web地址预览
支持http/https的链接地址,一般以Blog、website站点为主
接口地址:/openapi/paas/v1/knowledge/file/web
请求方式:POST
请求数据类型:application/json
请求示例:
{
"urls": [ // 提交的web地址集合
{
"url": "", // web地址,http/https开头
"selector": "" // css选择器
}
],
"limit": 0
}
响应示例:
{
"code": 0,
"message": "",
"data": {
"dataId": "", // 临时预览的数据集id,如果预览成功,要支持导入动作,则需要使用此参数进行提交
"responses": [
{
"category": "",
"eleName": "", // 文件名称
"eleSuffix": "", //文件后缀
"eleUrl": "", // oss地址
"eleSize": 0, // 文件大小-字节
"tokenSize": 0, // 文件token数量
"eleMd5": "", // 文件md5
"pageCount": 0, // 页码
"status": true, // 预览状态
"errorMsg": "", // 错误信息
"config": "", // 配置信息
"chunks": [ // 预览块列表信息,最多10条
{
"page": 0, // 块页码
"content": "", // 预览内容
"tokenSize": 0 // 块的长度token数量
}
]
}
]
}
}
3.8导入文件(基于3.6预览)
使用该接口需要先通过3.6预览接口获取文件的dataId,之后提交预览的知识文件,导入到知识库中。
接口地址:/openapi/paas/v1/knowledge/file/addFiles
请求方式:POST
请求数据类型:application/json
请求示例:
{
"containerId": "", // 知识库编码code
"dataSets": [ // 批量导入的文件集合
{
"dataId": "", // 预览的dataId
"deleteFiles": [] //删除的dataId集合
}
],
"parentCode": "0", // 该文件所属的文件夹 编码code,默认为0
"neverExpire": 1, // 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间
"startTime": "", // 有效开始日期,格式(yyyy-MM-dd HH:mm:ss)
"endTime": "" // 截止日期,格式(yyyy-MM-dd HH:mm:ss)
}
响应示例:
{
"code": 8200, // 业务编码
"message": "",
"data": ""
}
3.9批量导入知识文件-流
可以使用该接口直接批量导入知识文件,该接口会直接导入到知识库中,单次最多上传10个文件
支持格式:.pdf/ppt/.docx/doc/txt/.md/.html/xls/xlsx
对于在线的web类型,可以保存为.html文件后通过流上传上来,当然,也可以单独使用3.10接口,批量上传Web网页类型的知识
接口地址:/openapi/paas/v1/knowledge/file/importFiles
请求方式:POST
请求数据类型:multipart/form-data
响应数据类型:*/*
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
containerId | 所属知识库编码 | true | string |
parentCode | 知识库中的文件夹父编码,默认为0 | true | string |
neverExpire | 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间 | true | string |
startTime | 开始日期,格式(yyyy-MM-dd HH:mm:ss) | false | string |
endTime | 截止日期,格式(yyyy-MM-dd HH:mm:ss) | false | string |
file | 批量上传的文件对象 | true | array(file) |
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
3.10批量导入Web文件
批量导入在线的Web文件,单次最多导入1000个文件
Web地址必须以HTTP/HTTPS开头,且地址长度不超过1000个字符
接口地址:/openapi/paas/v1/knowledge/file/importWebs
请求方式:POST
请求数据类型:application/json
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
containerId | 所属知识库id | true | string |
parentCode | 父编码 | true | string |
neverExpire | 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间 | true | integer(int32) |
startTime | 开始日期,格式(yyyy-MM-dd HH:mm:ss) | false | string |
endTime | 截止日期,格式(yyyy-MM-dd HH:mm:ss) | false | string |
urls | web地址集合 | false | array(WebFile) |
url | web地址 | false | string |
selector | 选择器 | false | string |
请求示例:
{
"containerId": "", // 所属知识库编码
"parentCode": "0", // 所属父文件夹code编码,默认为0
"neverExpire": 0, // 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间
"startTime": "", // 开始日期,格式(yyyy-MM-dd HH:mm:ss)
"endTime": "", // 截止日期,格式(yyyy-MM-dd HH:mm:ss)
"urls": [
{
"url": "", // web地址,必须http/https开头
"selector": "" // 选择器,例如: body .post
}
]
}
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
3.11新增QA问答对
接口地址:/openapi/paas/v1/knowledge/qa/add
请求方式:POST
请求数据类型:application/json
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
question | 标准问题 | true | string |
containerId | 知识库Id | true | string |
similar | 相似问题,多个逗号分隔 | false | array |
answer | 答案 | false | string |
neverExpire | 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间 | true | integer(int32) |
startTime | 开始时间,格式:yyyy-MM-dd HH:mm:ss | false | string |
endTime | 截止日期,格式:yyyy-MM-dd HH:mm:ss | false | string |
请求示例:
{
"question": "你好", // required 标准问题 知识库标题(100个字符内)、文本答案(最大32767个字符)
"containerId": "", // required 知识库编码
"similar": ["你好吗","你过的怎么样?"], //相似问题 、单个相似问题(100个字符内)
"answer": "", //required 答案(最大32767个字符)
"neverExpire": 0, //required 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间
"startTime": "", // 开始日期,格式(yyyy-MM-dd HH:mm:ss)
"endTime": "" // 截止日期,格式(yyyy-MM-dd HH:mm:ss)
}
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
3.12下载QA对的Excel模版
基于该Excel模版,可以调用3.13接口,批量上传QA问答对类型的知识
接口地址:/openapi/paas/v1/knowledge/qa/downloadExcelTemplate
请求方式:GET
请求数据类型:application/x-www-form-urlencoded
响应参数:
文件流
3.13批量上传QA问答对
仅支持excel-xlsx格式,单次最大支持5000行数据或100MB数据
QA问答对的数据需严格按照Excel模版的要求进行填写后导入
不满足要求的数据,会被系统直接丢弃
接口地址:/openapi/paas/v1/knowledge/qa/batchAdd
请求方式:POST
请求数据类型:multipart/form-data
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
containerId | 知识库id | true | string |
parentCode | 所属父元素 | false | string |
file | 上传文件 | false | file |
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
3.14修改QA问答对信息
接口地址:/openapi/paas/v1/knowledge/qa/update
请求方式:PUT
请求数据类型:application/json
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
question | 标准问题 | true | string |
containerId | 知识库Id | true | string |
similar | 相似问题 | false | array(string) |
answer | 答案 | true | string |
originContent | 原始文本,知识是富文本时该字段可以使用,其他情况则可以保持和answer 字段值一致即可。 | true | string |
neverExpire | 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间 | true | integer(int32) |
startTime | 开始时间,格式:yyyy-MM-dd HH:mm:ss | false | string |
endTime | 截止日期,格式:yyyy-MM-dd HH:mm:ss | false | string |
id | 知识id | true | integer(int32) |
请求示例:
{
"id": 0, // 知识id
"question": "你好", // required 标准问题 知识库标题(100个字符内)、文本答案(最大32767个字符)
"containerId": "", // required 知识库编码
"similar": ["你好吗","你过的怎么样?"], //相似问题 、单个相似问题(100个字符内)
"answer": "", //required 答案(最大32767个字符)
"neverExpire": 0, //required 是否永久有效,0 否 1 是 为0时,必须设置开始和结束时间
"startTime": "", // 开始日期,格式(yyyy-MM-dd HH:mm:ss)
"endTime": "" // 截止日期,格式(yyyy-MM-dd HH:mm:ss)
}
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
3.15删除知识库元素
接口地址:/openapi/paas/v1/knowledge/file/delete
请求方式:DELETE
请求数据类型:application/x-www-form-urlencoded
响应数据类型:*/*
接口描述: 删除当前上传的知识文件
请求参数:
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
id | 知识元素id | true | integer(int32) |
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
3.16 分页查询知识库分块列表信息
接口地址:/openapi/paas/v1/knowledge/file/chunk/list
请求方式:GET
请求数据类型:application/x-www-form-urlencoded
响应数据类型:*/*
接口描述:
请求参数:
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
code | 数据集所属code | true | string |
pageNo | 当前页码,默认1 | true | integer(int32) |
pageSize | 页码大小,默认10 | true | integer(int32) |
响应参数:
参数名称 | 参数说明 | 类型 | schema |
---|---|---|---|
pageSize | integer(int32) | integer(int32) | |
pageNo | integer(int32) | integer(int32) | |
data | array | KnowledgeElementDetailResp | |
id | 主键id,自增长列 | string | |
containerId | 所属知识库id | string | |
category | 类型,paragraph-段落内容,multipart-附件,assist-辅助数据 | string | |
page | 页码 | integer(int32) | |
paragraphId | 段落id | string | |
content | 内容 | string | |
dataId | 数据id | string | |
tokenSize | token占用大小 | integer(int32) | |
total | integer(int64) | integer(int64) | |
totalPage | integer(int64) | integer(int64) | |
code | integer(int32) | integer(int32) | |
message | string |
响应示例:
{
"pageSize": 0,
"pageNo": 0,
"data": [
{
"id": "",
"containerId": "",
"category": "",
"page": 0,
"paragraphId": "",
"content": "",
"dataId": "",
"tokenSize": 0
}
],
"total": 0,
"totalPage": 0,
"code": 0,
"message": ""
}
4.知识库分类
4.1分页查询知识分类信息
接口地址:/openapi/paas/v1/knowledge/category/list
请求方式:GET
请求数据类型:application/x-www-form-urlencoded
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
pageNo | 当前页码,默认1 | true | integer(int32) |
pageSize | 页码大小,默认10 | true | integer(int32) |
name | 分类名称,可模糊搜索 | false | string |
parentCode | 分类父编码,默认为0 | false | string |
响应示例:
{
"pageSize": 10,
"pageNo": 1,
"data": [
{
"id": 1,
"creator": "3",
"createTime": 1714377084000, //创建日期
"modifier": "3",
"modifierTime": 1714377084000, // 修改日期
"sort": 0,
"code": "1784852973451575296", // 分类编码
"name": "测试", // 分类名称
"parentCode": "0", // 分类父编码,顶级为0
"grade": 1 // 分类级别,1、2、3
}
],
"total": 14,
"totalPage": 2,
"code": 8200,
"message": ""
}
4.2新增知识分类
接口地址:/openapi/paas/v1/knowledge/category/add
请求方式:POST
请求数据类型:application/json
请求示例:
{
"name": "",// 分类名称
"parentCode": "0" // 分类所属父编码,默认顶级为0
}
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
4.3修改知识分类
接口地址:/openapi/paas/v1/knowledge/category/update
请求方式:PUT
请求数据类型:application/x-www-form-urlencoded,application/json
请求示例:
{
"id": 0, // 分类id
"name": "" // 分类名称
}
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
4.4分类ID查询详情
接口地址:/openapi/paas/v1/knowledge/category/queryById
请求方式:GET
请求数据类型:application/x-www-form-urlencoded
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
id | 分类ID | true | integer(int32) |
响应示例:
{
"code": 8200,
"message": "SUCCESS",
"data": {
"id": 1, // 分类id
"creator": "3", //创建人
"createTime": 1714377084000, //创建时间
"modifier": "3", // 修改人
"modifierTime": 1714377084000,//修改时间
"sort": 0, // 排序
"code": "1784852973451575296", //分类编码
"name": "测试", // 分类名称
"parentCode": "0", // 分类父编码
"grade": 1 //分类等级,1、2、3
}
}
4.5删除知识分类
接口地址:/openapi/paas/v1/knowledge/category/delete
请求方式:DELETE
请求数据类型:application/x-www-form-urlencoded
请求参数:
参数名称 | 参数说明 | 是否必须 | 数据类型 |
---|---|---|---|
id | 分类id | true | integer(int32) |
响应示例:
{
"code": 8200,
"message": "",
"data": ""
}
- 1.请求Header
- 2.知识库
- 2.1创建知识库
- 2.2分页检索知识库
- 2.3根据知识库id查询详情
- 2.4删除知识库
- 2.5修改知识库信息
- 2.6统计知识库容量
- 2.7 查询标签列表信息
- 3.知识库文件列表
- 3.1分页查询文件
- 3.1文件重命名
- 3.3新增文本(快捷方式)
- 3.4新增文件夹
- 3.5获取文件的预览信息
- 3.6上传文件并预览
- 3.7web地址预览
- 3.8导入文件(基于3.6预览)
- 3.9批量导入知识文件-流
- 3.10批量导入Web文件
- 3.11新增QA问答对
- 3.12下载QA对的Excel模版
- 3.13批量上传QA问答对
- 3.14修改QA问答对信息
- 3.15删除知识库元素
- 3.16 分页查询知识库分块列表信息
- 4.知识库分类
- 4.1分页查询知识分类信息
- 4.2新增知识分类
- 4.3修改知识分类
- 4.4分类ID查询详情
- 4.5删除知识分类