ForcePilot/docs/latest/advanced/document-processing.md
Wenjie Zhang 4547114611 docs: 更新文档解析超时时间默认值为1800秒
将文档解析的超时时间默认值从600秒调整为1800秒,以提供更长的处理时间
2026-01-01 22:20:11 +08:00

145 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 文档处理与 OCR
系统提供 5 种文档处理选项:
- **RapidOCR**: CPU 友好,无需 GPU适合基础文字识别
- **MinerU**: 本地化高精度 VLM 解析,适合复杂 PDF 和表格文档
- **MinerU Official**: 官方云服务 API无需本地部署开箱即用
- **PP-StructureV3**: 结构化解析,适合表格、票据等特殊格式
- **DeepSeek OCR**: 基于 SiliconFlow API 的 DeepSeek OCR OCR 服务
## 支持的文件类型
### 常规文档格式
- **文本文档**: `.txt`, `.md`, `.html`, `.htm`
- **Word 文档**: `.docx`
- **PDF 文档**: `.pdf`
- **电子表格**: `.csv`, `.xls`, `.xlsx`
- **JSON 数据**: `.json`
### 图像格式(需要 OCR
- **常见图片**: `.jpg`, `.jpeg`, `.png`, `.bmp`, `.tiff`, `.tif`, `.gif`, `.webp`
### ZIP 压缩包
- **ZIP 文档**: `.zip` - 支持包含 Markdown 文件和图片的压缩包
- 自动提取和处理 ZIP 包中的 `.md` 文件
- 自动处理 ZIP 包中的图片文件并上传到对象存储MINIO
- 图片链接会自动替换为可访问的 URL
- 优先处理名为 `full.md` 的文件,否则使用第一个 `.md` 文件
- 支持图片目录的智能识别(`images/`、`../images/` 等)
::: tip 图片显示
文档中的图片会自动上传到对象存储并替换为可访问的 URL。但是如果想要在外部正常显示图片需要配置 `HOST_IP` 环境变量,将其设置为您的服务器 IP 地址。
:::
## 快速配置
### 1. 基础 OCR (RapidOCR)
```bash
# 下载模型
hf download SWHL/RapidOCR --local-dir ./models/SWHL/RapidOCR
# 启动服务
docker compose up -d api
```
需要确保 `MODEL_DIR` 环境变量指向 RapidOCR 上层目录,例如 `./models`
### 2. 高精度 OCR (MinerU)
需要在 `.env` 文件中配置:
```bash
MINERU_VL_SERVER=http://localhost:30000 # 对应 docker compose 中的 mineru-vllm-server 服务
MINERU_API_URI=http://localhost:30001 # 对应 docker compose 中的 mineru-api 服务
```
然后启动相关服务
```bash
# 需要 GPU启动 MinerU 服务
docker compose up mineru-vllm-server mineru-api -d
# 启动主服务
docker compose up api -d
```
::: tip 处理超时
文档解析超时时间默认 1800 秒,可通过 `MINERU_TIMEOUT` 环境变量调整。
:::
### 3. 官方云服务 (MinerU Official)
API 密钥可以从 [MinerU 官网](https://mineru.net) 申请。
然后在 `.env` 文件中添加
```bash
# 设置 API 密钥环境变量
MINERU_API_KEY="your-api-key-here"
```
然后使用 `docker compose up api -d` 重启后端服务。
### 4. 结构化解析 (PP-StructureV3)
```bash
# 需要 GPU启动 PP-StructureV3 服务
docker compose up -d paddlex
# 启动主服务
docker compose up -d api
```
### 5. DeepSeek OCR (SiliconFlow)
DeepSeek OCR 基于 SiliconFlow API提供智能文档理解和 Markdown 格式输出。
API 密钥可以从 [SiliconFlow](https://cloud.siliconflow.cn/i/Eo5yTHGJ) 申请。
然后在 `.env` 文件中添加:
```bash
# 设置 SiliconFlow API 密钥
SILICONFLOW_API_KEY="your-api-key-here"
```
重启后端服务即可使用:
```bash
docker compose restart api
```
当前还不支持保存其中的图片信息mineru 当前版本已支持。
## 处理器选择
| 处理器 | 适用场景 | 硬件要求 | 特点 |
|--------|----------|------------|------|
| **RapidOCR** | 基础文字识别 | CPU | 速度快,资源占用低 |
| **MinerU** | 复杂 PDF、表格、公式 | GPU | 精度高,版面分析好 |
| **MinerU Official** | 复杂文档解析(云服务) | 无特殊要求 | 官方云服务,开箱即用,有 API 配额 |
| **PP-StructureV3** | 表格、票据、结构化文档 | GPU | 专业版面解析 |
| **DeepSeek OCR** | 智能文档理解和 Markdown 输出 | 无特殊要求 | 云端服务 |
## 参数说明
### enable_ocr 选项
对应网页中的 `使用 OCR` 选项
- `disable`: 不启用 OCRPDF 按文本提取,图片**必须选择 OCR 方式**
- `onnx_rapid_ocr`: RapidOCR 处理
- `mineru_ocr`: MinerU HTTP API 处理
- `mineru_official`: MinerU 官方云服务 API 处理
- `paddlex_ocr`: PP-StructureV3 处理
- `deepseek_ocr`: DeepSeek OCRSiliconFlow API处理
### 注意事项
- **图片文件必须启用 OCR**,否则无法提取内容
- MinerU 和 PP-StructureV3 需要 GPU 支持
- MinerU Official 需要设置 `MINERU_API_KEY` 环境变量
- DeepSeek OCR 需要设置 `SILICONFLOW_API_KEY` 环境变量
- RapidOCR 适合 CPU 环境和基础识别需求