关于 extracting-pdf-text
这项技能可将 PDF 内容提取为适合 LLM 工作流的格式,并针对文本、表格、扫描件和复杂版式选用不同方法。它提供本地脚本,也支持 Mistral OCR API。
主要功能
- 01使用 PyMuPDF 提取文本
- 02使用 pdfplumber 转换表格
- 03在本地对扫描 PDF 做 OCR
- 04使用 Mistral OCR API 提取复杂版式
- 05生成适用于 LLM 工作流的 Markdown
适用场景
- 01提取普通 PDF 中的文本
- 02将 PDF 表格转换为 Markdown
- 03无需 API 处理扫描文档
- 04为 RAG 准备 PDF 内容
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ letta-ai/ skills --skill extracting-pdf-text安装后在 Claude Code 中输入/extracting-pdf-text确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/api-services.mdlocal-tools.mdscripts/extract_mistral_ocr.pyextract_pdfplumber.pyextract_pymupdf.pyextract_with_ocr.py详细介绍
为大模型提取 PDF 文本
此技能提供用于从 PDF 中提取文本的工具和指导,输出格式适合大模型使用。
快速决策指南
| PDF 类型 | 最佳方法 | 脚本 |
|---|---|---|
| 简单文本 PDF | PyMuPDF | scripts/extract_pymupdf.py |
| 含表格的 PDF | pdfplumber | scripts/extract_pdfplumber.py |
| 扫描件/图像 PDF(本地) | pytesseract | scripts/extract_with_ocr.py |
| 复杂版式、最高准确度 | Mistral OCR API | scripts/extract_mistral_ocr.py |
| 端到端 RAG 管道 | marker-pdf | pip install marker-pdf |
推荐工作流
- 先尝试 PyMuPDF - 速度最快,能很好地处理大多数基于文本的 PDF
- 如果表格格式错乱 - 改用 pdfplumber
- 如果是扫描件/图像 PDF - 使用 Mistral OCR API(准确度最高)或本地 OCR(免费但较慢)
本地提取(无需 API)
PyMuPDF - 快速通用提取
适用于:以文本为主的 PDF、对速度要求较高的工作流、需要保留基本结构的场景。
uv run scripts/extract_pymupdf.py input.pdf output.md
该脚本会输出保留标题和段落的 Markdown。若要获得针对大模型优化的输出,它会使用 pymupdf4llm,以便为 RAG 系统格式化文本。
pdfplumber - 表格提取
适用于:含表格的 PDF、财务文档、结构化数据。
uv run scripts/extract_pdfplumber.py input.pdf output.md
表格会转换为 Markdown 格式。注意:pdfplumber 最适合处理机器生成的 PDF,不适合扫描文档。
本地 OCR - 扫描文档
适用于:无法使用 API 时处理扫描 PDF。
uv run scripts/extract_with_ocr.py input.pdf output.txt
需要安装:pytesseract、pdf2image 和 Tesseract(在 macOS 上运行 brew install tesseract)。
基于 API 的提取
Mistral OCR API
适用于:复杂版式、扫描文档、最高准确度、多语言内容、数学公式。
定价:每美元约 1000 页(性价比很高)
export MISTRAL_API_KEY="your-key"
uv run scripts/extract_mistral_ocr.py input.pdf output.md
功能:
- 输出清晰的 Markdown
- 保留文档结构(标题、列表、表格)
- 支持图像、数学公式和多语言文本
- 处理复杂文档时准确度超过 95%
有关详细的 API 选项和其他服务,请参阅 references/api-services.md。
输出格式建议
供大模型使用时,建议采用 Markdown:
- 保留语义结构(标题可作为上下文边界)
- 表格仍然易于阅读
- 兼容大多数 RAG 分块策略
有关本地工具的详细比较,请参阅 references/local-tools.md。
评论
支持 Markdown