使用Gemini 2.5 Flash、PaddleOCR(本地)或RapidOCR(本地)对PDF和图片进行文档OCR。
文档 OCR 技能( docr)是一项面向实际任务的技能,主要用于使用双子座 2.5 Flash 、 PaddleOCR 或 RapidOCR (本地) 来识别扫描的 PDF 和图像中的文本;. 编译为单个 Go 二进制;
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
使用 Gemini 2.5 Flash、PaddleOCR 或 RapidOCR(本地)识别扫描版 PDF 和图像中的文字。编译为单一 Go 二进制文件。
~/.ocr/config 中配置 API Key(PaddleOCR / RapidOCR 不需要)pip install rapidocr_onnxruntimepip install paddleocr paddlepaddle创建配置文件:
mkdir -p ~/.ocr cat > ~/.ocr/config << EOF # Google Gemini API Key gemini_api_key=your_gemini_key EOF
路径变量说明:以下所有命令均使用
$DOCR变量。运行任意命令前,请先设置该变量:SKILL_DIR="$(cd "$(dirname "")" && pwd)" DOCR="$SKILL_DIR/scripts/docr/docr"
# 使用 RapidOCR(默认)处理单个文档 $DOCR document.pdf $DOCR image.jpg # 使用 Gemini 引擎 $DOCR -engine gemini document.pdf # 使用 PaddleOCR 本地引擎 $DOCR -engine paddle document.pdf # 指定输出文件 $DOCR document.pdf -o result.txt # 批量处理目录中所有支持格式的文件 $DOCR -batch ./docs/ -o ./outputs/
| 引擎 | 命令行标志 | API Key 配置项 | 文档处理方式 |
|---|---|---|---|
| RapidOCR(默认) | -engine rapid |
无需配置 | 本地 OCR |
| Gemini | -engine gemini |
gemini_api_key |
云端 Vision API |
| PaddleOCR(本地) | -engine paddle |
无需配置 | 本地 OCR |
docr [选项] <文件或目录> 选项: -engine string OCR 引擎:rapid(默认)/ gemini / paddle -e string 引擎(短选项) -o string 输出文件路径或输出目录(批处理模式) -output string 输出路径(长选项) -batch 批处理模式:处理目录下所有文件 -prompt string 自定义识别提示词(仅 Gemini 引擎支持)
我们提供预编译的二进制文件,助您快速上手。
cd doc-ocr-skills/scripts ./install.sh
该脚本将自动检测您的操作系统(darwin/linux)与架构(amd64/arm64),并下载对应版本的 docr。
如需自行构建,请确保已安装 Go 1.21+:
cd doc-ocr-skills/scripts/docr go build -o docr .
| 错误信息 | 解决方案 |
|---|---|
config file not found |
创建 ~/.ocr/config 文件,并填入 API Key |
gemini_api_key not found |
在配置文件中添加 gemini_api_key=VALUE |
file not found |
检查文档文件路径是否正确 |
| API timeout | 请重试;大文件可能需要更长响应时间 |