Installation d'Open WebUI et configuration d'OmniProxy
Vous souhaitez utiliser des modèles locaux et cloud dans la même fenêtre de discussion mais vous craignez que le déploiement et la configuration de la connexion ne soient trop compliqués ? Open WebUI fournit une interface de discussion familière. Une fois installé, vous pouvez commencer à l'utiliser en entrant les détails de connexion étape par étape.
Open WebUI est une interface de discussion auto-hébergée qui peut être installée sur votre propre ordinateur ou serveur et peut également fonctionner complètement hors ligne. Elle n’est liée à aucun fournisseur de modèle : elle peut se connecter à des outils tels qu’Ollama qui exécutent des modèles localement, ainsi qu’à des points de terminaison compatibles OpenAI — des adresses qui fournissent des services de modèle en utilisant le même format de demande. Cela vous permet de basculer entre les modèles locaux et cloud dans la même fenêtre.
Elle est adaptée à une utilisation à long terme par les équipes et les organisations. Les fonctionnalités qui reçoivent des mises à jour plus rapides apparaissent d’abord dans Computer, le produit qu’Open WebUI utilise pour essayer de nouvelles fonctionnalités.
Avant de commencer
Open WebUI est disponible sur macOS, Linux et Windows. Vous pouvez l’installer en utilisant Docker, Python ou Kubernetes. Docker emballe l’application et son environnement d’exécution dans un conteneur relativement isolé et est la méthode recommandée. Si Docker n’est pas disponible, vous pouvez également utiliser la commande Python testée ci-dessous. Kubernetes est un système de déploiement et de gestion de conteneurs ; consultez le démarrage rapide lié à la fin de ce guide pour les étapes correspondantes.
Recommandé officiellement
Docker
- Une commande docker run
- Ouvrir 3000 dans le navigateur
- Les données sont stockées dans le volume
Juste envie de discuter
image slim
- Taille de téléchargement plus petite
- Changez la balise pour :slim
- La fonctionnalité de chat reste disponible
Non couvert ici
Deux autres options
- Installation manuelle Python
- Déploiement Kubernetes
- Voir le démarrage rapide officiel
Avant de commencer, préparez ce qui suit :
- Docker installé et en cours d’exécution.
- Une chaîne secrète utilisée uniquement par vous. Exécutez
openssl rand -hex 32pour en générer une, puis entrez-la en tant queWEBUI_SECRET_KEY. Enregistrez cette valeur de façon permanente. Si vous la modifiez lors de la reconstruction du conteneur, les utilisateurs déjà connectés seront déconnectés. - Une instance OmniProxy en cours d’exécution et un ID de modèle provenant de sa liste actuelle de modèles. L’ID du modèle est le nom complet utilisé pour sélectionner un modèle spécifique.
Installation et premier lancement
Ouvrez un terminal et exécutez la commande du démarrage rapide. Remplacez d’abord your-secret-key par le secret que vous venez de générer :
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data -e WEBUI_SECRET_KEY=your-secret-key --name open-webui --restart always ghcr.io/open-webui/open-webui:main
Les parties suivantes de cette commande servent à différentes fins :
-p 3000:8080: Vous permet d’ouvrir l’interface via le port 3000 sur cet ordinateur. Si le port 3000 est déjà utilisé, changez le numéro à gauche.-v open-webui:/app/backend/data: Stocke les discussions, les utilisateurs et les paramètres dans un volume de données. Un volume de données est un emplacement en dehors du conteneur où les données sont conservées à long terme, de sorte que leur contenu reste après la mise à jour du conteneur. Ne supprimez pas cette option.--add-host=host.docker.internal:host-gateway: Permet au conteneur d’accéder à d’autres services en cours d’exécution sur cet ordinateur.--restart always: Redémarre le conteneur après le redémarrage de l’ordinateur.
Une fois la commande terminée, ouvrez http://localhost:3000 dans un navigateur et suivez les instructions à l’écran pour créer le premier compte.
Si vous n’avez besoin de discuter que via une API, vous pouvez changer la balise d’image de :main à :slim. slim est une image plus petite qui n’inclut pas de modèles locaux de parole et d’intégration à l’intérieur du conteneur, mais l’interface de discussion reste disponible. Continuez à utiliser :main si vous avez besoin de ces capacités locales.
Pour les mises à jour manuelles, exécutez d’abord docker rm -f open-webui, puis exécutez docker pull ghcr.io/open-webui/open-webui:main, et redémarrez-le avec la même commande docker run . Gardez à la fois le volume de données et WEBUI_SECRET_KEY inchangés.
Si Docker n’est pas disponible
Le démarrage rapide fournit également une méthode d’installation Python. Le 09-10-2026, la commande suivante a été utilisée sur macOS pour installer Open WebUI v0.11.4 et terminer une conversation. Docker Desktop n’était pas installé sur cet ordinateur à ce moment-là.
DATA_DIR=~/.open-webui uvx --python 3.11 open-webui@latest serve
Après le démarrage, ouvrez http://localhost:8080 dans un navigateur. Il s’agit du port utilisé par l’installation Python, pas du port 3000 de Docker.
Un modèle d’intégration est téléchargé lors du premier démarrage, ce qui peut prendre plusieurs minutes. Un modèle d’intégration convertit le texte en données plus faciles à rechercher et à faire correspondre. Attendez que la page de connexion apparaisse avant de continuer. Le premier compte enregistré devient l’administrateur. La langue de l’interface suit la langue du système ; le chinois simplifié a été affiché lors de ce test.
DATA_DIR doit pointer vers un répertoire qui sera conservé à long terme et utilisé pour stocker les données d’Open WebUI. S’il n’est pas défini, les données peuvent être stockées dans un répertoire temporaire et perdues après l’arrêt. Si WEBUI_SECRET_KEY n’est pas défini, le programme écrit .webui_secret_key dans le répertoire actuel. Démarrez-le à partir d’un répertoire que vous avez l’intention de conserver, ou définissez cette variable vous-même.
Obtenir les détails de connexion depuis OmniProxy
Copiez les trois éléments suivants depuis votre propre instance OmniProxy :
URL: https://your-omniproxy-origin.example/v1
API Key: <YOUR_OMNIPROXY_API_KEY>
Model ID: Copy from the current OmniProxy model list
L’URL est l’adresse qu’Open WebUI utilise pour se connecter au point de terminaison et doit se terminer par /v1. N’ajoutez pas /chat/completions après ; Open WebUI ajoute cette partie automatiquement.
Copiez l’ID complet du modèle depuis la liste actuelle d’OmniProxy. Si l’ID inclut un préfixe de source et une barre oblique, conservez-les également. Les deux noms courts suivants ne sont que des références issues de la documentation du fournisseur au 09-10-2026. Ne les utilisez pas s’ils ne figurent pas dans la liste actuelle :
- ID API Claude pour Claude Sonnet 5.5 :
claude-sonnet-5-5 - Nom API pour Gemini 3.8 Flash :
gemini-3.8-flash
N’entrez pas de clé de fournisseur dans Open WebUI. Si la passerelle ne valide pas les clés, laissez la clé API vide au lieu d’inventer une autre clé.
Navigateur
Port local 3000
- Ouvrir la page de discussion
- Terminer l'inscription d'abord
- Ensuite, ouvrir les paramètres
À l'intérieur du conteneur
Open WebUI
- Ne pas utiliser localhost
- Utiliser le nom de la machine hôte à la place
- L'URL se termine par /v1
Même ordinateur
OmniProxy
- Garder la clé dans la passerelle
- Utiliser la liste des modèles de la passerelle
- Ensuite, examiner les journaux de demande
Si le service de modèle s’exécute sur l’hôte alors qu’Open WebUI s’exécute dans un conteneur Docker, remplacez localhost dans l’URL par host.docker.internal. L’hôte est l’ordinateur exécutant Docker directement. Si OmniProxy n’écoute que sur cet ordinateur, l’URL peut être écrite comme http://host.docker.internal:port/v1, en remplaçant port par le port qu’OmniProxy utilise réellement.
Si Open WebUI s’exécute localement via la commande Python dans la section précédente et qu’OmniProxy s’exécute également localement, utilisez 127.0.0.1 ou localhost dans l’adresse. N’utilisez pas host.docker.internal dans ce cas.
Entrer la configuration
Dans l’interface en chinois simplifié de la v0.11.4 testée le 09-10-2026, les noms différaient de Paramètres > Admin > Connexions dans les instructions en anglais. Suivez les options affichées dans l’interface testée, traduites ci-dessous :
- Développez la barre latérale gauche.
- Cliquez sur le menu utilisateur en bas.
- Cliquez sur Paramètres.
- Dans la section administrateur ci-dessous, cliquez sur Connexions externes.
- Ouvrez API OpenAI.
- Cliquez sur + à droite de Gérer les connexions API OpenAI.
- Dans la boîte de dialogue Modifier la connexion, entrez l’URL se terminant par
/v1. Gardez le type d’API défini sur Chat Completions. - Gardez Méthode d’authentification définie sur Clé (Bearer). L’authentification Bearer place la clé API dans la demande pour la vérification de l’identité. Si OmniProxy vous a donné une clé, entrez-la sous Clé API. Si la passerelle ne valide pas les clés, laissez ce champ vide. Le 09-10-2026, la validation et une conversation ont toutes deux réussi avec le champ laissé vide.
- Cliquez sur Vérifier la connexion à côté de l’URL. Si OmniProxy fournit
/models, la liste des modèles sera récupérée ici. - Ouvrez Avancé. Si ID du modèle est laissé vide, tous les modèles renvoyés par
/modelsà cette adresse seront utilisés. Uniquement si la validation échoue, entrez un ID complet de la liste sous Ajouter un ID de modèle, puis cliquez sur Ajouter. Ajoutez chaque ID une seule fois ; les espaces de début et de fin sont supprimés. - Cliquez sur Enregistrer dans cette fenêtre, puis cliquez sur Enregistrer dans le coin inférieur droit de la page Connexions externes.
L’enregistrement de la configuration seul ne remplace pas la validation. Vérifier la connexion demande le point de terminaison /models de l’autre service, qui répertorie les modèles disponibles. Certains services ne fournissent pas ce point de terminaison, donc la validation peut signaler une erreur même si le chat peut toujours fonctionner. Dans ce cas, ajoutez l’ID du modèle manuellement.
Vérifier une tâche réelle
Revenez à la page de discussion, ouvrez le menu des modèles à côté de la zone de saisie et sélectionnez l’ID complet de la liste OmniProxy. Envoyez un message très court, comme lui demander de répondre avec un seul mot. Une réponse doit réellement apparaître dans la zone de discussion.
Le 09-10-2026, cette conversation a été terminée en utilisant l’installation Python de la v0.11.4. Docker reste la méthode recommandée, mais le test n’a pas été répété dans Docker.
Ensuite, ouvrez les journaux de demande d’OmniProxy et confirmez la source et l’ID du modèle pour cette demande. Voir seulement un enregistrement réussi, ou voir seulement le modèle dans le menu, ne compte pas comme une réussite.
Interface
Le modèle peut être sélectionné
- Les connexions ont été enregistrées
- Le modèle apparaît dans la liste
- Envoyer une question courte
Réponse
La zone de discussion affiche une réponse
- Ce n'est pas un message vide
- Ce n'est pas une erreur de connexion
- Réessayer avec un autre modèle
Journaux
Visible dans la passerelle
- La source est cette connexion
- L'ID du modèle correspond
- Aucune clé n'a été entrée sur la page
Erreurs courantes
localhostou127.0.0.1a été utilisé à l’intérieur du conteneur : Ces adresses pointent vers le conteneur lui-même, pas vers l’hôte. Changez l’adresse pourhost.docker.internalet confirmez que la commande de démarrage inclut--add-host=host.docker.internal:host-gateway. L’inverse s’applique lorsqu’Open WebUI ne s’exécute pas dans un conteneur : utilisez une adresse locale à la place.- Le navigateur ne peut pas ouvrir la page : Pour Docker, vérifiez le port 3000 ; pour Python, vérifiez le port 8080. Lors du premier démarrage, attendez que le téléchargement du modèle d’intégration soit terminé. Vous pouvez utiliser
docker pspour confirmer si le conteneur est en cours d’exécution. Si le port 3000 est déjà utilisé, changez le port sur le côté gauche de-p. - L’ID dans le menu des modèles est plus long que le nom court du fournisseur : Utilisez l’ID complet du menu, y compris les barres obliques.
- Tout le monde est déconnecté après une mise à jour :
WEBUI_SECRET_KEYa changé. Redémarrez en utilisant le secret généré la première fois. - Vérifier la connexion échoue : Ajoutez d’abord manuellement l’ID du modèle sous Avancé, puis confirmez-le avec un vrai chat d’une phrase. Certains services ne fournissent pas
/models, donc le chat peut toujours fonctionner lorsque la validation signale une erreur. - Le modèle n’existe pas : Copiez à nouveau l’ID depuis la liste actuelle d’OmniProxy au lieu de continuer à utiliser un nom obsolète.
Références officielles
Pour les commandes d’installation, voir Démarrage rapide d’Open WebUI. Pour les étapes de connexion, voir les instructions de connexion compatibles OpenAI. Pour les ID de modèle utilisés dans les exemples, voir Aperçu du modèle Claude et liste des modèles Gemini.
Remplacez chaque espace réservé par des valeurs de votre propre configuration OmniProxy. Ne publiez jamais une vraie clé.
Un résultat sauvegardé ou un HTTP 200 seul ne prouve pas la compatibilité complète de l'Agent. Vérifiez la source et le modèle dans le journal d'appels d'OmniProxy.