摘要
一句话总结 Paperless-AI 是一款专为 Paperless-ngx 设计的 AI 增强扩展工具,通过集成多种大语言模型(如 OpenAI、Ollama 等)为文档库提供自动化分类、智能标签分配和基于 RAG 的自然语言语义检索功能。
关键要点
- 开源与热度:项目基于 MIT 协议开源,在 GitHub 上拥有 5277 个 Stars。
- 自动化文档处理:系统能自动检测新文档,利用 AI 分析内容并自动分配标题、标签、文档类型和发件人。
- 自然语言检索(RAG):内置基于检索增强生成(RAG)的 AI 对话功能,系统可理解文档完整上下文,支持用户通过日常提问获取精准答案。
- 广泛的模型支持:兼容 OpenAI API 和本地 Ollama,支持 DeepSeek、Gemini、Llama、Mistral 等多种大语言模型及 VLLM、LiteLLM 等推理服务。
- 隐私与人工干预:结合本地模型可实现隐私友好的文档查询;针对敏感文档,提供专用的 Web 界面(
/manual路径)供用户手动触发 AI 标签分配。 - 智能规则引擎:支持自定义规则以限制 AI 处理的文档范围,并可设置自定义输出标签以跟踪分类状态。
- 便捷部署:提供开箱即用的 Docker 镜像(包含健康监控、自动重启和优雅停机功能),同时支持基于 Node.js 的本地开发环境。
风险与缺口
- 首次安装限制:在首次安装并完成初始设置(如配置 API 密钥和偏好)后,必须重启容器才能构建 RAG 索引,否则相关功能将无法正常运行(后续常规更新无此要求)。
功能与定位
Paperless-AI 是专为文档管理系统 Paperless-ngx 设计的 AI 驱动扩展工具。它通过集成兼容 OpenAI 的 API 和 Ollama,为文档库引入了自动分类、智能标签分配以及语义搜索功能,旨在通过直观的 Web 界面实现全自动化的文档工作流和基于上下文的对话交互。
典型使用场景
- 自动化文档归档:系统自动检测并处理 Paperless-ngx 中的新文档,提取关键信息并完成分类。
- 自然语言文档检索:用户可以通过日常提问(如“我什么时候签的租房合同?”或“上一次电费是多少?”)快速从海量文档库中获取精准答案。
- 敏感文档人工审核:对于涉及隐私或机密的敏感文档,用户可通过专用的 Web 界面手动触发 AI 标签分配。
核心功能
- 自动化文档处理:自动检测新文档,利用 AI 分析内容,并自动为其分配标题、标签、文档类型和发件人(Correspondent)。
- 基于 RAG 的 AI 对话:利用检索增强生成(RAG)技术,支持自然语言文档搜索与问答。系统能够理解文档的完整上下文(而非仅依赖关键词匹配),并基于用户的自有数据提供语义记忆。
- 智能标签与规则引擎:支持自定义规则以限制哪些文档需要被处理,可自动应用标签,或设置自定义输出标签以跟踪分类状态。
- 手动处理模式:提供专用的 Web 界面(通过
/manual路径访问),用于手动进行 AI 标签分配。
特色与差异点
- 广泛的模型与后端支持:内置支持多种大语言模型和推理服务,包括本地部署的 Ollama(支持 Mistral, Llama, Phi-3, Gemma-2 等模型),以及 OpenAI, DeepSeek.ai, OpenRouter.ai, Perplexity.ai, Together.ai, Gemini, LiteLLM, VLLM, Fastchat 等。
- 隐私友好:结合本地模型(如 Ollama)和 RAG 技术,可在保障数据隐私的前提下进行智能文档查询。
- 多语言与响应式设计:支持多语言文档分析,并配备响应式 Web 界面。
使用方式概览
- Docker 部署:提供开箱即用的 Docker 支持,包含健康监控、自动重启、持久化卷和优雅停机功能,配置需求极低。
- 本地开发:基于 Node.js 环境,通过
npm install安装依赖,使用npm run test启动开发/测试模式。
限制与注意事项
- 首次安装要求:在首次安装并完成初始设置(如配置 API 密钥和偏好设置)后,必须重启容器以构建 RAG 索引。后续的常规更新则不需要此操作。