知识工具API文档
约 834 字大约 3 分钟
2026-03-27
基础路径
所有接口的基础路径为:/v1/open/tools
API 接口列表
| 接口名称 | HTTP 方法 | 路径 | 功能描述 |
|---|---|---|---|
| 解析文档 | POST | /doc/parse | 解析上传的文档内容 |
| 文本分块 | POST | /doc/split | 将文本按指定规则分块 |
| 获取任务状态 | GET | /task/status | 查询异步任务的执行状态 |
| 从文档中提取图片 | POST | /doc/extract/images | 从上传的文档中提取图片 |
详细接口说明
1. 解析文档
接口路径:POST /v1/open/tools/doc/parse
功能描述:解析上传的文档内容,支持同步和异步两种模式
请求方式:multipart/form-data
请求参数:
| 参数名 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
| file | MultipartFile | 是 | - | 文档文件 |
| parseStrategy | String | 否 | - | 解析策略,支持的值见下表 |
| async | boolean | 否 | true | 是否异步处理 |
parseStrategy 解析策略说明:
如果未指定解析策略,系统根据文件格式自动选择合适的解析策略。异步解析需要通过获取任务状态接口获取结果。
| 策略值 | 说明 | 是否支持同步解析 |
|---|---|---|
| tika | Apache Tika 文档解析 | 是 |
| mineru-v3 | MinerU 本地版本解析 | 否 |
| markitdown | 文本解析Markdown | 是 |
| html-to-markdown | HTML转Markdown | 是 |
| image-vl | 图片VL解析 | 是 |
响应:
- 同步模式(async=false):
{
"code": 200,
"message": "success",
"data": {
"docId": 123,
"content": "解析后的文本内容",
"chunks": [...]
}
}- 异步模式(async=true,默认):
{
"code": 200,
"message": "success",
"data": "xxx"
}2. 文本分块
接口路径:POST /v1/open/tools/doc/split
功能描述:将文本按指定规则分割成小块
请求体:
{
"text": "需要分块的长文本内容...",
"contentType": "markdown",
"splitOptions": {
"separatorList": ["\\n\\n", "\\n"],
"maxChunkLength": 500,
"overlapRate": 0.1
}
}请求参数说明:
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| text | String | 是 | 需要分块的文本内容 |
| contentType | String | 否 | 内容类型: markdown, plain_text |
| splitOptions | SplitOptions | 否 | 分块选项 |
SplitOptions 参数说明:
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| splitType | String | 否 | 分块类型 |
| regexList | List<String> | 否 | 正则表达式列表 |
| separatorList | List<String> | 否 | 分隔符列表 |
| maxChunkLength | Integer | 否 | 最大分块长度 |
| overlapRate | Double | 否 | 重叠率 |
| keepSeparator | Boolean | 否 | 是否保留分隔符,默认保留 |
| extraParams | Map<String, String> | 否 | 额外参数,根据分块类型不同而不同 |
splitType 分块类型说明:
如果未指定分块类型,系统根据contentType内容类型自动选择合适的分块类型。
| 策略值 | 说明 |
|---|---|
| masked-markdown | 按Markdown标题分快 |
| common-text | 通用文本分块 |
| character-spliter | 按字符分块 |
| recursive-character | 递归字符分块 |
响应:
{
"code": 200,
"message": "success",
"data": {
"chunks": [
{
"content": "第一段文本内容"
}
],
"totalChunks": 10,
"totalLength": 1000
}
}3. 获取任务状态
接口路径:GET /v1/open/tools/task/status
功能描述:查询异步任务的执行状态
请求参数:
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| taskId | String | 是 | 任务ID |
响应:
{
"code": 200,
"message": "success",
"data": {
"taskId": "xxx",
"status": "PARSED",
"result": {
// "具体任务结果..."
},
}
}任务状态说明
- PARSED:任务解析完成
- ERROR:任务执行失败
4. 从文档中提取图片
接口路径:POST /v1/open/tools/doc/extract/images
功能描述:从上传的文档中提取图片,响应返回图片的临时访问URL,保留24小时
请求方式:multipart/form-data
请求参数:
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| file | MultipartFile | 是 | 文档文件 |
响应:
{
"code": 200,
"message": "success",
"data": [
"https://example.com/image1.png",
"https://example.com/image2.png"
// ...
]
}