Text Generation WebUI (oobabooga)
oobabooga est le pseudonyme du développeur de Text Generation WebUI, aujourd'hui renommé TextGen : une interface open source (AGPL-3.0, environ 47 000 étoiles GitHub) pour exécuter des modèles de langage en local, sans télémétrie. Elle se télécharge en version portable, comme une application de bureau, pour les modèles GGUF ; l'installation complète ajoute d'autres moteurs, l'entraînement de LoRA et les extensions. Source officielle : le dépôt GitHub oobabooga/textgen.
Beaucoup de tutoriels sur Text Generation WebUI décrivent une version d'il y a deux ans : moteurs disparus, extensions remplacées, commandes changées. Ce guide reprend le sujet d'après le dépôt actuel : le nouveau nom, les trois façons de l'installer, les moteurs réellement pris en charge, les extensions, l'API, et les réglages de sécurité à connaître avant d'ouvrir l'interface à d'autres.
#oobabooga, Text Generation WebUI, TextGen : de quoi parle-t-on ?
oobabooga est le pseudonyme GitHub du développeur du projet. L'outil, longtemps appelé Text Generation WebUI, est désormais présenté sous le nom TextGen : l'ancienne adresse du dépôt redirige vers github.com/oobabooga/textgen. Il s'agit d'une application open source, sous licence AGPL-3.0, qui rassemble le chat, la génération libre, la vision, l'appel d'outils, l'API compatible OpenAI et l'entraînement de LoRA. Le dépôt la décrit comme totalement hors ligne et privée, sans télémétrie, ressources externes ni requêtes de mise à jour à distance.
Le projet est actif : la dernière version que nous avons relevée, la 4.9, date de mai 2026. À notre connaissance, il n'existe pas d'autre site officiel que ce dépôt GitHub : méfiez-vous des sites de téléchargement tiers et des forks qui prétendent le remplacer, car un exécutable trafiqué s'exécute avec vos droits.
#1. Installation : portable, one-click ou manuelle
Ton ChatGPT privé et gratuit sur ta machine en 1 heure — LM Studio, Ollama, Open WebUI, tes documents, sans cloud.
- Espace en ligne à vie
- PDF + fichiers
- Mises à jour à vie
Le dépôt propose trois voies. La version portable est la plus simple : elle inclut toutes les dépendances, se lance en double-cliquant et ne charge que les modèles GGUF (moteur llama.cpp). Elle existe pour Linux, Windows et macOS avec des variantes CUDA, Vulkan, ROCm et processeur seul. L'installation complète, nécessaire pour les autres moteurs, l'entraînement, la génération d'images et les extensions, télécharge PyTorch et réclame environ 10 Go de disque.
| Mode | Ce que vous obtenez | Ce qu'il faut savoir |
|---|---|---|
| Version portable (application de bureau) | GGUF via llama.cpp, tout inclus | Le plus simple ; pas d'extensions ni d'autres moteurs |
| Installateur one-click (scripts start_) | Installation complète : ExLlamaV3, Transformers, entraînement, extensions | Environ 10 Go ; choix du fabricant du GPU à l'installation |
| Manuelle avec venv ou Conda | Contrôle total de l'environnement Python | Pour les développeurs ; à réserver aux cas particuliers |
- 01Télécharger la version portableDepuis la page des versions du dépôt, choisissez l'archive de votre système et de votre GPU. Pour NVIDIA, prenez le build cuda13.1 si nvidia-smi indique une version de CUDA supérieure ou égale à 13.1, sinon cuda12.4. AMD et Intel utilisent Vulkan, AMD peut aussi utiliser ROCm, et une version processeur seul existe.
- 02Extraire et lancerDécompressez l'archive, puis double-cliquez sur textgen : une fenêtre s'ouvre.
- 03Sur macOS, lever la quarantaineExécutez xattr -cr suivi du chemin du dossier extrait avant le premier lancement, comme l'indique la note de la version.
- 04Ajouter un modèlePlacez un fichier GGUF dans le dossier user_data/models ; l'interface le détecte automatiquement.
- 05Charger et discuterSélectionnez le modèle dans l'onglet des modèles, puis ouvrez le chat.
Mettre à jour un build portable se fait sans perdre vos modèles ni vos réglages : téléchargez la nouvelle archive, extrayez-la et remplacez son dossier user_data par celui de votre ancienne installation. Depuis la version 4.0, vous pouvez aussi ranger user_data un niveau au-dessus des dossiers d'installation ; il est alors détecté automatiquement.
Pour l'installation complète, clonez le dépôt et lancez le script de votre système. Le script demande le fabricant de votre GPU, installe les dépendances dans un dossier local, puis vous ouvrez http://127.0.0.1:7860 dans le navigateur.
Tout se range dans un dossier installer_files local. Pour réinstaller de zéro, supprimez ce dossier et relancez le script. Pour appliquer des options de façon permanente, écrivez-les dans user_data/CMD_FLAGS.txt, par exemple --api pour activer l'API. Aucun de ces scripts n'a besoin de droits administrateur.
#2. Télécharger et choisir un modèle
Le mode d'emploi du dépôt tient en trois phrases : téléchargez un fichier GGUF depuis Hugging Face, placez-le dans user_data/models, et l'interface le détecte. Les modèles en plusieurs fichiers (Transformers en 16 bits, EXL3) vont dans un sous-dossier du même répertoire et exigent l'installation complète, pas la version portable.
Le seul critère pratique est la mémoire. Repères du site en quantification Q4, poids seuls : 3B environ 2 Go, 7 à 8B environ 5 Go, 14B environ 9 Go, 32B environ 19 à 20 Go, 70B environ 40 Go. Ajoutez le cache de contexte et une marge pour le système. Le calculateur de VRAM du site vous donne le total exact pour votre contexte.
#Contexte et cache : les deux options qui économisent la mémoire
Deux options de lancement pèsent directement sur la mémoire. --ctx-size fixe la taille du contexte en tokens : la valeur 0 signifie automatique avec llama.cpp, à condition de placer toutes les couches sur le GPU (--gpu-layers=-1), et la valeur par défaut est 8 192 pour les autres moteurs. --cache-type choisit le format du cache de contexte ; avec llama.cpp, les valeurs valides sont fp16, q8_0 et q4_0. Un cache quantifié occupe moins de mémoire qu'un cache fp16, au prix d'une précision légèrement moindre : essayez q8_0 d'abord si la mémoire manque avant de réduire la taille du modèle.
Le dépôt renvoie aussi vers deux outils de la communauté pour cadrer ce choix : un calculateur de mémoire pour les modèles GGUF et une liste de quantifications recommandées. Vérifiez leurs résultats avec le calculateur du site, puis surveillez l'occupation réelle de la carte pendant une longue conversation.
#3. Choisir un moteur (loader)
TextGen charge un modèle avec un moteur, appelé loader. Par défaut il le détecte ; vous pouvez le forcer avec l'option --loader. Les valeurs acceptées aujourd'hui sont Transformers, llama.cpp, ExLlamav3_HF, ExLlamav3 et TensorRT-LLM, et l'on peut changer de moteur et de modèle sans redémarrer.
| Moteur | Format de modèle | Usage |
|---|---|---|
| llama.cpp | GGUF | Le choix par défaut : processeur et GPU, seul moteur de la version portable |
| ik_llama.cpp | GGUF | Variante de llama.cpp, listée comme backend supplémentaire |
| ExLlamaV3 | EXL3 | Quantification pour GPU, dans l'installation complète |
| Transformers | Modèles 16 bits, safetensors | Polyvalent et gourmand en mémoire ; sert aussi à l'entraînement |
| TensorRT-LLM | Modèles compilés pour NVIDIA | Pour les GPU NVIDIA, installation complète |
Si vous débutez, restez sur llama.cpp et le format GGUF : c'est le chemin le plus court, celui de la version portable, et celui que les autres outils (Ollama, LM Studio) utilisent aussi. Les autres moteurs se justifient par un besoin précis : un format particulier, le fine-tuning, ou l'exploitation maximale d'une carte NVIDIA.
#4. Chat, instruct, notebook, vision
- Instruct
- Le mode de suivi d'instructions, comme ChatGPT. Les invites sont mises en forme automatiquement avec des modèles Jinja2.
- Chat-instruct et chat
- Pour converser avec des personnages personnalisés.
- Notebook
- Un onglet de génération libre, en dehors des tours de chat : vous écrivez, le modèle continue.
- Vision et fichiers
- Vous pouvez joindre des images aux messages, ainsi que des fichiers texte, PDF et .docx pour discuter de leur contenu.
- Édition et branches
- Modifier un message, naviguer entre ses versions et ouvrir une branche à n'importe quel point de la conversation.
Les modèles peuvent aussi appeler des outils pendant la conversation : recherche web, récupération de pages, calcul. Chaque outil est un simple fichier Python, et les serveurs MCP sont pris en charge. Cette fonction se combine avec le contexte : un agent qui appelle des outils remplit vite une fenêtre courte, pensez à augmenter la taille de contexte avec l'option --ctx-size.
#5. Extensions : ce qui existe vraiment
Les extensions ne fonctionnent qu'avec l'installation complète. Le dossier des extensions du dépôt contient notamment coqui_tts, silero_tts (synthèse vocale), whisper_stt (saisie vocale), sd_api_pictures et send_pictures (images), google_translate, superbooga et superboogav2, ngrok, gallery et perplexity_colors. Le README ajoute que des extensions communautaires existent en plus.
#6. Mode API
Ajoutez --api à vos options pour lancer l'API. D'après le wiki du dépôt, le port par défaut est 5000, modifiable avec --api-port, et l'API reste locale tant que vous ne demandez pas explicitement de l'ouvrir. Le wiki précise qu'elle est hors ligne, ne se connecte pas à OpenAI et ne crée aucun journal. Les points d'accès couvrent les chats, les complétions et les messages au format Anthropic, avec appel d'outils.
Vous pouvez brancher n'importe quel client OpenAI (un frontend de chat, un agent de code, LangChain) en pointant vers cette adresse. La documentation interactive de tous les points d'accès est servie sur la même adresse, sous /docs.
#Ouvrir l'interface aux autres : les options à connaître
Par défaut, l'interface n'est joignable que depuis votre machine. Trois options changent cela. --listen rend l'interface accessible depuis votre réseau local. --share crée une adresse publique, à éviter sauf test ponctuel. Et --multi-user ne sauvegarde pas les historiques de chat : le dépôt la décrit comme adaptée à de petites équipes de confiance, pas comme une solution d'entreprise.
Pour l'API, ajoutez --api-key avec une clé de votre choix dès que vous écoutez sur le réseau : sans clé, tout appareil qui atteint le port peut interroger votre modèle. Pour un vrai usage d'équipe (comptes, rôles, journalisation), placez plutôt un frontend dédié devant le moteur.
#TextGen face à Ollama et LM Studio
| Besoin | TextGen | Ollama ou LM Studio |
|---|---|---|
| Démarrer vite avec un GGUF | Version portable, simple aussi | Ollama : une commande ; LM Studio : interface guidée |
| Tester plusieurs moteurs et formats | Oui : c'est son point fort | Centrés sur GGUF |
| Fine-tuner un LoRA dans l'interface | Oui, avec l'installation complète | Non |
| Servir une équipe | Peu adapté (multi-user limité) | Ollama derrière Open WebUI ou LibreChat |
| Usage quotidien fluide | Plus de réglages, plus de manipulations | Plus simple à entretenir |
En résumé : TextGen est l'outil de l'exploration et du réglage fin, pas celui de l'usage quotidien d'un débutant. Si vous voulez d'abord discuter avec un modèle, commencez par Ollama ou LM Studio ; revenez à TextGen quand vous avez besoin d'un moteur, d'un format ou d'un entraînement que les autres n'offrent pas.
- Ollama vs LM Studio vs Jan vs GPT4All
- Source : dépôt TextGen (oobabooga)
- Source : notes de la version 4.9
- Source : wiki, API compatible OpenAI
oobabooga et Text Generation WebUI, est-ce la même chose ?+
Comment installer Text Generation WebUI en 2026 ?+
Quels moteurs et formats sont pris en charge ?+
Est-ce vraiment hors ligne et sans télémétrie ?+
Comment activer l'API pour brancher un autre outil ?+
Faut-il préférer TextGen à Ollama ?+
Un retour, une erreur, une précision ? Faites-nous signe, ça améliore le guide pour tout le monde.