知识库容器
知识库容器管理接口,支持容器的增删改查、统计、标签查询等操作。
知识库容器列表
接口地址:/kl/api/saas/container/list
请求方法:GET
权限要求:knowledge_container READ
接口描述:分页查询知识库容器列表
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 是 | 当前页码,默认1 |
| pageSize | Integer | 是 | 页码大小,默认10 |
| name | String | 否 | 容器名称(模糊查询) |
| category | String | 否 | 容器分类:common-通用,database-数据库,website-网站,workspace-工作区,other-其他 |
| type | String | 否 | 容器类型:knowledge-知识库,directory-目录,workspace-工作区 |
| parentCode | String | 否 | 父级编码,默认"0" |
| tag | List\<String> | 否 | 标签列表 |
| classifyCode | String | 否 | 分类编码 |
| containerIdCodes | List\<String> | 否 | 容器编码列表 |
| creator | Boolean | 否 | 是否为创建者 |
| moveOrCopy | String | 否 | 移动或复制标识 |
| containerId | Integer | 否 | 容器ID |
| splitMode | String | 否 | 分片模式 |
| maxChunkSize | Integer | 否 | 最大分片大小 |
| maxChunkLength | Integer | 否 | 最大分片长度 |
| overlapSize | Integer | 否 | 重叠大小 |
| mergeChunks | Boolean | 否 | 是否合并分片 |
| imageOcr | Boolean | 否 | 是否启用图片OCR |
| embeddingModel | String | 否 | 嵌入模型 |
| splitDelimiters | List\<String> | 否 | 分片分隔符列表 |
| analysisEngine | String | 否 | 解析引擎 |
| analysisMode | String | 否 | 解析模式 |
| ocrEngine | String | 否 | OCR引擎 |
| multiModalityEngine | String | 否 | 多模态引擎 |
| engineType | String | 否 | 引擎类型 |
| expandConfig | String | 否 | 扩展配置 |
响应示例
{
"code": 8200,
"message": "操作成功",
"data": {
"records": [
{
"id": 1,
"code": "kb_001",
"name": "产品文档知识库",
"category": "common",
"type": "knowledge",
"parentCode": "0",
"description": "产品相关文档",
"status": 1,
"totalSize": 536870912,
"totalSizeDisplay": "512MB",
"capacitySize": 1073741824,
"capacitySizeDisplay": "1GB",
"remainingSize": 536870912,
"remainingSizeDisplay": "512MB",
"fileCount": 100,
"tag": ["产品", "文档"],
"visibilityRange": "MEMBERS_ONLY",
"permissionType": "edit",
"classifyCode": "0",
"classifyName": "默认分类",
"neverExpire": true,
"startTime": "2024-01-01 00:00:00",
"endTime": "2025-01-01 00:00:00",
"embeddingModel": "text-embedding-ada-002",
"embeddingProvider": "openai",
"dims": 1536,
"creator": "admin",
"creatorName": "管理员",
"creatorAvatar": "https://example.com/avatar.png",
"createTime": "2024-01-01 10:00:00",
"modifier": "admin",
"modifierTime": "2024-01-01 10:00:00",
"sort": 1,
"statisticalTime": "2024-01-01 10:00:00",
"kbKnowledgeBasePermissionReqList": []
}
],
"total": 1,
"totalPage": 1,
"pageNo": 1,
"pageSize": 10
}
}
请求示例
curl -X GET "${domain}/kl/api/saas/container/list?pageNo=1&pageSize=10" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"
可编辑知识库容器列表
接口地址:/kl/api/saas/container/listEdit
请求方法:GET
权限要求:knowledge_container READ
接口描述:查询当前用户有编辑权限的知识库容器列表(分页)
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pageNo | Integer | 是 | 当前页码,默认1 |
| pageSize | Integer | 是 | 页码大小,默认10 |
| name | String | 否 | 容器名称(模糊查询) |
| category | String | 否 | 容器分类:common-通用,database-数据库,website-网站,workspace-工作区,other-其他 |
| type | String | 否 | 容器类型:knowledge-知识库,directory-目录,workspace-工作区 |
| parentCode | String | 否 | 父级编码,默认"0" |
| tag | List\<String> | 否 | 标签列表 |
| classifyCode | String | 否 | 分类编码 |
| containerIdCodes | List\<String> | 否 | 容器编码列表 |
| creator | Boolean | 否 | 是否为创建者 |
| moveOrCopy | String | 否 | 移动或复制标识 |
| containerId | Integer | 否 | 容器ID |
| splitMode | String | 否 | 分片模式 |
| maxChunkSize | Integer | 否 | 最大分片大小 |
| maxChunkLength | Integer | 否 | 最大分片长度 |
| overlapSize | Integer | 否 | 重叠大小 |
| mergeChunks | Boolean | 否 | 是否合并分片 |
| imageOcr | Boolean | 否 | 是否启用图片OCR |
| embeddingModel | String | 否 | 嵌入模型 |
| splitDelimiters | List\<String> | 否 | 分片分隔符列表 |
| analysisEngine | String | 否 | 解析引擎 |
| analysisMode | String | 否 | 解析模式 |
| ocrEngine | String | 否 | OCR引擎 |
| multiModalityEngine | String | 否 | 多模态引擎 |
| engineType | String | 否 | 引擎类型 |
| expandConfig | String | 否 | 扩展配置 |
响应示例
{
"code": 8200,
"message": "操作成功",
"data": {
"records": [
{
"id": 1,
"code": "kb_001",
"name": "产品文档知识库",
"category": "common",
"type": "knowledge",
"parentCode": "0",
"description": "产品相关文档",
"status": 1,
"totalSize": 536870912,
"totalSizeDisplay": "512MB",
"capacitySize": 1073741824,
"capacitySizeDisplay": "1GB",
"remainingSize": 536870912,
"remainingSizeDisplay": "512MB",
"fileCount": 100,
"tag": ["产品", "文档"],
"visibilityRange": "MEMBERS_ONLY",
"permissionType": "edit",
"classifyCode": "0",
"classifyName": "默认分类",
"neverExpire": true,
"startTime": "2024-01-01 00:00:00",
"endTime": "2025-01-01 00:00:00",
"embeddingModel": "text-embedding-ada-002",
"embeddingProvider": "openai",
"dims": 1536,
"creator": "admin",
"creatorName": "管理员",
"creatorAvatar": "https://example.com/avatar.png",
"createTime": "2024-01-01 10:00:00",
"modifier": "admin",
"modifierTime": "2024-01-01 10:00:00",
"sort": 1,
"statisticalTime": "2024-01-01 10:00:00",
"kbKnowledgeBasePermissionReqList": []
}
],
"total": 1,
"totalPage": 1,
"pageNo": 1,
"pageSize": 10
}
}
请求示例
curl -X GET "${domain}/kl/api/saas/container/listEdit?pageNo=1&pageSize=10" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"
知识库容器统计
接口地址:/kl/api/saas/container/statistical
请求方法:PUT
权限要求:knowledge_container READ
接口描述:触发知识库容器统计并返回最新统计后的容器信息
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | Integer | 是 | 容器ID |
RequestBody示例
{
"id": 1
}
响应示例
{
"code": 8200,
"message": "操作成功",
"data": {
"id": 1,
"code": "kb_001",
"name": "产品文档知识库",
"category": "common",
"type": "knowledge",
"parentCode": "0",
"description": "产品相关文档",
"status": 1,
"totalSize": 536870912,
"totalSizeDisplay": "512MB",
"capacitySize": 1073741824,
"capacitySizeDisplay": "1GB",
"remainingSize": 536870912,
"remainingSizeDisplay": "512MB",
"fileCount": 100,
"tag": ["产品", "文档"],
"visibilityRange": "MEMBERS_ONLY",
"permissionType": "edit",
"classifyCode": "0",
"classifyName": "默认分类",
"neverExpire": true,
"startTime": "2024-01-01 00:00:00",
"endTime": "2025-01-01 00:00:00",
"embeddingModel": "text-embedding-ada-002",
"embeddingProvider": "openai",
"dims": 1536,
"creator": "admin",
"creatorName": "管理员",
"creatorAvatar": "https://example.com/avatar.png",
"createTime": "2024-01-01 10:00:00",
"modifier": "admin",
"modifierTime": "2024-01-01 10:00:00",
"sort": 1,
"statisticalTime": "2024-01-01 10:00:00",
"kbKnowledgeBasePermissionReqList": []
}
}
请求示例
curl -X PUT "${domain}/kl/api/saas/container/statistical" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"id": 1
}'
新增知识库容器
接口地址:/kl/api/saas/container/add
请求方法:POST
权限要求:knowledge_container WRITE
接口描述:新增知识库容器
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | String | 是 | 容器名称 |
| category | String | 是 | 容器分类:COMMON-通用,DATABASE-数据库,WEBSITE-网站,NO_SQL-NoSQL,WORKSPACE-工作区,OTHER-其他 |
| type | String | 是 | 容器类型:knowledge-知识库,directory-目录,workspace-工作区 |
| parentCode | String | 是 | 父级编码,默认"0" |
| description | String | 否 | 容器描述 |
| tag | List\<String> | 否 | 标签列表,最多10个 |
| classifyCode | String | 否 | 分类编码,默认"0" |
| visibilityRange | String | 否 | 可见范围:MEMBERS_ONLY-仅成员,ENTERPRISE_PUBLIC-企业公开,INTERNET_PUBLIC-互联网公开 |
| sharingPermission | String | 否 | 分享权限 |
| kbKnowledgeBasePermissionReqList | List\<Object> | 否 | 权限列表 |
| splitMode | String | 否 | 分片模式 |
| maxChunkSize | Integer | 否 | 最大分片大小 |
| maxChunkLength | Integer | 否 | 最大分片长度 |
| overlapSize | Integer | 否 | 重叠大小 |
| mergeChunks | Boolean | 否 | 是否合并分片 |
| imageOcr | Boolean | 否 | 是否启用图片OCR |
| embeddingModel | String | 否 | 嵌入模型 |
| splitDelimiters | List\<String> | 否 | 分片分隔符列表 |
| analysisEngine | String | 否 | 解析引擎 |
| analysisMode | String | 否 | 解析模式 |
| ocrEngine | String | 否 | OCR引擎 |
| multiModalityEngine | String | 否 | 多模态引擎 |
| engineType | String | 否 | 引擎类型 |
| expandConfig | String | 否 | 扩展配置 |
RequestBody示例
{
"name": "产品文档知识库",
"category": "COMMON",
"type": "knowledge",
"parentCode": "0",
"description": "产品相关文档",
"tag": ["产品", "文档"],
"classifyCode": "0",
"visibilityRange": "MEMBERS_ONLY",
"embeddingModel": "text-embedding-ada-002"
}
响应示例
{
"code": 8200,
"message": "新增成功",
"data": {
"id": 1,
"code": "kb_001",
"name": "产品文档知识库",
"category": "COMMON",
"type": "knowledge",
"parentCode": "0",
"description": "产品相关文档",
"status": 1,
"totalSize": 0,
"totalSizeDisplay": "0B",
"capacitySize": 1073741824,
"capacitySizeDisplay": "1GB",
"remainingSize": 1073741824,
"remainingSizeDisplay": "1GB",
"fileCount": 0,
"tag": ["产品", "文档"],
"visibilityRange": "MEMBERS_ONLY",
"permissionType": "edit",
"classifyCode": "0",
"classifyName": "默认分类",
"neverExpire": true,
"embeddingModel": "text-embedding-ada-002",
"embeddingProvider": "openai",
"dims": 1536,
"creator": "admin",
"creatorName": "管理员",
"creatorAvatar": "https://example.com/avatar.png",
"createTime": "2024-01-01 10:00:00",
"modifier": "admin",
"modifierTime": "2024-01-01 10:00:00",
"sort": 1,
"statisticalTime": "2024-01-01 10:00:00",
"kbKnowledgeBasePermissionReqList": []
}
}
请求示例
curl -X POST "${domain}/kl/api/saas/container/add" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"name": "产品文档知识库",
"category": "COMMON",
"type": "knowledge",
"parentCode": "0",
"description": "产品相关文档",
"tag": ["产品", "文档"],
"classifyCode": "0",
"visibilityRange": "MEMBERS_ONLY",
"embeddingModel": "text-embedding-ada-002"
}'
修改知识库容器
接口地址:/kl/api/saas/container/update
请求方法:PUT
权限要求:knowledge_container WRITE
接口描述:修改知识库容器信息
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | Integer | 是 | 容器ID |
| name | String | 是 | 容器名称 |
| description | String | 否 | 容器描述 |
| tag | List\<String> | 否 | 标签列表,最多10个 |
| classifyCode | String | 否 | 分类编码 |
| visibilityRange | String | 否 | 可见范围:MEMBERS_ONLY-仅成员,ENTERPRISE_PUBLIC-企业公开,INTERNET_PUBLIC-互联网公开 |
| kbKnowledgeBasePermissionReqList | List\<Object> | 否 | 权限列表 |
| splitMode | String | 否 | 分片模式 |
| maxChunkSize | Integer | 否 | 最大分片大小 |
| maxChunkLength | Integer | 否 | 最大分片长度 |
| overlapSize | Integer | 否 | 重叠大小 |
| mergeChunks | Boolean | 否 | 是否合并分片 |
| imageOcr | Boolean | 否 | 是否启用图片OCR |
| embeddingModel | String | 否 | 嵌入模型 |
| splitDelimiters | List\<String> | 否 | 分片分隔符列表 |
| analysisEngine | String | 否 | 解析引擎 |
| analysisMode | String | 否 | 解析模式 |
| ocrEngine | String | 否 | OCR引擎 |
| multiModalityEngine | String | 否 | 多模态引擎 |
| engineType | String | 否 | 引擎类型 |
| expandConfig | String | 否 | 扩展配置 |
RequestBody示例
{
"id": 1,
"name": "产品文档知识库",
"description": "产品相关文档",
"tag": ["产品", "文档"],
"classifyCode": "0",
"visibilityRange": "MEMBERS_ONLY",
"embeddingModel": "text-embedding-ada-002"
}
响应示例
{
"code": 8200,
"message": "修改成功",
"data": "操作成功"
}
请求示例
curl -X PUT "${domain}/kl/api/saas/container/update" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"id": 1,
"name": "产品文档知识库",
"description": "产品相关文档",
"tag": ["产品", "文档"],
"classifyCode": "0",
"visibilityRange": "MEMBERS_ONLY",
"embeddingModel": "text-embedding-ada-002"
}'
按ID查询知识库容器
接口地址:/kl/api/saas/container/queryById
请求方法:GET
权限要求:knowledge_container READ
接口描述:根据ID查询知识库容器详情
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | Integer | 是 | 容器ID |
响应示例
{
"code": 8200,
"message": "操作成功",
"data": {
"id": 1,
"code": "kb_001",
"name": "产品文档知识库",
"category": "common",
"type": "knowledge",
"parentCode": "0",
"description": "产品相关文档",
"status": 1,
"totalSize": 536870912,
"totalSizeDisplay": "512MB",
"capacitySize": 1073741824,
"capacitySizeDisplay": "1GB",
"remainingSize": 536870912,
"remainingSizeDisplay": "512MB",
"fileCount": 100,
"tag": ["产品", "文档"],
"visibilityRange": "MEMBERS_ONLY",
"permissionType": "edit",
"classifyCode": "0",
"classifyName": "默认分类",
"neverExpire": true,
"startTime": "2024-01-01 00:00:00",
"endTime": "2025-01-01 00:00:00",
"embeddingModel": "text-embedding-ada-002",
"embeddingProvider": "openai",
"dims": 1536,
"creator": "admin",
"creatorName": "管理员",
"creatorAvatar": "https://example.com/avatar.png",
"createTime": "2024-01-01 10:00:00",
"modifier": "admin",
"modifierTime": "2024-01-01 10:00:00",
"sort": 1,
"statisticalTime": "2024-01-01 10:00:00",
"kbKnowledgeBasePermissionReqList": []
}
}
请求示例
curl -X GET "${domain}/kl/api/saas/container/queryById?id=1" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"
按编码查询知识库容器
接口地址:/kl/api/saas/container/queryByCode
请求方法:GET
权限要求:knowledge_container READ
接口描述:根据编码查询知识库容器详情
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| code | String | 是 | 容器编码 |
响应示例
{
"code": 8200,
"message": "操作成功",
"data": {
"id": 1,
"code": "kb_001",
"name": "产品文档知识库",
"category": "common",
"type": "knowledge",
"parentCode": "0",
"description": "产品相关文档",
"status": 1,
"totalSize": 536870912,
"totalSizeDisplay": "512MB",
"capacitySize": 1073741824,
"capacitySizeDisplay": "1GB",
"remainingSize": 536870912,
"remainingSizeDisplay": "512MB",
"fileCount": 100,
"tag": ["产品", "文档"],
"visibilityRange": "MEMBERS_ONLY",
"permissionType": "edit",
"classifyCode": "0",
"classifyName": "默认分类",
"neverExpire": true,
"startTime": "2024-01-01 00:00:00",
"endTime": "2025-01-01 00:00:00",
"embeddingModel": "text-embedding-ada-002",
"embeddingProvider": "openai",
"dims": 1536,
"creator": "admin",
"creatorName": "管理员",
"creatorAvatar": "https://example.com/avatar.png",
"createTime": "2024-01-01 10:00:00",
"modifier": "admin",
"modifierTime": "2024-01-01 10:00:00",
"sort": 1,
"statisticalTime": "2024-01-01 10:00:00",
"kbKnowledgeBasePermissionReqList": []
}
}
请求示例
curl -X GET "${domain}/kl/api/saas/container/queryByCode?code=kb_001" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"
查询知识库标签列表
接口地址:/kl/api/saas/container/tags
请求方法:GET
权限要求:knowledge_container READ
接口描述:分页查询知识库容器标签列表
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | String | 否 | 标签名称(模糊查询) |
| pageNo | Integer | 是 | 当前页码,默认1 |
| pageSize | Integer | 是 | 页码大小,默认10 |
响应示例
{
"code": 8200,
"message": "操作成功",
"data": {
"records": [
{
"name": "产品文档",
"num": 5
},
{
"name": "技术文档",
"num": 3
}
],
"total": 2,
"totalPage": 1,
"pageNo": 1,
"pageSize": 10
}
}
请求示例
curl -X GET "${domain}/kl/api/saas/container/tags?pageNo=1&pageSize=10" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"
删除知识库容器
接口地址:/kl/api/saas/container/delete
请求方法:DELETE
权限要求:knowledge_container WRITE
接口描述:删除知识库容器
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | Integer | 是 | 容器ID |
响应示例
{
"code": 8200,
"message": "删除成功",
"data": "操作成功"
}
请求示例
curl -X DELETE "${domain}/kl/api/saas/container/delete?id=1" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"