Skip to content

ivanzud/paperless-ai

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

501 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

πŸ“„ Paperless-AI

GitHub commit activity Docker Pulls GitHub Stars License


Paperless-AI is an AI-powered extension for Paperless-ngx that brings automatic document classification, smart tagging, and semantic search using OpenAI-compatible APIs and Ollama.

It enables fully automated document workflows, contextual chat, and powerful customization β€” all via an intuitive web interface.

πŸ’‘ Just ask:
β€œWhen did I sign my rental agreement?”
β€œWhat was the amount of the last electricity bill?”
β€œWhich documents mention my health insurance?”

Powered by Retrieval-Augmented Generation (RAG), you can now search semantically across your full archive and get precise, natural language answers.


✨ Features

πŸ”„ Automated Document Processing

  • Detects new documents in Paperless-ngx automatically
  • Analyzes content using OpenAI API, Ollama, and other compatible backends
  • Assigns title, tags, document type, and correspondent
  • Built-in support for:
    • Ollama (Mistral, Llama, Phi-3, Gemma-2)
    • OpenAI
    • DeepSeek.ai
    • OpenRouter.ai
    • Perplexity.ai
    • Together.ai
    • LiteLLM
    • VLLM
    • Fastchat
    • Gemini (Google)
    • ...and more!

🧠 RAG-Based AI Chat

  • Natural language document search and Q&A
  • Understands full document context (not just keywords)
  • Semantic memory powered by your own data
  • Fast, intelligent, privacy-friendly document queries
    RAG_CHAT_DEMO

βš™οΈ Manual Processing

  • Web interface for manual AI tagging
  • Useful when reviewing sensitive documents
  • Accessible via /manual

🧩 Smart Tagging & Rules

  • Define rules to limit which documents are processed
  • Disable prompts and apply tags automatically
  • Set custom output tags for tracked classification
    PPAI_SHOWCASE3

πŸš€ Installation

⚠️ First-time install: Restart the container after completing setup (API keys, preferences) to build RAG index.
πŸ” Not required for updates.

πŸ“˜ Installation Wiki


🐳 Docker Support

  • Local development uses the source-based docker-compose.yml
  • Deployment uses the image-based docker-compose.ghcr.yml
  • The GHCR path pulls ghcr.io/ivanzud/paperless-ai:latest, persists /app/data, and keeps the container restart-safe
docker compose -f docker-compose.ghcr.yml up -d

πŸ”§ Local Development

# Install dependencies
npm install

# Start development/test mode
npm run test

🏠 Local Policy Automation

For local Paperless OCR -> AI workflow policy and metadata normalization automation, see docs/LOCAL_POLICY.md.


🧭 Roadmap Highlights

  • βœ… Multi-AI model support
  • βœ… Multilingual document analysis
  • βœ… Tag rules and filters
  • βœ… Integrated document chat with RAG
  • βœ… Responsive web interface

🀝 Contributing

We welcome PRs and contributions!

# Fork, clone, then:
git checkout -b feature/YourFeature
# After changes:
git commit -m "Add YourFeature"
git push origin feature/YourFeature

Then open a Pull Request via GitHub.


πŸ†˜ Support & Community


πŸ“„ License

This project is licensed under the MIT License. See LICENSE for details.


πŸ™ Support Development

Patreon PayPal BuyMeACoffee Ko-Fi

About

An automated document analyzer for Paperless-ngx using OpenAI API, Ollama, Deepseek-r1, Azure and all OpenAI API compatible Services to automatically analyze and tag your documents.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • JavaScript 59.0%
  • EJS 27.1%
  • Python 9.1%
  • CSS 4.4%
  • Other 0.4%