icereed/paperless-gpt

Use LLMs and LLM Vision (OCR) to handle paperless-ngx - Document Digitalization powered by AI

paperless‑gpt – AI‑enhanced document handling for paperless‑ngx

What it does

  • Works as a companion to the open‑source document manager paperless‑ngx.
  • Sends scanned images or PDFs to a Large Language Model (LLM) – OpenAI, Ollama, Anthropic, etc. – which extracts the text (LLM‑based OCR) and then uses the same model to generate a sensible title, tags, creation date, correspondent and custom fields.
  • Looks for reference numbers inside a document (invoice number, contract ID, case number) and, if an exact match exists in the paperless‑ngx archive, fills the Document Link field so the two records point to each other.
  • Can also call external OCR services (Google Document AI, Azure Document Intelligence, Docling Server) if you prefer a non‑LLM provider.
  • Produces searchable PDFs with a transparent text layer and can upload them back to paperless‑ngx as a new version of the same document.

Why it matters

  • Traditional OCR gives you raw text but no context. By using an LLM the system can understand the meaning of a scan, produce accurate titles and tags, and connect related files automatically – saving hours of manual sorting.
  • All processing happens on‑premise (Docker) or on a local LLM via Ollama, so you can keep sensitive documents inside your own network.

How to get it running

  1. Prerequisites – Docker installed, a running paperless‑ngx instance, and an LLM API key (OpenAI, Ollama, etc.) or an OCR service account.
  2. Docker‑Compose – The README provides a ready‑made docker-compose.yml that starts both paperless‑ngx and paperless‑gpt side‑by‑side. You only need to fill in environment variables such as PAPERLESS_BASE_URL, PAPERLESS_API_TOKEN, and the LLM credentials.
  3. Configuration – Most behaviour is controlled by environment variables:
    • LLM_PROVIDER / LLM_MODEL choose the model (e.g. gpt‑4o or qwen3:8b).
    • OCR_PROVIDER selects the OCR backend (llm, google_docai, azure, docling).
    • Tag names (MANUAL_TAG, AUTO_TAG, FAIL_TAG) let you track which documents have been processed or failed.
    • Options for PDF handling (PDF_UPLOAD_MODE, CREATE_LOCAL_PDF, etc.) let you keep the original file, replace it with a searchable version, or store PDFs locally.
  4. Web UI – Once the container is up, a simple UI lets you review AI suggestions, tweak prompts, and run ad‑hoc analyses on selected documents.
  5. Security note – The service itself has no authentication; you must place it behind a reverse‑proxy or VPN to prevent unauthorised access.

Who might use it

  • Small businesses or freelancers who receive many invoices, contracts, and correspondence and want automatic filing.
  • Teams that already use paperless‑ngx and need smarter OCR without moving data to a third‑party SaaS.
  • Users who prefer self‑hosted AI (Ollama) for privacy or cost reasons.

Where to find more

  • Full docs live in the docs/ folder (workflows, linking logic, managed‑hosting details).
  • The project is MIT‑licensed, Docker images are on Docker Hub and GHCR, and a managed‑hosting option for Germany/Austria/Switzerland is offered via server.camp.

All information above is taken directly from the repository’s README.

Related

  • Project
  • Project
  • Project
  • Project
  • Project