Architektur

Eine klassische, bewusst schlichte Web-App: ein Django-Server, eine Datenbank, keine weiteren Dienste wie Redis oder Celery.

Browser PC, Tablet, Handy im Heimnetz
HTTPS im Intranet
nginx im Paket · Intranet-Hostname und TLS
HTTP auf localhost
Django gunicorn (gthread), Django 5.2
  • chat – Ansichten, Streaming (SSE)
  • providers – ein Adapter je Anbieter geplant (M3–M4)
  • mcp – Werkzeugschleife geplant (M4a)
Worker-Prozess indexiert Dokumente, gleiche Datenbank geplant (M7)

Django (und der Worker) verbinden sich mit:

  • SQL
    PostgreSQL + pgvector Konten, Chats, Vektoren für RAG
  • HTTPS ins Internet
    Anbieter-APIs OpenAI, Anthropic, Google, Mistral, OpenRouter … geplant (M3–M4)
  • HTTP im Intranet
    LM Studio PC im Heimnetz, nur zeitweise online geplant (M4)
  • Werkzeugaufrufe
    MCP-Server lokal (stdio) oder per Streamable HTTP geplant (M4a)
Aufbau von MultiGPT. Alles außer den Anbieter-APIs läuft im eigenen Heimnetz. Markierte Teile sind geplant.

Die Bausteine

Netz und Sicherheit

Technik

BereichWahl
SprachePython 3.12+ (Debian 13: 3.13)
FrameworkDjango 5.2 LTS
App-Servergunicorn (gthread)
DatenbankPostgreSQL mit pgvector
Webserver und TLSnginx (im Debian-Paket)
Statische Dateiennginx im Paket, WhiteNoise in Docker und Entwicklung
Login-Drosselungdjango-axes
PaketierungDebian-Paket mit dh-virtualenv, systemd; Docker als Ausweichweg