Local LLM
text-generation-webui (oobabooga) — Swiss-Army Local LLM UI logo

text-generation-webui (oobabooga) — la navaja suiza para LLM locales

text-generation-webui es la interfaz multi-loader basada en Gradio a la que recurren los investigadores cuando lo necesitan todo — múltiples backends, entrenamiento LoRA, experimentos de cuantización, extensiones y una interfaz de chat familiar en un solo paquete.

Why text-generation-webui

Mucho antes de que Ollama tuviera una API, antes de que existiera LM Studio, el text-generation-webui de oobabooga era la forma en que la comunidad open source de LLM hacía funcionar modelos en casa. Es una app Gradio con pestañas «Chat», «Instruct», «Model», «Parameters», «Training», «Session» y «Extensions» — cada perilla expuesta, cada backend enchufable. Para investigadores y entusiastas que quieren entender lo que hace su modelo en lugar de simplemente chatear con él, sigue siendo la herramienta más completa del ecosistema.

El coste es la complejidad. Comparado con el comando único de Ollama, text-generation-webui es una instalación Python completa con varios loaders (Transformers, llama.cpp, ExLlamaV2, HQQ, AQLM) y sus cadenas de dependencias. Las actualizaciones rompen ocasionalmente instalaciones existentes. Para uso casual, ganan las herramientas más simples. Para power users que quieren cambiar de loader, experimentar con samplers, entrenar LoRAs e instalar extensiones, text-generation-webui sigue siendo insuperable.

También tiene la comunidad de roleplay / escritura creativa más fuerte de cualquier UI LLM local. Las persona cards, los templates de instrucción y muchas extensiones orientadas a personajes nacieron aquí. Si tu caso de uso no es instrucción ni chatbot (ficción interactiva, roleplay de personajes, narrativa agéntica), text-generation-webui tiene la cultura.

Quick Start — One-Click Install + Web UI

Los scripts start_* gestionan automáticamente un entorno conda y la instalación de loaders. --api expone endpoints compatibles con OpenAI en el puerto 5000. La flexibilidad de formato de modelo es la razón de ser — la misma UI carga GGUF (llama.cpp), GPTQ (AutoGPTQ), EXL2 (ExLlamaV2), HQQ, AWQ y safetensors sin cuantizar. Empareja el loader con el formato del modelo en la pestaña «Model».

# 1. Clone and run the appropriate installer for your OS
git clone https://github.com/oobabooga/text-generation-webui.git
cd text-generation-webui

# macOS:
./start_macos.sh
# Linux:
# ./start_linux.sh
# Windows:
# .\start_windows.bat

# The script creates a conda env, asks about GPU (CUDA / ROCm / CPU / MPS),
# and installs the right loaders. First run takes 5-15 minutes.

# 2. Open http://localhost:7860 in your browser.
#    - "Model" tab → download a model from Hugging Face (e.g. Qwen2.5-14B-Instruct-GGUF)
#    - "Chat" tab → start chatting

# 3. Or expose the OpenAI-compatible API for programmatic access
#    --api flag enables the API extension (usually on by default in recent builds)
./start_macos.sh --api --listen --model-dir models
# API endpoint: http://localhost:5000/v1/chat/completions

# 4. Train a LoRA (research workflow)
#    "Training" tab → pick dataset → configure hyperparams → run
#    Output LoRA adapter written to loras/<name>; re-load in Model tab.

Características clave

Varios backends de inferencia

Transformers (precisión completa o 8-bit), llama.cpp (GGUF), ExLlamaV2 (EXL2), HQQ, AQLM, AutoAWQ, GPTQ. Elige el mejor loader según tu modelo y tu hardware.

Entrenamiento (LoRA / QLoRA)

Entrenamiento LoRA y QLoRA integrado desde la pestaña «Training». No es tan rápido como Axolotl/Unsloth, pero es la UI más accesible para «entrenar un LoRA con mi dataset».

Ecosistema de extensiones

Integración SD, TTS, memoria a largo plazo, visión multimodal, búsqueda web y decenas más. Instalación desde la UI integrada vía el hub ooba-extensions.

Modos Chat + Instruct + Notebook

