pdf-extract-api 是一款基于现代光学字符识别(OCR)技术和大型语言模型(LLM)的开源工具,专注于将图像或PDF文档转换为高精度的结构化Markdown或JSON格式。其核心优势在于完全本地化运行,无需依赖云服务,从根本上保障数据隐私安全,尤其适合处理医疗、金融等敏感领域文档 。项目基于Python编写,遵守MIT开源协议。

核心功能与技术亮点

  1. 多引擎OCR集成
    集成 markersurya-ocrtesseract 等多种OCR引擎,支持复杂元素提取,包括表格数据、数学公式、多级标题等,即使对扫描文档也能保持高精度识别 。
  2. LLM驱动的智能优化
    通过 Ollama支持的LLM模型(如Llama 3)自动修正OCR结果,显著提升文本连贯性与格式准确性。例如,可智能修复拼写错误、优化段落结构,使输出更接近原始文档语义 。
  3. 隐私保护与自动化处理
    • 自动去除PII:智能识别并删除姓名、地址等个人身份信息,满足GDPR等合规要求 。
    • 异步任务处理:基于 Celery + Redis 架构实现分布式异步任务,支持批量处理大量文档 。
  4. 灵活的部署与输出
    • 支持 Docker容器化部署,提供CPU/GPU双版本镜像,适应不同硬件环境 。
    • 输出格式可选 Markdown(保留标题、列表等语义结构)或 JSON(含元素坐标、字体等元数据),便于下游开发 。

应用场景实例

  • 医疗领域:医院可将MRI报告转换为结构化Markdown,自动脱敏患者信息,加速数据分析 。
  • 企业财务:批量提取发票中的金额、供应商等关键数据生成JSON,集成至财务系统提升效率 。
  • 研究机构:精准解析学术PDF中的公式与表格,支持知识库构建 。

技术架构解析

组件 作用
FastAPI 构建RESTful接口,提供/ocr等端点提交任务
Celery 异步任务队列,分布式处理OCR请求
Redis 缓存OCR结果,减少重复计算
PyTorch 驱动OCR模型(如Marker),支持GPU加速

项目优势对比

特性 pdf-extract-api 商业方案(如Adobe API)
数据隐私 ✅ 完全本地运行 ❌ 依赖云服务
成本 ✅ 开源免费 ❌ 按调用量收费
复杂表格支持 ✅ 多引擎协同解析 ⚠️ 部分场景受限

源代码:https://github.com/CatchTheTornado/text-extract-api

Demo:https://demo.doctractor.com/