> For the complete documentation index, see [llms.txt](https://docs.cherryai.com.cn/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cherryai.com.cn/knowledge-base/document-preprocessing.md).

# 文档解析与 OCR

知识库只能检索已经解析出的文字。扫描 PDF、双栏论文、复杂表格和图片型页面，先把正文解析正确，再调整模型和召回参数。

{% hint style="info" %}
判断解析是否合格，不看“导入成功”四个字，而看正文顺序、关键表格、金额日期和扫描文字能否被正确读取。
{% endhint %}

## 先判断资料类型

| 资料类型                 | 推荐起点      | 必查内容          |
| -------------------- | --------- | ------------- |
| Markdown、TXT、HTML    | 默认读取      | 标题层级、编码、换行    |
| 可复制文字的 PDF、DOCX、PPTX | 先用默认处理    | 段落顺序、页眉页脚、表格  |
| 扫描 PDF、截图、图片型页面      | 本地或系统 OCR | 识别语言、金额、日期、编号 |
| 多栏、公式或复杂表格 PDF       | 专用文档处理器   | 阅读顺序、表格结构、脚注  |

## 解析在检索链路中的位置

<figure><img src="https://3562065924-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0Ut5BptC3t8CtSU1UWpM%2Fuploads%2FlOKvTNoShRGrj0ErU2aK%2Fclipboard.png?alt=media&amp;token=d245723c-b825-4e3d-ab00-6e1d07a96fc9" alt="资料经过解析与 OCR、切分、关键词和向量检索后进入回答的知识库检索架构图"><figcaption><p>解析错误会继续传到分块和召回；下游模型无法恢复从正文中已经丢失的内容。</p></figcaption></figure>

## 配置并验收一份样本文档

{% stepper %}
{% step %}

### 1. 选择代表性样本

不要先导入整批资料。选一份最能暴露问题的文档，例如带表格的扫描 PDF 或双栏说明书。
{% endstep %}

{% step %}

### 2. 配置处理能力

打开【设置】→【文档处理】，按需要配置文档解析服务和 OCR。云端服务通常需要 API Key 或服务地址；本地能力可能需要先下载模型。

<figure><img src="https://3562065924-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0Ut5BptC3t8CtSU1UWpM%2Fuploads%2FfxxfAX439W0gARCyS0md%2Fclipboard.png?alt=media&amp;token=315f05e6-fc9d-422e-9127-ef61e895ea97" alt="文档处理设置中的文件解析与 OCR 服务配置"><figcaption><p>先把要使用的服务配置到可用状态，再回到知识库选择处理器。</p></figcaption></figure>
{% endstep %}

{% step %}

### 3. 导入并等待就绪

把样本文档添加到知识库。处理完成后打开正文，检查标题、段落、页码、表格和 OCR 文字。
{% endstep %}

{% step %}

### 4. 检查 Chunks

确认关键条件与结论没有被拆散；页眉、页脚和目录不要大量重复占用片段。

<figure><img src="https://3562065924-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0Ut5BptC3t8CtSU1UWpM%2Fuploads%2FSuW1LQlcdqCWxhLJEEQe%2Fclipboard.png?alt=media&amp;token=6ea5de2d-e4a1-40e2-b31c-d9ca31779eed" alt="知识库高级设置中的智能分段、分隔符、分段大小和重叠大小"><figcaption><p>正文正确后再检查分块；解析错误不能靠增大 Chunk 修复。</p></figcaption></figure>
{% endstep %}

{% step %}

### 5. 用真实问题复测

在【召回测试】中输入一个答案位于该文档中的问题。结果应包含正确来源、完整条件和关键数字。
{% endstep %}

{% step %}

### 6. 固定方案再批量导入

样本合格后，再把同类型资料分批导入。处理器、OCR 或分块设置改变后，对旧资料执行【重新索引】并重复测试。
{% endstep %}
{% endstepper %}

{% hint style="warning" %}
切换处理器或 OCR 不会自动修复已经索引的旧资料。必须重新索引相关条目，才能比较新旧结果。
{% endhint %}

## 处理器与 OCR 怎么选

| 选择           | 适用情况         | 优点               | 注意事项               |
| ------------ | ------------ | ---------------- | ------------------ |
| 默认读取         | 文本型常见格式      | 配置少、速度快          | 复杂排版和扫描页可能丢失内容     |
| System OCR   | 系统支持且图片清晰    | 无需额外 API Key、速度快 | 准确率取决于操作系统、语言和图像质量 |
| 本地 PaddleOCR | 需要离线识别       | 文档不离开本机          | 首次使用前需要下载本地模型      |
| 云端或自托管处理器    | 双栏、复杂表格、公式较多 | 版面分析能力通常更强       | 云端方案会接收用于处理的文档内容   |

{% hint style="danger" %}
敏感资料使用云端文档处理器前，先确认服务条款、数据保留策略和账号权限。完全离线需要解析、OCR、嵌入、重排和聊天各环节都使用本地能力。
{% endhint %}

## 典型问题怎么定位

| 表现       | 先检查           | 处理方向                        |
| -------- | ------------- | --------------------------- |
| 正文为空或很短  | 文件是否为扫描件      | 启用 OCR 或更换处理器               |
| 双栏文字交错   | 正文阅读顺序        | 使用擅长版面分析的处理器                |
| 表格变成零散文字 | 表头、行列关系       | 更换处理器，或把关键规则整理成 Markdown 笔记 |
| 页眉页脚反复出现 | Chunks 中的重复噪声 | 清理源文件或换解析器，不要只提高 Top K      |
| OCR 数字出错 | 金额、日期、编号      | 提高图像清晰度并人工核对高风险字段           |

## 配置说明

| 配置项         | 推荐起点           | 何时调整            | 调整后动作       |
| ----------- | -------------- | --------------- | ----------- |
| 文件处理器       | 先用默认处理         | 正文错序、表格丢失、扫描页为空 | 重新索引样本文档    |
| OCR         | 清晰扫描件优先本地或系统能力 | 图片型页面没有文字或错字较多  | 重新索引并核对关键字段 |
| Chunk 大小与重叠 | 先保留知识库默认设置     | 条件与结论被切开        | 每轮只改一项并重新索引 |
| 验收问题        | 3～5 个真实问题      | 更换处理器、OCR 或分块后  | 使用同一问题集比较   |

## 用户案例

小林导入一份双栏差旅制度 PDF。状态已经就绪，但正文把左右两栏交错在一起，召回结果中的审批条件也不完整。他没有先调高 Top K，而是换用更适合版面分析的处理器，重新索引同一文件，再检查正文和 Chunks。

完成标准是：审批条件按原文顺序可读，金额和日期正确，固定问题能召回包含完整条件的片段。

## 常见问题

<details>

<summary>正文正确，还需要看 Chunks 吗？</summary>

需要。正文正确只说明解析合格；条件和结论仍可能在切分时被分开。

</details>

<details>

<summary>增加 Top K 能修复解析问题吗？</summary>

不能。Top K 只控制返回多少片段，不会恢复正文中已经丢失或错序的内容。

</details>

<details>

<summary>为什么更换处理器后结果没有变化？</summary>

旧资料仍在使用原来的索引。对相关条目执行【重新索引】，再用相同问题复测。

</details>

## 继续阅读

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>添加与整理资料</strong></td><td>选择来源并检查处理状态。</td><td><a href="/knowledge-base/sources.md">添加与整理资料</a></td></tr><tr><td><strong>检查资料与召回</strong></td><td>用固定问题验收解析与分块。</td><td><a href="/knowledge-base/recall-test.md">检查资料与召回</a></td></tr><tr><td><strong>数据、隐私与维护</strong></td><td>确认本地与云端的数据边界。</td><td><a href="/knowledge-base/data.md">数据、隐私与维护</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.cherryai.com.cn/knowledge-base/document-preprocessing.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
