catalog/repos/aidenwu0209--paddleocr-skills.md

178 lines
5.5 KiB
Markdown
Raw Normal View History

2026-04-07 11:44:56 +08:00
# PaddleOCR 图文识别技能
`OCR` `文字识别` `文档解析` `PaddleOCR` `AI工具`
# PaddleOCR 技能
[English](./README.md) | [简体中文](./README_cn.md)
本目录包含官方 PaddleOCR Agent 技能,可集成到 Claude Code 等 AI 应用中,实现图片/PDF 的 OCR 文字提取和版面感知的文档解析。
## 包含的技能
- `paddleocr-text-recognition`:从图片/PDF 中提取文字。
- `paddleocr-doc-parsing`:文档解析,将图片/PDF 转换为 Markdown。
## 前置条件
1. 运行技能的设备上需安装 Python 3.8 或更高版本。
2. 这些技能依赖 PaddleOCR 官方 API需要 API 凭据。访问 [PaddleOCR 官网](https://www.paddleocr.com),点击 **API**,选择所需模型,复制 `API_URL``Token`,分别对应 API 地址和用于认证的访问令牌。各技能支持的模型如下:
- `paddleocr-text-recognition``PP-OCRv5`
- `paddleocr-doc-parsing``PP-StructureV3``PaddleOCR-VL``PaddleOCR-VL-1.5`
## 在 AI 应用中使用
> 以下说明涵盖两个技能,按需安装和配置所需技能即可。
### 安装到 AI 应用
#### 方式一:通过 `skills` CLI 安装
`skills` CLI 可将技能全局安装到设备上,供所有 AI 应用使用。需要安装 [Node.js](https://nodejs.org/en/download)。
```shell
npx skills add PaddlePaddle/PaddleOCR -g --skill paddleocr-text-recognition -y
npx skills add PaddlePaddle/PaddleOCR -g --skill paddleocr-doc-parsing -y
```
> 本仓库体积较大,网络较慢时 `npx skills add` 可能超时。若出现此问题,请先在本地克隆仓库,再从本地路径安装:
>
> ```shell
> git clone https://github.com/PaddlePaddle/PaddleOCR.git
> npx skills add ./PaddleOCR/skills/paddleocr-text-recognition
> ```
#### 方式二:通过 `clawhub`OpenClaw安装
```shell
clawhub install paddleocr-text-recognition
clawhub install paddleocr-doc-parsing
```
详见 [OpenClaw 技能文档](https://docs.openclaw.ai/tools/skills)。
#### 方式三:手动安装
如以上方式不可用,可克隆仓库后手动将技能目录复制到 AI 应用所需位置(需安装 [Git](https://git-scm.com/downloads)
```shell
git clone https://github.com/PaddlePaddle/PaddleOCR.git
```
克隆完成后,技能源码位于 `PaddleOCR/skills` 目录下。请参考对应 AI 应用的文档完成安装:
- Claude Code<https://code.claude.com/docs/en/skills>
- claude.ai<https://support.claude.com/en/articles/12512180-use-skills-in-claude>
- OpenClaw<https://docs.openclaw.ai/tools/skills>
### 配置环境变量
安装完成后,需配置必要的环境变量以使技能正常工作。各技能所需变量如下:
| 技能 | 必填 | 可选 |
| --- | --- | --- |
| `paddleocr-text-recognition` | `PADDLEOCR_OCR_API_URL`API 地址)、`PADDLEOCR_ACCESS_TOKEN`(访问令牌) | `PADDLEOCR_OCR_TIMEOUT`API 请求超时时间) |
| `paddleocr-doc-parsing` | `PADDLEOCR_DOC_PARSING_API_URL`API 地址)、`PADDLEOCR_ACCESS_TOKEN`(访问令牌) | `PADDLEOCR_DOC_PARSING_TIMEOUT`API 请求超时时间) |
以下为部分 AI 应用的配置方式:
- **Claude Code**:在项目的 `.claude/settings.local.json` 中添加 `env` 字段:
```json
{
"env": {
"PADDLEOCR_ACCESS_TOKEN": "<ACCESS_TOKEN>",
"PADDLEOCR_OCR_API_URL": "<OCR_API_URL>",
"PADDLEOCR_DOC_PARSING_API_URL": "<DOC_PARSING_API_URL>"
}
}
```
- **OpenClaw**:在 `~/.openclaw/openclaw.json` 中添加技能配置:
```json
{
"skills": {
"entries": {
"paddleocr-text-recognition": {
"enabled": true,
"env": {
"PADDLEOCR_OCR_API_URL": "<OCR_API_URL>",
"PADDLEOCR_ACCESS_TOKEN": "<ACCESS_TOKEN>"
}
},
"paddleocr-doc-parsing": {
"enabled": true,
"env": {
"PADDLEOCR_DOC_PARSING_API_URL": "<DOC_PARSING_API_URL>",
"PADDLEOCR_ACCESS_TOKEN": "<ACCESS_TOKEN>"
}
}
}
}
}
```
### 使用示例
配置完成后,用自然语言描述 OCR 或文档解析任务,并提供文件 URL 或本地路径AI 应用即可调用对应技能。
**paddleocr-text-recognition**
URL 示例:
```text
提取此文件中的所有文字https://example.com/invoice.jpg
```
本地文件示例:
```text
提取本地文件 C:\docs\invoice.pdf 中的所有文字
```
**paddleocr-doc-parsing**
URL 示例:
```text
解析此 PDF 并返回正文内容及所有表格https://example.com/report.pdf
```
本地文件示例:
```text
解析本地文件 C:\docs\report.pdf 并返回完整结构化输出。
```
## 本地测试
本节介绍如何在本地运行冒烟测试,以验证技能是否正常工作。
> 以下示例涵盖两个技能,按需运行对应命令即可。
请确保当前工作目录为包含本文件的目录。
1. 安装依赖。
```shell
python -m pip install -r paddleocr-text-recognition/scripts/requirements.txt
python -m pip install -r paddleocr-doc-parsing/scripts/requirements.txt
# 可选:仅在使用文档文件优化功能时需要
python -m pip install -r paddleocr-doc-parsing/scripts/requirements-optimize.txt
```
2. 配置环境变量(变量列表见[配置环境变量](#配置环境变量))。
```shell
export PADDLEOCR_OCR_API_URL="<OCR_API_URL>"
export PADDLEOCR_ACCESS_TOKEN="<ACCESS_TOKEN>"
export PADDLEOCR_DOC_PARSING_API_URL="<DOC_PARSING_API_URL>"
```
3. 运行冒烟测试脚本。
```shell
python paddleocr-text-recognition/scripts/smoke_test.py
python paddleocr-doc-parsing/scripts/smoke_test.py
```