文档大纲

给 Claude 和 OpenClaw 装上”火眼金睛”:OCR 部署实战手册

你有没有试过把一份扫描版 PDF 丢给 Claude,结果它老老实实回你一句:"抱歉,我无法读取图片内容"?

或者更现实一点的场景:你用 OpenClaw 跑了个自动回单机器人,结果客户发来一张发票截图,机器人回了一句"请发送文字消息"——订单就这么黄了。

这事儿本质上是个老问题:现在的 AI 默认是个"文字动物"。LLM 训练时主要吃的是纯文本,能"看"图是因为另外接了视觉模型,但即便是最强多模态模型,遇到下面三类东西也容易翻车:

类型为什么 AI 经常翻车
扫描版 PDF整页是图,不是文字层
手机截图、发票、合同照片包含手写字、印章、表格、倾斜
长文档(整本专著)多模态上下文窗口塞不下

OCR(Optical Character Recognition,光学字符识别)就是给 AI 装上的"眼睛"。 装上之后,Claude 能直接读扫描版 PDF,OpenClaw 能自动解析客户截图,整本法律卷宗一次性转 Markdown——你不再需要手动敲一遍。

这篇就把"装眼睛"这件事彻底讲清楚:为什么装、装完能干什么、怎么装、有哪些坑。不管你用的是 Claude Desktop 还是 OpenClaw,看完都能照着做。

一、装上 OCR 之后,到底能解锁什么?

先说价值,因为不是所有人都清楚"OCR 接 AI"这件事的想象空间。

5 类典型场景:

  1. 扫 PDF 直接问答 — 丢一份扫描版合同给 Claude,直接问"违约条款在哪一页?"
  2. 截图自动识别 — OpenClaw 自动把客户发来的发票转成结构化数据入库
  3. 批量处理图片 — 一次给 50 张产品图,自动提取 SKU 和价格
  4. 整本专著解析 — 一本 500 页的法律卷宗一次性转 Markdown
  5. 跨模态检索 — 把所有历史截图建索引,让 AI"记起"任何一张图里的内容

一句话总结:OCR 不只是"识别文字",它是把 AI 从文字工作者变成全模态助理的关键拼图。

二、两个 OCR 引擎怎么选?

OCR 后端不是装一个就行——选错了等会白忙活。两个主流选项定位完全不同:

引擎定位适合场景硬件要求
PaddleOCR(百度开源)通用 OCR 主力扫描 PDF、截图、表格、公式、版面分析CPU 也能跑;GPU 更快
Unlimited-OCR(百度新出)长文档一次性解析整本专著、法律卷宗、长 PDF≥24GB 显存(推荐 A100/H100)

一句话选型建议:

90% 的场景用 PaddleOCR 就够了;只有遇到"几百页连续扫描的卷宗"才需要上 Unlimited-OCR。

下面重点讲 PaddleOCR 的部署(覆盖 90% 场景),Unlimited-OCR 放在最后一节作为高阶选项。

三、部署 PaddleOCR:两种最常用姿势

PaddleOCR 提供三种部署方式,我们只讲最常用的两种——HTTP 自托管和 Claude Desktop 的 MCP 插件。第三种 Docker 容器化是给生产环境用的,个人用户跳过即可。

姿势 A:本地起一个 HTTP 服务(推荐,所有平台通用)

一行命令起服务:

