创建知识导入任务
POST /studio/rag/chat/v1/datasets/{dataset_id}/jobs
请求头(Request Header)
Authorization 可以使用如下两种Header
- 动态生成 Authorization Header, 参考认证(authentication)
-H "X-Date: $xdate" \
-H "Authorization: $auth"
- 直接提供完整的 Authorization Header,可以通过浏览器的开发者工具DevTools查看并复制接口调用的完整信息
-H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6InB...'
请求参数(Request Parameters)
| 名称 | 类型 | 必须 | 描述 |
|---|---|---|---|
| dataset_id | string | 是 | 知识库的ID. |
请求体(Request Body)
| 名称 | 类型 | 必须 | 描述 |
|---|---|---|---|
| data_source_type | integer($enum) | 是 | 数据源类型. |
| target_path | string | 否 | 知识导入的目标路径. |
| urls | array[string] | 否 | 上传URL(如果适用). |
| document_pid | string | 否 | 知识导入的目标路径的ID. |
| notion_page_ids | array[string] | 否 | notion页面ID列表. |
| segment_strategy | object | 否 | 段落策略参数,可调整以适应知识分段方法. |
其中,data_source_type有如下情况
| 枚举值 | 数值 | 含义 |
|---|---|---|
| DATA_SOURCE_TYPE_UNSPECIFIED | 0 | 开始,默认 |
| LOCAL_FILE | 1 | 本地知识 |
| WEB | 2 | 网络知识 |
| NOTION | 3 | Notion知识 |
其中,segment_strategy的参数如下
| 名称 | 类型 | 必须 | 描述 |
|---|---|---|---|
| chunk_size | int32 | 否 | 段落中允许的最大token数. |
| chunk_overlap | int32 | 否 | 段落之间允许重叠的token数量. |
| separators | array[string] | 否 | 用于分段文本的分隔符列表. |
请求示例(Request Example)
curl 'https://rag.cn-sh-01.sensecoreapi.cn/studio/rag/chat/v1/datasets/rag_d4ca853831b44ba3962ac4464377ca17/jobs' \
-H "X-Date: $xdate" \
-H "Authorization: $auth" \
-X POST \
--data-raw '{
"dataset_id":"rag_d4ca853831b44ba3962ac4464377ca17",
"data_source_type":2,
"urls":["https://www.nowcoder.com/practice/65cfde9e5b9b4cf2b6bafa5f3ef33fa6?tpId=295"],
"segment_strategy": {
"chunk_overlap": 50,
"chunk_size": 512,
"separators": [" ","。","."," "]
}
}'
响应(Response)
| 名称 | 类型 | 描述 |
|---|---|---|
| job_id | string | 任务ID. |
| data_source_type | integer($enum) | 数据源类型 |
| job_state | integer($enum) | 任务状态. |
| creator | string | 创建者用户名. |
| oss_temp_path | string | OSS临时路径,上传本地知识的临时路径. |
| err_msg | string | 错误信息(如果有错误发生). |
| job_info | object | 与任务文件相关的信息. |
| document_info | array[object] | 已解析知识的信息列表. |
| create_time | string($date-time) | 创建时间. |
| finish_time | string($date-time) | 完成时间. |
| target_path | string | 知识导入的目标路径. |
| urls | array[string] | 上传URL(如果适用. |
| document_pid | string | 知识导入的目标路径的ID. |
| notion_page_ids | array[string] | notion页面ID列表. |
| segment_strategy | object | 段落策略参数,可调整以适应知识分段方法. |
其中,job_state有如下情况
| 枚举值 | 数值 | 含义 |
|---|---|---|
| STAGE_UNSPECIFIED | 0 | 未知状态 |
| CREATING | 1 | 任务正在创建 |
| UPLOADING | 2 | 知识正在上传 |
| CRAWLING | 3 | 知识正在抓取和收集 |
| PARSING | 4 | 正在解析 |
| PARSE_SUCCEED | 5 | 解析完成 |
| PARSE_FAILED | 6 | 解析失败 |
| PARSE_CANCELLED | 7 | 解析取消 |
| FAILED | 8 | 任务失败 |
| CRAWLING_FAILED | 9 | 抓取失败 |
| CRAWLING_QUEUED | 10 | 抓取排队 |
其中,job_info的参数如下
| 名称 | 类型 | 描述 |
|---|---|---|
| total_document_size | int64 | 总文件大小. |
| total_document_count | int64 | 文件总数. |
| succeed_document_size | int64 | 成功解析文件的总大小. |
| succeed_document_count | int64 | 成功解析文件的总数量. |
| succeed_token_count | int64 | 成功解析的标记总数. |
| failed_document_size | int64 | 解析失败的文件总大小. |
| failed_document_count | int64 | 解析失败的文件总数量. |
其中,document_info的参数如下
| 名称 | 类型 | 描述 |
|---|---|---|
| document_id | string | 文档ID. |
| display_name | string | 知识名称. |
| segment_count | int64 | 文档的段数量. |
| document_token | int64 | 标记数. |
| document_state | integer($enum) | 知识状态. |
| document_error | integer($enum) | 失败原因. |
| document_size | int64 | 文档大小. |
其中,document_state有如下情况
| 枚举值 | 数值 | 含义 |
|---|---|---|
| DOCUMENT_STAGE_UNSPECIFIED | 0 | 未指定 |
| DOCUMENT_PARSING | 1 | 正在解析 |
| DOCUMENT_PARSED_SUCCESSFULLY | 2 | 解析成功 |
| DOCUMENT_PARSING_FAILED | 3 | 解析失败 |
| DOCUMENT_PARSING_CANCELLED | 4 | 已取消 |
| DOCUMENT_QUEUED | 5 | 排队中 |
| DOCUMENT_CRAWLING | 6 | 抓取中 |
| DOCUMENT_CRAWLING_FAILED | 7 | 抓取失败 |
| DOCUMENT_FAILED | 8 | 知识在其他阶段失败 |
| DOCUMENT_CRAWLING_QUEUED | 9 | 爬取排队中 |
其中,document_error有如下情况
| 枚举值 | 数值 | 含义 |
|---|---|---|
| DOCUMENT_ERROR_UNSPECIFIED | 0 | 未知原因 |
| UNSUPPORTED_FORMAT | 1 | 不支持的格式 |
| UNSUPPORTED_WEBSITE_CRAWLING | 2 | 不支持的网站抓取 |
| OTHER_TECHNICAL_REASONS | 3 | 其他技术原因 |
| DOWNLOAD_FAILURE | 4 | 文档存储失败 |
| STORAGE_FAILURE | 5 | 文档存储失败 |
| STORAGE_TIMEOUT | 6 | 文档存储超时 |
| UPLOAD_FAILURE | 7 | 文档上传到AOSS失败 |
| DATABASE_EXCEPTION | 8 | 数据库异常 |
| OSS_EXCEPTION | 9 | 对象存储异常 |
| DOCUMENT_STORAGE_ACCESS_EXCEPTION | 10 | 文档存储访问异常 |
| FILE_CONTENT_EXCEPTION | 11 | 文件内容异常 |
响应示例(Response Example)
{
"name": "",
"job_id": "eb0297698061432a905fb00ce70dfd2e",
"data_source_type": 2,
"job_state": 1,
"creator": "adimp0224",
"oss_temp_path": "",
"err_msg": "",
"job_info": null,
"document_info": [],
"create_time": null,
"finish_time": null,
"target_path": "",
"urls": [],
"document_pid": "",
"notion_page_ids": [],
"segment_strategy": null
}