Installation et Configuration d'Open WebUI
Introduction
Open WebUI est une interface web permettant d'interagir avec des modèles d'intelligence artificielle en local. Il fournit une expérience utilisateur fluide pour exécuter des modèles tels que LLaMA sur un serveur personnel.
Prérequis
Avant de commencer, assurez-vous d'avoir :
- Un serveur sous Linux (Ubuntu, Debian, Arch, etc.).
- Python 3 installé.
- pip (gestionnaire de paquets Python).
- Accès root ou un utilisateur avec les droits sudo.
Installation
1. Création d'un environnement virtuel
L'utilisation d'un environnement virtuel permet d'éviter les conflits entre les dépendances Python.
python3 -m venv ~/openwebui-venv
2. Activation de l'environnement virtuel
source ~/openwebui-venv/bin/activate
Vous devriez voir le préfixe (openwebui-venv) apparaître dans votre terminal, indiquant que l'environnement virtuel est actif.
3. Installation d'Open WebUI
pip install open-webui
4. Démarrage du serveur
open-webui serve
Le serveur démarre et vous devriez voir une sortie indiquant l'URL locale (généralement http://localhost:8080).
Accès à l'interface
Démarrage Automatique avec systemd (Optionnel)
Si vous souhaitez que Open WebUI démarre automatiquement au démarrage du serveur, créez un service systemd :
- Créez un fichier service :
sudo nano /etc/systemd/system/openwebui.service
- Ajoutez les lignes suivantes :
[Unit]
Description=Open WebUI Service
After=network.target
[Service]
User=youruser
Group=youruser
WorkingDirectory=/home/youruser/openwebui-venv
ExecStart=/home/youruser/openwebui-venv/bin/open-webui serve
Restart=always
[Install]
WantedBy=multi-user.target
Remplacez youruser par votre nom d’utilisateur.
- Activez et démarrez le service :
sudo systemctl daemon-reload
sudo systemctl enable openwebui
sudo systemctl start openwebui
Configuration avec un Reverse Proxy (NGINX)
Si vous voulez sécuriser l'accès avec un domaine et un certificat SSL, voici un exemple de configuration avec NGINX :
- Installez NGINX :
sudo apt install nginx -y
- Créez un fichier de configuration :
sudo nano /etc/nginx/sites-available/openwebui
- Ajoutez la configuration suivante :
server {
listen 80;
server_name openwebui.example.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Remplacez openwebui.example.com par votre domaine.
- Activez la configuration :
sudo ln -s /etc/nginx/sites-available/openwebui /etc/nginx/sites-enabled/
sudo systemctl restart nginx
- Sécurisez avec Let's Encrypt (SSL) :
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d openwebui.example.com
Dépannage
1. Problème de port occupé
Si le port 8080 est déjà utilisé, modifiez le port de lancement :
open-webui serve --port 9090
2. Open WebUI ne démarre pas
Essayez de réinstaller :
pip uninstall open-webui
pip install open-webui
Vérifiez aussi que toutes les dépendances sont bien installées.