paperless-ai
为 Paperless-ngx 打造的AI文档助手,自动分类标签 + RAG语义搜索,让文档自己回答
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
为 Paperless-ngx 打造的AI文档助手,自动分类标签 + RAG语义搜索,让文档自己回答
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
2023年,一位德国开发者发现自己的家庭文档管理陷入困境——十几年的水电费账单、保险合同、医疗记录、租赁协议,统统堆在 Paperless-ngx 里,文件名不规范、标签混乱,每次找「去年9月的电费单」都要翻半天。他想要的不只是存档,而是对话式检索:直接问「我上次续签租房合同是什么时候」,让AI替他在文档海洋里捞答案。Paperless-AI 就此诞生,如今已积累超过 5700 颗 GitHub 星,成为文档管理 AI 增强领域最受关注的开源项目之一。
图1:RAG聊天界面——直接用自然语言询问文档内容
传统文档管理的核心矛盾在于:人找文档 vs 文档找人。Paperless-ngx 虽然解决了电子文档的归档问题,但依然依赖人工标签和手动分类——你得在存入时就标好「保险」「2024年」「医疗」,日后才能高效检索。
Paperless-AI 彻底改变了这一模式:
项目的技术架构颇有巧思,采用 Node.js(Express)+ Python(FastAPI)双进程部署,两个服务通过本地 HTTP 接口通信,各司其职。
Node.js 服务层(主服务,端口 3000):
paperlessService.js 对接 Paperless-ngx API,aiServiceFactory.js 是多模型工厂,ollamaService.js 和 openaiService.js 分别是本地和云端模型驱动,ragService.js 负责向量检索增强auth.js(认证)、setup.js(初始化)、rag.js(对话)Python RAG 服务(端口 8000):
这种架构的优势在于:Node.js 侧专注于业务流程和 Web UI,Python 侧专注于计算密集的向量检索,分工清晰,资源隔离良好。
这是 Paperless-AI 的一大亮点。项目几乎支持所有主流 LLM 接口标准:
| 模型类别 | 支持选项 |
|---|---|
| 本地模型 | Ollama(Mistral、Llama、Phi-3、Gemma-2) |
| OpenAI 系 | OpenAI API、Azure OpenAI |
| 国产/低价 | DeepSeek.ai、硅基流动(SiliconFlow)、Together.ai、Perplexity.ai |
| 工程框架 | LiteLLM(统一调用层)、vLLM、FastChat |
| Google 系 | Gemini |
| OpenRouter | 聚合网关 |
开发者用工厂模式(aiServiceFactory.js)统一管理不同模型,只需要切换配置即可更换底层模型,扩展性极强。
相比同类闭源服务,Paperless-AI 在隐私设计上格外用心:
restrictionPromptService.js 过滤敏感内容,可自定义限制规则对于医疗记录、财务合同等敏感文档,这一设计尤其关键——你的数据永远不会离开你的服务器。
Paperless-AI 提供两种部署路径:
推荐路径(Docker Compose):官方维护的 docker-compose.yml 包含健康检查、自动重启和安全加固(cap_drop: ALL、no-new-privileges),拉取镜像后配置 .env 即可运行。
需要注意的前置依赖:
因此项目的快速部署评分是 "supported"(有 Docker 支持,但有 2 个外部依赖)。首次配置大约需要 15 分钟,但之后的使用体验非常顺畅。
图2:Web管理界面,支持手动AI标签和文档处理
项目并非没有缺点,README 开篇就坦承「目前不维护」,作者正在用更稳定的架构重写整个代码库。此外:
Paperless-AI 的出现代表了「垂直领域 AI 增强」的一种成熟范式:不做通用大模型,而是专注于文档管理这一垂直场景,通过 RAG 让通用大模型获得「私有知识」。它的多模型工厂设计、Node.js + Python 混合架构、本地隐私优先的理念,对同类项目有重要参考价值。
随着 Paperless-ngx 官方宣布将在未来版本中内置 AI 功能,Paperless-AI 的未来走向值得关注——是与之合并、差异化竞争,还是逐渐退出历史舞台,这将是开源生态中「社区扩展」vs「官方内置」力量博弈的一个有趣案例。
图3:文档自动分析与标签生成界面
技术标签:JavaScript / Node.js / Python / Express / FastAPI / RAG / Ollama / ChromaDB / Docker