Что это
Open WebUI (ранее Ollama WebUI) — это полноценный веб-интерфейс для чата с LLM. По духу и функциям очень похож на ChatGPT: диалоги, история, поиск, тёмная тема, голосовой ввод, генерация изображений. Но работает с вашими моделями локально.
Что умеет
- Чат с любой Ollama-моделью прямо из браузера
- OpenAI-совместимый провайдер — можно подключить Claude, GPT-4, Grok, что угодно
- RAG из коробки — загружаете PDF, текстовые файлы, URL, и модель отвечает с учётом контекста
- Multi-user с авторизацией — RBAC, группы, права доступа
- Web-поиск через SearXNG, Brave, Tavily и т.п.
- Image generation через AUTOMATIC1111 / ComfyUI
- Голосовой ввод и озвучка через Whisper и TTS-движки
Установка
docker run -d -p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
После этого заходите на http://localhost:3000, создаёте первого пользователя (он автоматически становится админом), выбираете модель — и всё работает.
Архитектура
Backend: Python (FastAPI)
- Ollama client
- OpenAI-compatible client
- Vector store (ChromaDB)
- Auth (JWT + OAuth)
Frontend: Svelte + TypeScript
- Чат-интерфейс с markdown
- Управление моделями
- Админ-панель
Storage:
- SQLite для метаданных
- ChromaDB для embeddings
- Локальная FS для загруженных файлов
Что понравилось
RAG без боли
Загружаете PDF — Open WebUI автоматически его чанкит, эмбеддит и сохраняет в ChromaDB. Дальше при каждом сообщении ищется релевантный контекст и подмешивается в промпт. Это работает «из коробки» без каких-либо настроек.
Хорошая работа с Ollama
Open WebUI обнаруживает все модели Ollama автоматически. Можно создавать модельные пресеты с конкретными параметрами (temperature, system prompt, top_p) и переключаться между ними.
Встроенный function calling
Можно описывать функции для модели прямо в UI, и она будет их вызывать. Это превращает Open WebUI в простой no-code agent-builder.
Голос
Whisper интегрирован нативно — можно говорить вместо набора текста. TTS тоже есть.
Что можно улучшить
- Проект большой и активный, но иногда breaking changes в API
- Документация местами отстаёт от кода
- Multi-user сценарии требуют более тонкой настройки прав
Кто использует
- Разработчики, которые хотят приватный ChatGPT для семьи или команды
- Компании с on-premise требованиями (медицина, финансы, юриспруденция)
- Энтузиасты, которые экспериментируют с локальными моделями
- Учебные заведения — можно поднять на школьном сервере
Альтернативы
- LibreChat — похожий функционал, но с упором на multi-user
- text-generation-webui (oobabooga) — старый проект, больше опций для research
- Chatbot UI — минималистичный вариант
- AnythingLLM — специализирован на работе с документами
Итог
Лучший способ превратить Ollama или LM Studio в полноценный чат-продукт. Поставил за 5 минут, пользуешься как ChatGPT, данные остаются локально. Рекомендую начать с него, если вы только входите в мир self-hosted LLM.