Що таке Text Generation WebUI
Text Generation WebUI — відкритий інтерфейс для роботи з мовними моделями через браузер: чат, режим блокнота для вільного тексту і панель параметрів генерації без командного рядка. Проєкт підтримує кілька backend-рушіїв: llama.cpp для CPU і легких GPU-серверів, Transformers та ExLlama для повноцінного GPU-інференсу.
Інструмент зручний, коли модель потрібно тестувати інтерактивно, порівнювати відповіді за різних налаштувань температури і підключати розширення — від голосового вводу до генерації зображень. Для чистого API без інтерфейсу краще підійде vLLM, а WebUI закриває сценарій ручної роботи людини з моделлю.
Вимоги до сервера
Мінімальна конфігурація залежить від обраного backend-рушія та розміру моделі.
| Сценарій | CPU | RAM | GPU |
|---|---|---|---|
| llama.cpp, модель 7B | 4 ядра | 16 ГБ | не обов'язковий |
| Transformers, модель 7B | 4 ядра | 16 ГБ | 8 ГБ VRAM |
| ExLlama, модель 13B | 6 ядер | 24 ГБ | 16 ГБ VRAM |
Точний обсяг відеопам'яті під конкретну модель простіше прикинути заздалегідь — див. статтю скільки VRAM потрібно моделі.
Встановлення на VDS
Проєкт поширюється як звичайний Python-репозиторій зі скриптом встановлення залежностей.
sudo apt update
sudo apt install -y git python3.11-venv
git clone https://github.com/oobabooga/text-generation-webui
cd text-generation-webui
python3.11 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
Встановлення залежностей триває кілька хвилин: скрипт ставить PyTorch, підтримку обраних backend-рушіїв і веб-сервер на Gradio.
Перший запуск і завантаження моделі
Після встановлення запустіть сервер і вкажіть порт, доступний ззовні, щоб відкрити інтерфейс з робочого комп'ютера.
python server.py --listen --listen-port 7860 --api
Модель завантажується через вкладку Model: файли GGUF кладуться в каталог models/, після чого модель з'являється у випадному списку. Прапорець --api додатково відкриває OpenAI-сумісну кінцеву точку, тому WebUI використовують і як сервер для сторонніх застосунків, а не лише як чат у браузері.
Корисні розширення та режими роботи
WebUI закриває не лише діалоговий режим — розширення покривають більшість робочих сценаріїв:
- Режим Notebook — вільний текст без ролей асистента і користувача, зручний для дописування і експериментів з промптом.
- Розширення superbooga додає простий пошук по документах прямо в діалозі.
- Character-картки задають особистість і стиль відповіді моделі через окремий JSON-профіль.
- Вбудований API-режим дає змогу підключати WebUI до сторонніх скриптів так само, як OpenAI API — утім, для продакшен-навантаження надійніший окремий inference-сервер на кшталт llama.cpp напряму.
Що робити за типових проблем
Більшість збоїв вирішуються перевіркою версії залежностей або параметрів запуску:
- Інтерфейс не відкривається ззовні — перевірте прапорець
--listenі правило файрволу для порту 7860. - Модель не завантажується і падає з помилкою пам'яті — зменшіть рівень контексту в налаштуваннях моделі або візьміть легше квантування.
- Backend ExLlama не знаходить бібліотеку CUDA — перевстановіть PyTorch версії, вказаної у файлі requirements для GPU.
- Відповіді обриваються посередині фрази — збільште параметр max_new_tokens на вкладці генерації.
Після налаштування WebUI перетворюється на зручний робочий стенд: можна швидко перемикати моделі, порівнювати квантування і ділитися доступом з колегами через один і той самий VDS.