Paperless GPT 是与 paperless - ngx 搭配使用的文档工具,借助AI生成文档标题和标签,减少手动分类的时间成本,将OCR技术与大语言模型(LLM)结合,在扫描复杂的文档文件时,能提取出高精度文本。
Paperless GPT支持OpenAI、Ollama等大语言模型,可处理低质量或复杂布局的扫描件,相比传统OCR,能结合上下文纠正识别错误,输出更精准的文本内容。
Paperless GPT提供多种OCR服务:
LLM OCR:利用OpenAI或Ollama从图像中提取文本。
Google Document AI:借助谷歌的企业级OCR服务。
Azure Document Intelligence:使用微软的文档智能解决方案。
Docling Server:支持自托管的OCR和文档转换服务。
标题和标签:AI自动生成文档标题和分类标签,支持人工审核和调整。
通信人识别:从文档内容中提取通信人信息,简化通信记录管理。
创建日期生成:基于文档内容推断创建日期,提升时间线管理准确性。
Paperless GPT能生成带透明文本层的PDF文件,保留原始排版的同时,使文档具备文本搜索和选择功能,支持将处理后的PDF保存到本地或上传至paperless - ngx。
图像模式(默认):将PDF页面转换为图像进行处理,兼容所有OCR提供商。
PDF模式:直接处理PDF页面,保留文档特性,可能提升处理速度和准确性。
整页PDF模式:一次性处理整个PDF文档,减少API调用次数,适合高效处理多页文档。
通过设置环境变量,可灵活调整系统行为:
LLM配置:选择OpenAI、Mistral、Ollama等提供商及对应模型(如gpt - 4o
、qwen3:8b
)。
OCR配置:指定OCR提供商、处理模式及输出格式(如hOCR、PDF文本层)。
安全设置:限制OCR页数(OCR_LIMIT_PAGES
)、自动跳过已处理文档(PDF_SKIP_EXISTING_OCR
)。
提供Docker Compose示例配置,只需设置必要环境变量,即可将Paperless GPT与paperless - ngx部署在一起:
services:
paperless-gpt:
image: icereed/paperless-gpt:latest
environment:
PAPERLESS_BASE_URL: "http://paperless-ngx:8000"
PAPERLESS_API_TOKEN: "your_api_token"
LLM_PROVIDER: "openai"
LLM_MODEL: "gpt-4o"
OPENAI_API_KEY: "your_openai_key"
volumes:
- ./prompts:/app/prompts
ports:
- "8080:8080"
depends_on:
- paperless-ngx
hOCR与PDF文本层:仅Google Document AI支持生成hOCR文件和带文本层的PDF,实现精确文本定位和搜索功能。
本地文件存储:通过配置CREATE_LOCAL_HOCR
和CREATE_LOCAL_PDF
,可将处理后的文件保存到本地指定目录。
谨慎替换文档:启用PDF_REPLACE
时需谨慎,该功能会删除原始文档,建议先进行备份。
标签管理:利用PDF_OCR_COMPLETE_TAG
自动标记已处理文档,避免重复操作。
性能优化:对于本地LLM(如Ollama),可通过TOKEN_LIMIT
控制令牌数量,适配模型上下文窗口。
以下是传统OCR与LLM驱动OCR的效果对比:
传统OCR:出现文字扭曲、断行错误(如“LOUUAIN LA NEUVE”识别为“LOLNAIN LA NEWWE”)。
LLM OCR(gpt - 4o):准确还原地址、金额和时间信息,文本结构清晰。
传统OCR:表格内容错位、日期格式错误(如“Sep 16, 2004”误为“Sep 16, 2004”)。
LLM OCR(gpt - 4o):正确解析表格结构,修正日期和金额格式,提升可读性。