InfoExtractorPro 是一款基于大语言模型(LLM)和高精度 OCR 技术的行业领先文档信息提取平台。它旨在通过自动化的方式,从复杂的 PDF、扫描件、图片及 Word 文档中,精准提取结构化数据,并支持多轮校验与并发加速。
- 📂 多格式支持: 深度适配 PDF (多页)、扫描件、图片、Docx 及 TXT 格式。
- 🔍 混合 OCR 引擎: 集成 PaddleOCR 高精度识别与 PyMuPDF 原生解析,确保文本定位精准。
- 🧠 智能批次提取:
- 支持将字段分批提取,同批次字段在一次 LLM 调用中并行完成。
- 支持跨 Batch 独立并行调用,显著提升处理速度。
- ⚙️ 多轮提取逻辑 (Multi-Pass): 支持对复杂文档进行多轮扫描,通过“早期退出”机制,在找齐字段后自动停止,兼顾准确度与 Token 成本。
- 🖼️ 全局 BBox 定位: 提取结果可实时回溯到文档原文位置,支持高亮预览与 page-to-page 跳转。
- 🌐 云端部署就绪: 完美适配 Vercel (Frontend) + Render (Backend) + Supabase (Database/Storage/Auth) 架构。
- Framework: Next.js 15 (App Router)
- Language: TypeScript
- Styling: Tailwind CSS
- Icons: Lucide React
- Authentication: Supabase Auth
- Framework: FastAPI (Python 3.11+)
- Storage/DB: Supabase (PostgreSQL & Storage)
- OCR: PaddleOCR (VL-1.5)
- LLM: OpenAI 兼容协议接口 (可适配 GPT-4, GLM-4, Claude 等)
- Concurrency: Asyncio (高并发异步处理)
OLLAMA_NUM_CTX=10000 ollama serve
确保你已经配置好以下服务:
- Supabase 项目(用于存储文件和数据库)
- 自定义 LLM API Key (支持 OpenAI 格式)
git clone https://github.com/CRonaldo1997/infoExtractorPro.git
cd infoExtractorPro后端 (/backend/.env):
SUPABASE_URL=你的Supabase项目URL
SUPABASE_SERVICE_ROLE_KEY=你的ServiceRoleKey
PADDLEOCR_TOKEN=你的PaddleOCR令牌
PADDLEOCR_JOB_URL=PaddleOCR接口地址
PADDLEOCR_MODEL=PaddleOCR-VL-1.5前端 (/frontend/.env.local):
NEXT_PUBLIC_SUPABASE_URL=你的Supabase项目URL
NEXT_PUBLIC_SUPABASE_ANON_KEY=你的AnonKey
NEXT_PUBLIC_API_URL=http://localhost:8000启动后端:
cd backend
pip install -r requirements.txt
uvicorn main:app --reload启动前端:
cd frontend
npm install
npm run dev- 在 Vercel 中导入仓库下的
frontend文件夹。 - 配置
NEXT_PUBLIC_开头的三个环境变量。 - 构建命令:
npm run build。
- 在 Render 中创建 Web Service,指定 Root Directory 为
backend。 - Start Command:
uvicorn main:app --host 0.0.0.0 --port 8000。 - 配置相应的环境参数。
如果你有任何改进建议或发现了 Bug,欢迎提交 Issue 或 Pull Request。