Chat para ida y vuelta, Instruct para prompts zero-shot, Notebook para completion libre y prompt hacking. Cambia cuando quieras.

Control fino del sampling

Cada parámetro de sampling expuesto: temperature, top_p, top_k, min_p, repetition penalty, dynamic temperature, mirostat, etc. Útil para escritura creativa e investigación.

Character cards

Character cards estilo Tavern, gestión de personas y templates orientados al roleplay. El ecosistema en torno a casos de uso basados en personajes está más desarrollado aquí que en ningún otro lugar del mundo LLM local.

Comparación

 AudienceFlexibilityLearning CurveBest Fit
text-generation-webuiestaPower users, researchersVery highMedium-highExperimentation, LoRA, roleplay
OllamaDevelopersMediumLowShip fast, API-first
LM StudioAll usersMediumVery lowNon-developer GUI
JanAll usersMediumVery lowOSS-purist desktop app

Casos de uso

01. Experimentación con modelos

Cambia de loader, prueba cuantizaciones, compara samplers sobre el mismo prompt. La UI Gradio muestra resultados al instante — iteración mucho más rápida que con una CLI.

02. Fine-tuning con LoRA

Entrena pequeños adaptadores LoRA en datasets personalizados sin salir de la UI. Útil para investigación y personalización por dominio antes de pasarte a pipelines Axolotl/Unsloth.

03. AI creativa / roleplay / personajes

El ecosistema más sólido de character cards y personas. Si tu caso de uso es ficción interactiva o chat persistente con un personaje, esta comunidad y este tooling son el sitio.

Precios y licencia

text-generation-webui: open source con licencia AGPL-3.0. Gratis para uso personal y no-SaaS. Atención a la AGPL: si lo alojas como servicio, el código derivado también debe estar bajo AGPL — comprueba las implicaciones legales antes de embeberlo en productos comerciales.

Coste de hardware: escala con loader y modelo. Transformers a precisión completa consume mucha RAM; llama.cpp GGUF es el más tolerante. EXL2 es rápido en GPU con buena calidad.

Coste operativo: más pesado que Ollama o Jan — las instalaciones multi-loader pueden romperse al actualizar Python/CUDA. Reserva tiempo para el primer setup y para roturas ocasionales al actualizar.

Activos relacionados en TokRepo

Preguntas frecuentes

¿text-generation-webui sigue siendo relevante en 2026?+

Sí, para audiencias específicas. Para chat pilotado por API, ha ganado Ollama. Para chat en GUI, ha ganado LM Studio. Para investigación, entrenamiento LoRA y roleplay, text-generation-webui sigue siendo la herramienta más completa. Elige según tu caso de uso.

¿Puedo usar text-generation-webui como backend API?+

Sí — activa --api al arrancar. La API compatible con OpenAI expone los endpoints chat completions y completions en el puerto 5000 por defecto. La calidad de compatibilidad es buena pero no idéntica a Ollama/vLLM; verifica los casos límite para tus integraciones de herramientas.

¿Cómo se compara el entrenamiento aquí con Axolotl o Unsloth?+

La UI de entrenamiento de text-generation-webui es la forma más accesible de entrenar un LoRA sin escribir configs YAML. Axolotl y Unsloth son más flexibles, más rápidos y más eficientes en memoria — imprescindibles para fine-tuning serio. text-generation-webui es genial para «probar entrenamiento» e iterar sobre datasets pequeños.

¿Funciona en Apple Silicon?+

Sí. Elige el loader llama.cpp con Metal habilitado o el backend MPS de Transformers. No tan optimizado como MLX, pero funcional. Para chat puro en Apple Silicon, Ollama o las herramientas basadas en MLX son más rápidas.

¿Y la licencia AGPL?+

AGPL-3.0 significa: puedes usarlo libremente; si lo modificas y lo expones en red, el código modificado también debe ser AGPL. Para uso personal o herramientas internas, no hay problema. Para productos SaaS que embeben el código, consulta con legal. Alternativa: usa Gradio o construye tu propia UI sobre llama.cpp / vLLM (ambos MIT / Apache).

Comparar alternativas