# Web-Chat (Open WebUI) Chat im Browser, ohne Client-Installation. Open WebUI läuft im selben Stack und spricht intern direkt mit llama-swap. Nach außen liegt es hinter Caddy auf Port **8801** (`WEBUI_PORT`). Dort greifen derselbe IP-Filter (`ALLOWED_NETS`) und ufw wie bei der API. Einen API-Key braucht der Browser nicht, Open WebUI hat einen eigenen Login. | Zugang | URL | |---|---| | lokal | http://127.0.0.1:8801 | | LAN | http://192.168.178.72:8801 | | NetBird | http://alegab-pc.vpn.local:8801 | `./scripts/start.sh` zeigt die aktuellen Adressen an. ## Erster Start 1. Einmalig den Port in der Firewall öffnen: `sudo ./scripts/firewall-ufw.sh` 2. Die URL öffnen und **sofort einen Account anlegen**. Der erste Account wird Admin. 3. Weitere Accounts landen als „ausstehend“ und müssen unter *Admin-Bereich → Benutzer* freigeschaltet werden. Wer niemanden sonst zulassen will: *Admin-Bereich → Einstellungen → Allgemein → Registrierung* abschalten. ## Was vorkonfiguriert ist | Funktion | Modell | Hinweis | |---|---|---| | Chat | `qwen3.5-35b-a3b`, `glm-4.7-flash`, `qwen3.5-9b` | Modellwechsel lädt das Modell in llama-swap um (dauert einige Sekunden) | | Dokumente / RAG (Datei in den Chat ziehen) | `nomic-embed` | | | Spracheingabe (Mikrofon) | `whisper` | nur über HTTPS oder `localhost`, siehe unten | | Bilder (Bild-Knopf im Chat) | `z-image` | verdrängt das Chat-Modell; der nächste Chat lädt es neu | Die Auswahlliste zeigt auch `qwen2.5-coder-1.5b`, `nomic-embed`, `whisper` und `z-image`. Diese Modelle taugen nicht zum Chatten. Ausblenden kann man sie unter *Admin-Bereich → Einstellungen → Modelle*. Die Chat-Modelle laufen mit `-np 1`, also mit einer Sitzung gleichzeitig. Wenn opencode gerade arbeitet, wartet der Web-Chat (und umgekehrt). Titel-Generierung nutzt dasselbe Modell und hängt sich hinten an. Autocomplete- und Folgefragen-Vorschläge sind deshalb abgeschaltet. ## Einstellungen ändern Die Umgebungsvariablen in `docker-compose.yml` gelten **nur beim allerersten Start**. Danach speichert Open WebUI alles in seiner Datenbank. Spätere Änderungen macht man im *Admin-Bereich → Einstellungen* (Verbindungen, Dokumente, Audio, Bilder). Die Daten (Accounts, Chats, Dokumente) liegen im Docker-Volume `localai_open-webui`. - Sichern: `docker run --rm -v localai_open-webui:/d -v "$PWD":/b alpine tar czf /b/open-webui-backup.tgz -C /d .` - Komplett zurücksetzen: `docker compose down && docker volume rm localai_open-webui` ## Spracheingabe von anderen Rechnern Browser geben das Mikrofon nur auf HTTPS-Seiten oder `localhost` frei. Über `http://:8801` bleibt der Mikrofon-Knopf daher wirkungslos. Für Chrome/Chromium gibt es eine Ausnahme pro Adresse: `chrome://flags/#unsafely-treat-insecure-origin-as-secure` → `http://alegab-pc.vpn.local:8801` eintragen, neu starten. Dateien hochladen (Audio-Datei transkribieren) funktioniert auch ohne HTTPS. ## Update `OPEN_WEBUI_TAG` in `.env` anheben (Releases: https://github.com/open-webui/open-webui/releases), dann `docker compose up -d`. Open WebUI migriert die Datenbank selbst. Vorher sichern.