Zum Hauptinhalt springen

Open WebUI mit LiteLLM

Diese Anleitung führt Sie durch die Verbindung von Open WebUI mit LiteLLM. Die Verwendung von LiteLLM mit Open WebUI ermöglicht Teams das

  • Zugriff auf über 100 LLMs in Open WebUI
  • Verfolgung von Ausgaben/Nutzung, Festlegung von Budgetlimits
  • Senden von Anfrage/Antwort-Logs an Protokollziele wie langfuse, S3, GCS-Buckets usw.
  • Festlegung von Zugriffskontrollen, z. B. Steuerung, auf welche Modelle Open WebUI zugreifen kann.

Schnellstart

1. LiteLLM & Open WebUI starten

2. Einen virtuellen Schlüssel in LiteLLM erstellen

Virtuelle Schlüssel sind API-Schlüssel, die Ihnen die Authentifizierung beim LiteLLM Proxy ermöglichen. Wir erstellen einen virtuellen Schlüssel, der Open WebUI den Zugriff auf LiteLLM ermöglicht.

2.1 LiteLLM Benutzerverwaltungshierarchie

In LiteLLM können Sie Organisationen, Teams, Benutzer und virtuelle Schlüssel erstellen. Für dieses Tutorial erstellen wir ein Team und einen virtuellen Schlüssel.

  • Organisation - Eine Organisation ist eine Gruppe von Teams. (US Engineering, EU Developer Tools)
  • Team - Ein Team ist eine Gruppe von Benutzern. (Open WebUI Team, Data Science Team, etc.)
  • Benutzer - Ein Benutzer ist ein einzelner Benutzer (Mitarbeiter, Entwickler, z. B. krrish@litellm.ai)
  • Virtueller Schlüssel - Ein virtueller Schlüssel ist ein API-Schlüssel, der Ihnen die Authentifizierung beim LiteLLM Proxy ermöglicht. Ein virtueller Schlüssel ist mit einem Benutzer oder Team verknüpft.

Nachdem das Team erstellt wurde, können Sie Benutzer zum Team einladen. Mehr über die Benutzerverwaltung von LiteLLM erfahren Sie hier.

2.2 Ein Team in LiteLLM erstellen

Navigieren Sie zu https://:4000/ui und erstellen Sie ein neues Team.

2.2 Einen virtuellen Schlüssel in LiteLLM erstellen

Navigieren Sie zu https://:4000/ui und erstellen Sie einen neuen virtuellen Schlüssel.

LiteLLM ermöglicht es Ihnen zu spezifizieren, welche Modelle in Open WebUI verfügbar sind (indem Sie die Modelle angeben, auf die der Schlüssel Zugriff hat).

3. Open WebUI mit LiteLLM verbinden

Navigieren Sie in Open WebUI zu Einstellungen -> Verbindungen und erstellen Sie eine neue Verbindung zu LiteLLM.

Geben Sie die folgenden Details ein

  • URL: https://:4000 (Ihre LiteLLM Proxy Basis-URL)
  • Schlüssel: your-virtual-key (der Schlüssel, den Sie im vorherigen Schritt erstellt haben)

3.1 Testanfrage

Wählen Sie in der oberen linken Ecke Modelle aus. Sie sollten nur die Modelle sehen, auf die Sie dem Schlüssel in Schritt 2 Zugriff gewährt haben.

Nachdem Sie ein Modell ausgewählt haben, geben Sie Ihren Nachrichtentext ein und klicken Sie auf Absenden.

3.2 Nutzung & Ausgaben verfolgen

Grundlegende Verfolgung

Navigieren Sie nach dem Ausführen von Anfragen zum Abschnitt Logs in der LiteLLM-Benutzeroberfläche, um Informationen zu Modellen, Nutzung und Kosten anzuzeigen.

Benutzerbezogene Verfolgung

Um die Ausgaben und die Nutzung für jeden Open WebUI-Benutzer zu verfolgen, konfigurieren Sie sowohl Open WebUI als auch LiteLLM.

  1. Benutzerinformations-Header in Open WebUI aktivieren

    Setzen Sie die folgende Umgebungsvariable für Open WebUI, um Benutzerinformationen in den Anfrageheadern zu aktivieren:

    ENABLE_FORWARD_USER_INFO_HEADERS=True

    Weitere Details finden Sie im Handbuch zur Konfiguration von Umgebungsvariablen.

  2. LiteLLM so konfigurieren, dass Benutzer-Header analysiert werden

    Fügen Sie Folgendes zu Ihrer LiteLLM config.yaml hinzu, um einen Header für die Benutzerverfolgung anzugeben:

    general_settings:
    user_header_name: X-OpenWebUI-User-Id

    ⓘ Verfügbare Tracking-Optionen

    Sie können jeden der folgenden Header für user_header_name verwenden:

  • X-OpenWebUI-User-Id

  • X-OpenWebUI-User-Email

  • X-OpenWebUI-User-Name

    Diese können eine bessere Lesbarkeit und eine einfachere mentale Zuordnung bieten, wenn Sie für eine kleine Gruppe von Benutzern hosten, die Sie gut kennen.

    Wählen Sie basierend auf Ihren Bedürfnissen aus, aber beachten Sie, dass in Open WebUI

  • Benutzer ihre Benutzernamen selbst ändern können.

  • Administratoren können sowohl Benutzernamen als auch E-Mails jedes Kontos ändern.

thinking-Inhalte in Open WebUI rendern

Open WebUI erfordert, dass Argumentations-/Denkinhalte mit <think></think>-Tags gerendert werden. Um dies für bestimmte Modelle zu rendern, können Sie den LiteLLM-Parameter merge_reasoning_content_in_choices verwenden.

Beispiel LiteLLM config.yaml

model_list:
- model_name: thinking-anthropic-claude-3-7-sonnet
litellm_params:
model: bedrock/us.anthropic.claude-3-7-sonnet-20250219-v1:0
thinking: {"type": "enabled", "budget_tokens": 1024}
max_tokens: 1080
merge_reasoning_content_in_choices: true

In Open WebUI testen

Wählen Sie im Dropdown-Menü für Modelle thinking-anthropic-claude-3-7-sonnet aus.

Zusätzliche Ressourcen