Files
2026-06-09 18:40:21 +02:00

6.2 KiB


title: Open WebUI created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, artificial-intelligence, llm, frontend, typescript, svelte, ollama, auto-hebergement] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Artificial+Intelligence, https://github.com/open-webui/open-webui]

🧠 Open WebUI

Interface web auto-hébergée pour LLMs — alternative à ChatGPT, multi-modèles, entièrement offline, extensible. Supporte Ollama, OpenAI API, et la plupart des backends d'inférence locaux ou distants.

Métadonnée Valeur
Site web openwebui.com
GitHub open-webui/open-webui
License MIT
Langage TypeScript, Svelte, Python (backend)
Étoiles 20 155
Dernière MAJ 2026-06-05
Catégorie cat-artificial-intelligence

Description

Open WebUI (anciennement Ollama WebUI) est devenu en quelques années la référence de facto des frontends pour LLMs auto-hébergés. Né comme simple UI pour Ollama, le projet a grossi pour devenir une plateforme IA complète supportant pratiquement n'importe quel backend d'inférence : Ollama, llama.cpp, OpenAI API compatible (via app-localai, vLLM, etc.), mais aussi les fournisseurs distants (OpenAI, Anthropic, Groq, Google).

L'expérience utilisateur est le point fort du projet : conversations multi-tours, gestion de prompts système, import/export de conversations au format ChatGPT, RAG (Retrieval-Augmented Generation) intégré avec ingestion de PDF/DOCX/sites web, recherche web via SearXNG/Tavily, génération d'images via Stable Diffusion/AUTOMATIC1111, voice mode (TTS/STT), et un système de plugins (les Functions et Tools) qui permet d'ajouter des capacités arbitraires via du code Python ou JS.

Côté administration, Open WebUI propose une gestion fine des utilisateurs et groupes, RBAC, quotas, journalisation d'audit, et un mode multi-utilisateur prêt pour homelab familial ou petite équipe. L'architecture sépare un frontend SvelteKit d'un backend FastAPI Python, le tout distribuable en une seule image Docker (ghcr.io/open-webui/open-webui).

Installation

Option 1 : Docker Compose (recommandé)

# docker-compose.yml
version: '3.8'

services:
  ollama:
    image: ollama/ollama:latest
    container_name: ollama
    restart: unless-stopped
    ports:
      - "11434:11434"
    volumes:
      - ollama_data:/root/.ollama
    deploy:
      resources:
        reservations:
          devices:
            - capabilities: [gpu]

  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    container_name: open-webui
    restart: unless-stopped
    ports:
      - "3000:8080"
    environment:
      - OLLAMA_BASE_URL=http://ollama:11434
      - WEBUI_AUTH=true
      - WEBUI_SECRET_KEY=${WEBUI_SECRET_KEY:-change-me-in-prod}
      - ENABLE_SIGNUP=true
      - DEFAULT_MODELS=qwen2.5:7b,llama3.2:3b
    volumes:
      - openwebui_data:/app/backend/data
    depends_on:
      - ollama

volumes:
  ollama_data:
  openwebui_data:

Option 2 : Installation manuelle

# Prérequis : Python 3.11+, Node 20+, Ollama installé
git clone https://github.com/open-webui/open-webui.git
cd open-webui

# Backend
cd backend
pip install -r requirements.txt
bash start.sh  # http://localhost:8080

# Frontend (en dev)
cd ../
npm install
npm run dev    # http://localhost:5173

Configuration

Points clés du fichier .env ou des variables Docker :

  • OLLAMA_BASE_URL : URL du backend Ollama (par défaut http://localhost:11434)
  • OPENAI_API_BASE_URL : URL d'un backend compatible OpenAI (app-localai, vLLM, etc.)
  • WEBUI_AUTH=true : active l'authentification locale (multi-utilisateurs)
  • ENABLE_SIGNUP=false : désactiver les inscriptions publiques après création du compte admin
  • RAG_EMBEDDING_MODEL : modèle d'embedding pour le RAG (par défaut snowflake-arctic-embed)
  • ENABLE_IMAGE_GENERATION=true : active la génération d'images (A1111/ComfyUI/OpenAI DALL-E)
  • SEARXNG_QUERY_URL : URL d'une instance SearXNG pour la recherche web

La base de données SQLite est stockée dans /app/backend/data — sauvegarder ce volume est essentiel (contient utilisateurs, conversations, knowledge bases).

Alternatives

Open Source

  • app-librechat — frontend multi-LLM unifié, plus orienté "ChatGPT clone d'entreprise"
  • app-localai — backend d'inférence, OpenAI-compatible (complémentaire, pas concurrent)
  • LobeChat — équivalent plus design, moins de features d'admin
  • TypingMind — version self-hosted payante
  • Hugging Face Chat UI — officiel HF, plus minimaliste

Propriétaires (ce que cette app remplace)

  • ChatGPT (OpenAI) — UI et mémoire, sans dépendance cloud
  • Claude (Anthropic) — sans tracking
  • Microsoft Copilot — sans verrouillage écosystème
  • Poe (Quora) — multi-modèles via une seule UI

Sécurité

  • Compte admin : le premier compte créé devient admin — utiliser un mot de passe fort + 2FA (intégré via TOTP)
  • Désactiver les inscriptions (ENABLE_SIGNUP=false) après création de l'admin pour un homelab privé
  • Exposition réseau : ne jamais exposer directement le port 3000 sur Internet — passer par un reverse proxy (app-caddy, app-traefik, app-nginx-proxy-manager) avec HTTPS
  • RAG et uploads : Open WebUI exécute des extracteurs (PDF, etc.) sur les fichiers uploadés — risque SSRF/RCE si l'extracteur est vulnérable, d'où l'importance de mettre à jour régulièrement
  • API keys distantes : stockées chiffrées en base, mais préférer des clés à scope limité

Ressources

Pages Liées