Passer au contenu principal

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

Ouvrez un navigateur et accédez à l'adresse indiquée (http://localhost:8080). Si vous voulez y accéder depuis une autre machine du réseau, remplacez localhost par l'IP du serveur.

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 :

  1. Créez un fichier service :
sudo nano /etc/systemd/system/openwebui.service
  1. 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.

  1. 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 :

  1. Installez NGINX :
sudo apt install nginx -y
  1. Créez un fichier de configuration :
sudo nano /etc/nginx/sites-available/openwebui
  1. 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.

  1. Activez la configuration :
sudo ln -s /etc/nginx/sites-available/openwebui /etc/nginx/sites-enabled/
sudo systemctl restart nginx
  1. 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.

https://ai.garabou.com