Übersicht
Open WebUI ist eine selbst gehostete Chat-UI, kann Ihnen aber allein weder sagen, was die Chats der einzelnen Benutzer kosten, noch einen Audit-Trail des Modell-Traffics führen. Wenn Sie seine OpenAI-Verbindung auf GoModel richten, ändert sich das: eine Verbindung, und jeder Chat wird protokolliert, bepreist und dem angemeldeten Open-WebUI-Benutzer zugeordnet. Dieselbe Verbindung bringt Anthropic, Gemini und jeden anderen in GoModel konfigurierten Provider in die Modellauswahl von Open WebUI. Ablauf:Open WebUI chat -> Open WebUI backend -> GoModel -> OpenAI/Anthropic/Gemini/...
Was Sie erhalten:
- Vollständige Request- und Response-Bodies für jeden Chat im Audit-Log von GoModel.
- Kosten pro Open-WebUI-Benutzer über weitergeleitete Benutzer-Header und Labels.
- Alle Provider hinter einer OpenAI-Verbindung; keine Einrichtung pro Provider in Open WebUI.
- Prometheus-Metriken und OpenTelemetry-Traces für Chat-Traffic, sobald Sie diese Exporter aktivieren (siehe Hinweise).
- Failover, Rate-Limits, Budgets und Response-Caching für Chat-Traffic, sofern Sie diese in GoModel konfigurieren.
1. GoModel neben Open WebUI betreiben
Betreiben Sie beide Dienste in einem Docker-Netzwerk, damit Open WebUI GoModel über den Container-Namen erreicht:docker-compose.yml
Öffnen Sie
http://localhost:3000 und legen Sie das erste (Admin-)Konto an. Die Modellauswahl
listet dann genau das, was GoModel bereitstellt – einschließlich Anthropic- und Gemini-Modellen
und aller virtuellen Modelle. Bei bestehenden
Installationen können Sie dieselbe Verbindung statt über Umgebungsvariablen zur Laufzeit unter
Admin Panel -> Settings -> Connections -> OpenAI API einrichten.
2. Chatten und jeden Aufruf in GoModel sehen
Wählen Sie ein beliebiges Modell –openai/gpt-5-mini, anthropic/claude-haiku-4-5-20251001,
gemini/gemini-2.5-flash – und chatten Sie. Streaming-Responses sowie die anschließende
Generierung von Titel und Tags, die Open WebUI nach jedem Chat ausführt, laufen alle über
GoModel. Jeder Aufruf erscheint im Audit-Log mit vollständigem Prompt, Response,
Tokens, Kosten und den Headern, die den Benutzer identifizieren.
Verifiziert mit Open WebUI 0.11.3: Modellliste, Chat mit und ohne Streaming,
Titelgenerierung und Labels pro Benutzer, mit über GoModel gerouteten Modellen von OpenAI, Anthropic und
Gemini.
Kostenerfassung pro Benutzer
Sind die beiden Variablen aus Schritt 1 gesetzt, enthält jeder RequestX-OpenWebUI-User-Email (sowie -Name, -Id und -Role), und GoModel
erfasst die E-Mail als Label. Die Ansicht „Nutzung nach Label“ im Dashboard zeigt dann
Requests, Tokens und Kosten pro Person. Fügen Sie
TAGGING_HEADER_2: X-OpenWebUI-User-Name (mit einem eigenen
TAGGING_HEADER_2_DONOTPASS: "true") hinzu, um besser lesbare Labels zu erhalten. Sollen E-Mails
nicht in den Nutzungsdaten erscheinen, setzen Sie in Schritt 1 stattdessen TAGGING_HEADER_1: X-OpenWebUI-User-Id
und behalten TAGGING_HEADER_1_DONOTPASS bei. Header-Namen werden
ohne Berücksichtigung der Groß-/Kleinschreibung abgeglichen, daher ist die Schreibweise X-Openwebui-User-Email, die Open WebUI
tatsächlich sendet, kein Problem. Lassen Sie TAGGING_HEADER_1_DONOTPASS gesetzt: Normal geroutete
Requests leiten Client-Header nie weiter, aber
Passthrough-Requests würden den
E-Mail-Header sonst an den Provider übertragen. Unter Labeling finden Sie Präfixe und
wie Sie verhindern, dass diese Header den Upstream-Provider erreichen.
Die Modellauswahl bändigen
GoModel kann Hunderte von Modellen bereitstellen, und Open WebUI listet sie alle auf. So bleibt die Auswahl benutzbar:- Blenden Sie Modelle aus oder beschränken Sie sie auf Benutzergruppen unter
Admin Panel -> Settings -> Models. - Setzen Sie
DEFAULT_MODELS, damit neue Benutzer mit einem von Ihnen gewählten Modell beginnen. - Oder stellen Sie in GoModel weniger Provider bereit; die Auswahl folgt
GET /v1/models.
Ein günstiges Task-Modell wählen
Nach jedem Chat generiert Open WebUI Titel und Tags standardmäßig mit demselben Modell wie der Chat – einige hundert zusätzliche Prompt-Tokens pro Unterhaltung, die Sie jetzt einzeln im Audit-Log sehen. Legen Sie unterAdmin Panel -> Settings -> Interface ein kleines Modell (zum
Beispiel openai/gpt-5-mini) als Task-Modell fest, um diesen Overhead günstig zu halten. Auch Task-Aufrufe
laufen über GoModel und bleiben daher protokolliert und bepreist.
Embeddings und RAG
Das Dokument-RAG von Open WebUI verwendet standardmäßig ein lokales Embedding-Modell. Um Embeddings stattdessen über GoModel zu routen, setzen Sie die Embedding-Engine unterAdmin Panel -> Settings -> Documents auf openai, mit derselben Base-URL und demselben Key
wie in Schritt 1. GoModel bedient /v1/embeddings und bepreist die Embedding-Nutzung wie
jeden anderen Aufruf. Ein Wechsel der Engine erfordert eine Neuindizierung vorhandener Dokumente;
das Chat-Routing funktioniert auch ohne diesen Schritt.
Fehlerbehebung
Hinweise
- Failover und Budgets von GoModel gelten automatisch für Chat-Traffic; ein Budget pro Key deckelt, was die gesamte Open-WebUI-Instanz ausgeben kann.
- Bildgenerierung, Speech-to-Text und Text-to-Speech haben in den Admin-Einstellungen von Open WebUI eigene Endpunkte und waren nicht Teil des Verifizierungslaufs.
- Für Dashboards und Alerts siehe Prometheus-Metriken und OpenTelemetry.