IA et LLM

IA : Open WebUI, une interface web à Ollama

Table des matières

ollama-logo



Introduction



Dans un précédent article, on a vu comment mettre en place Ollama et déployer des modèles de LLM.

Dans cet article, on va voir comment installer et utiliser la plus populaire des interface web permettant d'interragir avec nos modèles LLM : Open WebUI

L'installation se fait sous forme de conteneur, car c'est la voie recommandée par Open WebUI. Il semble très périlleux de l'installer autrement en raison du manque de documentation sur le sujet, et l'installation via PIP est notée en Beta (et exige Python 3.11 exactement au moment de la rédaction de cet article).

La base de cet article a été faite sur Red Hat Enterprise Linux 9, nous utiliserons podman pour gérer le conteneur OpenWeb UI.

Prérequis



Ollama et modèles LLM



Dans un premier temps, il est nécessaire d'avoir installé et configuré Ollama tel que décrit dans cet article : Installer un Modèle de Langage (LLM) avec Ollama.

Il sera nécessaire d'avoir au moins installé un modèle !

Ollama devra écouter sur toutes les interfaces réseau.

Podman



Podman est nécessaire pour faire fonctionner le conteneur.

Fedora / RHEL et dérivées : C'est installé par défaut. Si nécessaire :
Code BASH :
dnf install podman


Debian, Ubuntu et dérivées :
Code BASH :
apt install podman


Installer OpenWeb UI



Pour installer OpenWeb UI, on va récupérer l'image :
Code BASH :
podman pull ghcr.io/open-webui/open-webui:main


On démarre ensuite le conteneur :
Code BASH :
podman run -d --name openwebui -p 3000:8080 -v openwebui:/app/backend/data ghcr.io/open-webui/open-webui:main


Le conteneur est nommé openwebui
Le port 3000 est utilisé pour un accès à l'interface
Les données de paramétrage de l'application sont stockées dans le volume openwebui pour être presistantes

Création d'un service systemd



Pour que notre application se démarre automatiquement au démarrage du système, on va créer un service systemd :
Code BASH :
vim /etc/systemd/system/openwebui.service


Dedans, on va y indiquer ceci (il y a peut être mieux, je prends vos améliorations) :
Code BASH :
[Unit]
Description=Open WebUI
After=network.target
[Service]
Restart=always
RestartSec=10
ExecStart=/usr/bin/podman start openwebui
ExecStop=/usr/bin/podman stop openwebui
Environment=PODMAN_SYSTEMD_UNIT=%n
Type=forking
[Install]
WantedBy=multi-user.target


On recharge systemd pour prendre en compte le nouveau service :
Code BASH :
systemctl daemon-reload


On active le service au démarrage du système :
Code BASH :
systemctl enable openwebui



Accéder à l'interface



On peut accéder à l'interface avec le nom du serveur (ou son adresse IP) sur le port 3000. Exemple : http://videollm.linuxtricks.lan:3000/
Plus tard, on pourra mettre un reverse-proxy devant pour porter un certificat SSL et y accéder en HTTPS sur le port par défaut (443)

Pour utiliser l'outil il est nécessaire davoir un compte, s'enregister avec le bouton "Signup"
openwebui-1

Le premier compte créé sera administrateur, renseigner les champs :
openwebui-2

En haut à gauche, on retrouve les modèles téléchargés et installés sur Ollama :
openwebui-3

On va pouvoir discuter avec nos modèles, les conversations sont stockées sur le volet de gauche :
openwebui-4

On va pouvoir créer plusieurs conversations, et interroger plusieurs modèles installés :
openwebui-5

En haut à droite, on pourra éditer des paramètres de son profil :
openwebui-6

Et on aura aussi accès au panneau d'administration si on est administrateur :
openwebui-7



A vous de jouer maintenant !
Cette page a été vue 106 fois