Schlagwort: KI

  • Open WebUI und Ollama mit Podman einrichten

    Open WebUI Logo

    Wir führen Sie Schritt für Schritt durch die Einrichtung von Open WebUI mit Ollama in einem Podman-Container.

    Ollama ist ein Open-Source-Tool, das es ermöglicht, große Sprachmodelle (LLMs) wie Llama, Mistral oder Gemma direkt auf dem eigenen Computer (lokal) zu installieren und auszuführen. Es stellt die Laufzeitumgebung für die Modelle bereit und optimiert die Hardware-Nutzung.

    Open WebUI liefert dazu die grafische Benutzeroberfläche (Frontend). Die selbst gehostete KI-Plattform läuft im Webbrowser und ermöglicht, mit verschiedenen Sprachmodellen zu interagieren. Das ist eine datenschutzfreundliche Alternative zu cloudbasierten Systemen und eignet sich besonders gut für erste Gehversuche mit KI.

    Wir führen Sie Schritt für Schritt durch die Einrichtung mit dem Container-System Podman und Podman-Desktop unter Fedora 43. Sie können alternativ auch Docker und ein anderes Betriebssystem verwenden. Die Vorgehensweise ist dieselbe. Nur bei den Terminal-Befehlen müssen Sie podman durch docker ersetzen.

    Das Docker-Image von GitHub holen:

    In der grafischen Benutzeroberfläche Podman-Desktop werden zunächst nur Images aufgelistet, die im Docker-Hub vorhanden sind. Das Open WebUI Image des Herstellers finden Sie aktuell auf GitHub. Wir verwenden das Docker-Image, das bereits Ollama integriert hat. Führen Sie den nachstehenden Befehl in einem Terminal aus, um das Image auf Ihren Rechner zu laden:

    podman pull ghcr.io/open-webui/open-webui:ollama

    (ghcr.io steht für GitHub Container Registry)

    Alternativ geben Sie in Podman-Desktop unter Images in das Suchfeld, das sich über den Button Pull öffnet, den voll qualifizierten Suchbegriff für das Image an:

    ghcr.io/open-webui/open-webui:ollama

    Ansonsten werden dort bei der Suche nach „open-webui“ nur Images aus dem Docker-Hub angeboten, die aber alle von anderen Nutzern stammen.

    Container erstellen

    Nach dem Download zu Podman-Desktop wechseln:

    • Gehen Sie links auf „Images“.
    • Aktualisieren Sie die Liste bei Bedarf

    Das Image mit dem Namen ghcr.io/open-webui/open-webui:ollama sollte nun in Ihrer lokalen Liste erscheinen.

    Podman-Desktop mit einer Übersicht über die geladenen Images.

    Container über Podman-Desktop starten

    Ist das Image lokal verfügbar, können Sie den „Run“-Button im Menü Images verwenden, um den Container zu erstellen. Beim ersten Start gelangt man automatisch zunächst in das Konfigurationsmenü, wo Sie Portweiterleitung und Volumes festlegen.

    Container-Einstellungen

    OptionWert
    Ports3000 eintragen, 8080 ist bereits vorgegeben
    Volumes:
    Hostollama
    Container/root/.ollama
    Hostopen-webui
    Container/app/backend/data
    Environment Variablenkeine

    Exkurs: Environment-Variablen sind der Standardweg, um einem Container Konfigurationsinformationen beim Start mitzuteilen, ohne die interne Logik des Images ändern zu müssen.

    Podman-Desktop mit dem Menü für die Einrichtung eines Containers.

    Mit der Schaltfläche „Start Container“ wird ein neuer Container erstellt und auch gleich gestartet. Sie finden Ihn anschließend im Menü Container.

    Podman-Desktop mit der Übersicht über die Container. Der bereits laufende Container von Open WebUI ist durch ein grün hinterlegtes Container-Symbol gekennzeichnet.

    Dort können Sie den Container später bei Bedarf stoppen oder neu starten.

    Open WebUI im Web-Browser

    Wenn der Container läuft, kann man aus der Containerübersicht von Podman-Desktop heraus das Dashboard im Webbrowser starten. Die Option erreicht man über die Schaltfläche mit den drei Punkten hinter den Container-Daten.

    Podman-Desktop mit der Container-Übersicht, ein Pull-Down-Menü ist beim laufenden Container  geöffnet, an vierter Position die Option "open browser".

    „Loslegen“: Im Webbrowser vergibt man einen Benutzernamen, eine E-Mail-Adresse und ein Passwort für das Administrator-Konto.

    Damit ist der erste Setup-Schritt abgeschlossen. Nun müssen noch Modelle hinzugefügt werden.

    Terminal-Befehl zum Start des Containers

    Arbeiten Sie ohne Podman-Desktop, starten Sie mit dem folgenden Befehl im Terminal direkt einen Container mit Open WebUI und Ollama. Das Image wird dabei automatisch heruntergeladen.

    podman run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama

    Im Open WebUI Dashboard

    Open WebUI Dashboard in Firefox mit der Seite zum Start eines neuen Chats

    Alle Einstellungen erreichen Sie über das Icon mit Ihrem Namenskürzel oben rechts. Um einen Chat starten zu können, muss man zu Ollama Modelle hinzuladen. Dies erfolgt im Dashboard über

    Administration > Einstellungen > Verbindungen

    Wichtig: prüfen Sie zunächst die Verbindungseinstellungen – Ollama API-Verbindung. Als Adresse muss angegeben werden:

    http://localhost:11434

    Die Einstellung müssen Sie manuell vornehmen. Nach der Installation zeigt das Feld meist auf `http://host.docker.internal:11434. Dabei verweist host-docker-internal auf den Host-Rechner und nicht den Container.

    Open WebUI mit dem Menü für die Verbindungseinstellungen, die URL wurde auf "localhost" geändert.

    Über das kreisförmige Pfeilsymbol rechts prüft man die Verbindung.

    Hat alles funktioniert, kann man neue Modelle herunterladen.

    Open WebUI mit dem Menü zum Download neuer Modelle.

    Durch Klicken auf das Download-Pfeilsymbol öffnet sich ein Pop-Over Fenster, in dem der Link „hier klicken“ direkt zur Llama-Webseite führt. Dort legen Sie einen Account an und wählen ein Modell. Von jedem Modell gibt es mehrere Versionen. Wir haben für einen ersten Test zwei Modelle ausgesucht:

    • gemma 3:4b
    • llama 3.2.:3b
    Screenshot von der Llama-Website: der Ausschnitt zeigt die Zeile mit dem Namen eines Modells, dahinter eine Schaltfläche zum Kopieren.

    Sie können den Namen einfach kopieren: wenn man mit dem Mauszeiger darüber fährt, erscheint eine copy-Schaltfläche.

    Screenshot der Llama-Website mit den Informationen zum Modell llama 3.2

    Während des Kopiervorgangs erhalten Sie eine Fortschrittsanzeige.

    Open WebUI mit dem Menü zum Verwalten der Modelle; das Modell gemma 3 wurde eingefügt, zwei Zeilen darunter wird der Download-Fortschritt in Porzent angezeigt.

    Alle geladenen Modelle finden Sie anschließend unter dem Menüpunkt „Modelle“.

    Open WebUI mit der Übersicht über die geladenen Modelle.

    Chat starten

    Nun können Sie mit der Schaltfläche oben links einen neuen Chat starten und dort auch das zu verwendende Modell aus einer Liste wählen.

    Open WebUI: einen neuen Chat starten, am oberen Fensterrand das Pull-down Menü zur Auswahl der Modelle.

    Accessibility

    Podman-Desktop ist leider für den Screenreader Orca nicht zugänglich, vorgelesen wird jeweils nur „Tab“ auf den Menüpunkten. Zwar kann man im Menü

    Settings > Preferences > Appearence

    den Zoom-Level für die Benutzeroberfläche erhöhen. Bei höheren Werten sind dann aber die unteren Menü-Icons nicht mehr erreichbar. Einzige Möglichkeit ist, die Vergrößerung des Betriebssystems hinzuzunehmen.

    Auf dem Dashboard von Open WebUI liest Orca nur einen Teil der Schaltflächen, die Liste der Modelle gar nicht. Aber den Eingabe- und Ausgabetext im Chat und die vorgeschlagenen Prompts. Das Benutzermenü wird vorgelesen, in den einzelnen Einstellungsbereichen werden viele Optionen nicht gelesen bzw. bei der Navigation mit der Tabulator-Taste einfach übersprungen. Navigiert man allerdings mit den Pfeiltasten zeilenweise, werden die Zeilen gelesen, die Schalter hinter dem Text aber nur mit „Knopf“, egal um welche Art es sich handelt. In den Pop-Over-Fenstern funktioniert das etwas besser. Weil die Anwendung im Webbrowser läuft hilft die klassische Tastenkombination Strg + Plus-Taste oder die Geste auf dem Touchpad, um die Ansicht zu vergrößern.

    Ausblick

    Probieren Sie verschiedene Modelle aus. Vereinfacht dargestellt unterscheiden sich die Modelle durch ihre Größe (Parameterzahl), größere Modelle liefern oftmals präzisere Ergebnisse, benötigen aber mehr Rechenleistung. Neuere Modelle zeichnen sich oft durch eine verbesserte Architektur aus.

    Falls Ihr Computer über eine GPU verfügt, erstellen Sie einen Container, der auch die GPU nutzt. Das Container-Image dazu finden Sie ebenfalls auf GitHub.