\\\`bash

pip install paddlex paddlex –install serving

paddlex –serve –pipeline PaddleOCR-VL-1.6 \\\`

跑起来之后,访问 http://127.0.0.1:8080 就能看到 API 文档。

不同场景选不同 pipeline:

Pipeline干啥用
OCR纯文字识别(最快)
PP-OCRv5-latin多语言版(含英文拉丁)
PP-StructureV3版面 + 表格 + 公式(推荐扫 PDF)
PaddleOCR-VL-1.6端到端 VLM(精度最高,啥场景都能干)

💡 小白建议:先跑 PaddleOCR-VL-1.6,啥场景都适用;慢了再换轻量版。

🔥 GPU 加速:机器有显卡就加 --device gpu,速度快 5-10 倍。

姿势 B:直接装 MCP 插件(Claude Desktop 用户最快)

如果你只用 Claude Desktop、不打算接 OpenClaw,这是 5 分钟搞定的方案:

\\\`bash

pip install paddleocr-mcp \\\`

然后编辑 Claude Desktop 配置文件(重启 Claude 生效):

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
  • Linux:~/.config/Claude/claude_desktop_config.json

最简配置(用百度 AI Studio 官方 API,零部署):

\\\json { "mcpServers": { "paddleocr": { "command": "paddleocr_mcp", "args": [], "env": { "PADDLEOCR_MCP_MODEL": "PaddleOCR-VL-1.6", "PADDLEOCR_MCP_PPOCR_SOURCE": "aistudio", "PADDLEOCR_MCP_AISTUDIO_ACCESS_TOKEN": "<你的-token>" } } } } \\\

token 去 百度 AI Studio 申请,免费的额度日常够用。

接本地自托管服务(数据隐私 / 批量处理用):

如果你按姿势 A 起好了本地服务,配置改成这样:

\\\json { "mcpServers": { "paddleocr": { "command": "uvx", "args": ["--from", "paddleocr-mcp", "paddleocr_mcp"], "env": { "PADDLEOCR_MCP_MODEL": "PaddleOCR-VL-1.6", "PADDLEOCR_MCP_PPOCR_SOURCE": "self_hosted", "PADDLEOCR_MCP_SELF_HOSTED_BASE_URL": "http://127.0.0.1:8080" } } } } \\\

重启 Claude Desktop,对话框里说"用 OCR 工具把这份 PDF 转成 Markdown",OCR 工具会自动出现在工具列表里。

四、让 OpenClaw 也能用 OCR

OpenClaw 通过 ~/.openclaw/workspace/skills/<name>/SKILL.md 注册技能(skill)。装一个 OCR skill 只需要写一个文件。

第一步:先按姿势 A 起好 PaddleOCR 服务

\\\bash paddlex --serve --pipeline PP-StructureV3 --port 8080 \\\

(保持后台运行,或用 tmux / screen 挂起)

第二步:写一个 skill

\\\bash mkdir -p ~/.openclaw/workspace/skills/paddleocr-ocr \\\

新建文件 ~/.openclaw/workspace/skills/paddleocr-ocr/SKILL.md:

\\\`markdown

name: paddleocr-ocr description: 调用本地 PaddleOCR 服务对图片/PDF 做 OCR 或版面解析 metadata: openclaw: requires: bins: [curl, jq] env: [PADDLEOCR_BASE_URL] primaryEnv: PADDLEOCR_BASE_URL

调用 \${PADDLEOCR_BASE_URL:-http://127.0.0.1:8080} 的 PaddleOCR 服务。

用法

  1. 把图片/PDF base64 编码
  2. POST 到 /predict/ocr_system
  3. 返回 Markdown / JSON 结果

\\\`

第三步:让 OpenClaw 加载它

\\\`bash openclaw doctor # 验证配置

\\\`

重启后,OpenClaw 对话里直接说"用 paddleocr-ocr 解析这张扫描件"就会自动触发。

五、高阶场景:整本专著用什么?

如果你的场景是"几百页扫描 PDF 一次性转 Markdown"(法律卷宗、古籍数字化、学术专著),PaddleOCR 会比较慢,这时候上 Unlimited-OCR。

它没有 MCP,需要起 vLLM 或 SGLang 暴露 OpenAI 兼容 API,然后用 OpenClaw skill 包一层。

启动 Unlimited-OCR(vLLM)

\\\bash docker pull vllm/vllm-openai:unlimited-ocr docker run -dp 8000:8000 vllm/vllm-openai:unlimited-ocr \\ --model baidu/Unlimited-OCR --port 8000 \\\

OpenClaw skill(节选)

~/.openclaw/workspace/skills/unlimited-ocr/SKILL.md:

\\\`markdown

name: unlimited-ocr description: 调用本地 Unlimited-OCR 服务做长文档一次性解析

调用 \${UNLIMITED_OCR_BASE_URL:-http://127.0.0.1:8000} 的 Unlimited-OCR 服务。

\\\bash IMG_B64=$(base64 -w0 input.png) curl -s \${UNLIMITED_OCR_BASE_URL:-http://127.0.0.1:8000}/v1/chat/completions \\ -H "Content-Type: application/json" -d '{ "model": "Unlimited-OCR", "messages": [{"role": "user", "content": [ {"type":"image_url","image_url":{"url":"data:image/png;base64,'"\$IMG_B64"'"}}, {"type":"text","text":"Multi page parsing."} ]}] }' | jq -r '.choices[0].message.content' \\\

注意事项

  • 长 PDF 用提示词 "Multi page parsing."
  • 显存:≥24GB,Hopper(A100/H100)体验最佳

\\\`

⚠️ 坑提醒:启 vLLM 时务必保留 –enable-custom-logit-processor,否则长文档会出现"无限循环重复"的乱码。

六、常见坑 FAQ

Q1:装完 paddleocr-mcp,Claude 工具列表里没出现? A:检查 JSON 格式(逗号、引号),然后完全退出 Claude Desktop 再开(不是关窗口,要从菜单退出)。

Q2:报错 Connection refused 127.0.0.1:8080? A:PaddleX 服务没起来。重新跑 paddlex –serve –pipeline PaddleOCR-VL-1.6,确认能看到 "Running on http://0.0.0.0:8080" 字样。

Q3:识别中文乱码? A:模型换成 PP-OCRv5 系列,别用 PP-OCRv5-latin(只支持拉丁字母)。

Q4:扫 PDF 转出来版式全乱了? A:换成 PP-StructureV3 或 PaddleOCR-VL-1.6 pipeline,这两个专门处理版面。

Q5:Unlimited-OCR 跑得慢 / 重复? A:显存不够;或漏了 –enable-custom-logit-processor。

Q6:OpenClaw skill 不生效? A:跑 openclaw doctor 看诊断;检查 SKILL.md 路径是否在 ~/.openclaw/workspace/skills/ 下;完全重启 OpenClaw daemon。

七、选型速查表

最后一张表帮你 3 秒做决定:

你的场景推荐方案一句话说明
Claude Desktop 个人/小团队,零部署paddleocr-mcp + AI Studio API5 分钟搞定,免费额度够用
Claude Desktop 自托管(数据隐私 / 批量)paddlex –serve + paddleocr-mcp self_hosted起一个本地服务,全家通用
OpenClaw 通用 OCRpaddlex –serve + OpenClaw skill起服务,写 30 行 skill
OpenClaw 长文档 / 法律卷宗Unlimited-OCR vLLM + skill显存要求高,按需启用
多频道(飞书 / 微信 / Telegram)触发 OCROpenClaw skill + 自托管服务OpenClaw 负责转发,OCR 做后台

写在最后

OCR 不只是"识别文字"那么简单——它是把 AI 从"文字工作者"变成"全模态助理"的关键拼图。

装上之后,你会发现很多以前得手动做的事突然自动化了:扫描件直接问答、截图自动入库、长文档一次性消化。Claude + OpenClaw 加 OCR,等于给你的 AI 工作流装上眼睛。

下一步建议:

  1. 先按第三节起好 PaddleOCR 服务(5 分钟)
  2. 再装 paddleocr-mcp 或写 OpenClaw skill(10 分钟)
  3. 找个真实场景试一下——把最近的一份扫描 PDF 丢给 Claude

阅读量: 241