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éfauthttp://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 adminRAG_EMBEDDING_MODEL: modèle d'embedding pour le RAG (par défautsnowflake-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
- cat-artificial-intelligence — Catégorie parente
- recettes-docker-compose — Templates Docker Compose
- Ollama — Backend d'inférence LLM de référence (le plus simple) (fiche à créer)
- app-localai — Backend alternatif OpenAI-compatible
- app-librechat — Frontend alternatif