Установка Open WebUI и настройка OmniProxy
Хотите использовать локальные и облачные модели в одном окне чата, но опасаетесь сложного развертывания и подключения? Open WebUI предоставляет привычный интерфейс чата: после установки достаточно по шагам указать параметры подключения, чтобы начать работу.
Open WebUI — это самостоятельно развертываемый интерфейс чата, который можно установить на собственный компьютер или сервер и использовать полностью автономно. Он не привязан к конкретному поставщику моделей: можно подключить как инструменты для запуска моделей локально, например Ollama, так и API, совместимые с форматом OpenAI, то есть сервисы моделей, использующие такой же формат запросов. Благодаря этому локальные и облачные модели можно переключать в одном окне.
Он подходит для длительного использования командами и организациями. Возможности, которые обновляются быстрее, сначала появляются в Computer — продукте Open WebUI для тестирования новых функций.
Подготовка к установке
Open WebUI можно использовать в macOS, Linux и Windows. Установить его можно через Docker, Python или Kubernetes. Docker помещает приложение и среду выполнения в относительно изолированный контейнер и является рекомендуемым способом. Если Docker недоступен, можно воспользоваться приведенной ниже проверенной командой Python. Kubernetes — это система развертывания контейнеров и управления ими; соответствующие инструкции приведены в Quick Start, ссылка на который находится в конце руководства.
Рекомендуется официально
Docker
- Один docker run
- Открыть 3000 в браузере
- Данные находятся в томе данных
Только чат
slim-образ
- Меньший размер загрузки
- Изменить тег на :slim
- Функция чата сохраняется
В этой статье не рассматривается
Ещё два способа
- Ручная установка через Python
- Развёртывание Kubernetes
- См. официальный Quick Start
Перед началом подготовьте:
- Установленный и работающий Docker.
- Секретную строку, предназначенную только для вас. Создайте ее командой
openssl rand -hex 32, а затем укажите вWEBUI_SECRET_KEY. Сохраните это значение без изменений: если заменить его при пересоздании контейнера, все вошедшие пользователи будут разлогинены. - Работающий OmniProxy и идентификатор модели из его текущего списка моделей. ID модели — это полное имя, используемое для выбора конкретной модели.
Установка и первый запуск
Откройте терминал и выполните команду из Quick Start. Сначала замените your-secret-key созданной ранее секретной строкой:
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
Параметры этой команды выполняют следующие задачи:
-p 3000:8080: позволяет открыть интерфейс через порт 3000 этого компьютера. Если порт 3000 занят, измените число слева.-v open-webui:/app/backend/data: сохраняет чаты, пользователей и настройки в томе данных. Том данных — это место долговременного хранения данных вне контейнера, поэтому после обновления контейнера содержимое сохранится. Не удаляйте этот параметр.--add-host=host.docker.internal:host-gateway: позволяет контейнеру обращаться к другим сервисам, работающим на этом компьютере.--restart always: контейнер снова запустится после перезагрузки компьютера.
После выполнения команды откройте в браузере http://localhost:3000 и создайте первую учетную запись, следуя инструкциям на странице.
Если чат используется только через API, тег образа можно заменить с :main на :slim. slim — это уменьшенный образ, в котором отсутствуют локальные модели речи и эмбеддингов внутри контейнера, но интерфейс чата остается доступным. Если эти локальные возможности необходимы, продолжайте использовать :main.
Для ручного обновления сначала выполните docker rm -f open-webui, затем docker pull ghcr.io/open-webui/open-webui:main, после чего снова запустите ту же команду docker run. Том данных и значение WEBUI_SECRET_KEY должны остаться без изменений.
Если Docker недоступен
В Quick Start также приведен способ установки через Python. 2026-10-09 с помощью приведенной ниже команды в macOS была установлена версия Open WebUI v0.11.4 и выполнен один диалог. Docker Desktop на этом компьютере тогда отсутствовал.
DATA_DIR=~/.open-webui uvx --python 3.11 open-webui@latest serve
После запуска откройте в браузере http://localhost:8080. Этот порт используется при установке через Python, а не порт 3000, используемый Docker.
При первом запуске будет загружена модель эмбеддингов, что может занять несколько минут. Модель эмбеддингов преобразует текст в данные, удобные для поиска и сопоставления. Дождитесь появления страницы входа; первая зарегистрированная учетная запись получит права администратора. Язык интерфейса определяется системой; при этой проверке отображался упрощенный китайский.
DATA_DIR должен указывать на каталог, который будет храниться постоянно и использоваться для данных Open WebUI. Если не задать эту переменную, данные могут попасть во временный каталог и исчезнуть после завершения работы. Если WEBUI_SECRET_KEY не задан, программа создаст файл .webui_secret_key в текущем каталоге. Запускайте программу из каталога, который планируете сохранить, либо задайте эту переменную самостоятельно.
Получение параметров подключения из OmniProxy
Скопируйте из своего OmniProxy следующие три значения:
URL: https://your-omniproxy-origin.example/v1
API Key: <YOUR_OMNIPROXY_API_KEY>
Model ID: скопируйте полный ID из текущего списка моделей OmniProxy
URL — это адрес, который Open WebUI будет использовать для подключения к API. Он должен заканчиваться на /v1. Не добавляйте после него /chat/completions: Open WebUI добавит эту часть самостоятельно.
Полностью скопируйте ID модели из текущего списка OmniProxy. Если ID содержит префикс источника и косую черту, сохраните и их. Два приведенных ниже коротких имени даны только для сверки с документацией поставщиков по состоянию на 2026-10-09. Не используйте их, если они отсутствуют в текущем списке:
- ID Claude Sonnet 5.5 в Claude API:
claude-sonnet-5-5 - Имя Gemini 3.8 Flash в API:
gemini-3.8-flash
Не вводите ключ поставщика в Open WebUI. Если шлюз не проверяет ключ, поле API-ключа можно оставить пустым; не придумывайте отдельный ключ.
Браузер
Локальный 3000
- Открыть страницу чата
- Сначала завершить регистрацию
- Затем открыть настройки
В контейнере
Open WebUI
- Не указывать localhost
- Использовать имя хоста
- URL заканчивается на /v1
На том же компьютере
OmniProxy
- Ключ оставить на шлюзе
- Список моделей — по шлюзу
- Затем посмотреть журнал вызовов
Если сервис моделей работает на хост-компьютере, а Open WebUI — в контейнере Docker, замените localhost в URL на host.docker.internal. Хост-компьютер — это компьютер, на котором непосредственно запущен Docker. Если OmniProxy прослушивает подключения только на этом компьютере, URL можно указать в виде http://host.docker.internal:порт/v1, заменив порт фактическим портом OmniProxy.
Если Open WebUI запущен локально командой Python из предыдущего раздела и OmniProxy также работает локально, используйте в адресе 127.0.0.1 или localhost. В этом случае не указывайте host.docker.internal.
Ввод настроек инструмента
Названия пунктов в интерфейсе v0.11.4 на упрощенном китайском по состоянию на 2026-10-09 отличались от названий Settings > Admin > Connections в английской инструкции. Выполните следующие действия, ориентируясь на фактически отображаемые локализованные пункты:
- Разверните левую боковую панель.
- Нажмите меню пользователя внизу.
- Нажмите Настройки.
- В расположенной ниже группе администратора нажмите Внешние подключения.
- Откройте Интерфейс OpenAI.
- Нажмите + справа от пункта Управление подключениями к интерфейсу OpenAI.
- Во всплывающем окне Изменить подключение введите URL, заканчивающийся на
/v1. Оставьте тип интерфейса Chat Completions. - Для параметра Способ аутентификации оставьте значение Ключ (Bearer). Bearer — это способ аутентификации, при котором API-ключ передается в запросе. Если OmniProxy предоставил вам ключ, введите его в поле API-ключ. Если шлюз не проверяет ключ, оставьте это поле пустым. При проверке 2026-10-09 с пустым полем успешно прошли и проверка подключения, и один диалог.
- Нажмите Проверить подключение рядом с URL. Если OmniProxy предоставляет
/models, здесь будет получен список моделей. - Откройте Расширенные настройки. Если поле ID модели оставить пустым, будут использоваться все модели, возвращаемые адресом
/models. Только если проверка завершилась ошибкой, введите полный ID из списка в поле Добавить ID модели, а затем нажмите Добавить. Каждый ID нужно добавить только один раз; пробелы в начале и конце будут удалены. - Нажмите Сохранить в этом окне, а затем Сохранить в правом нижнем углу страницы внешних подключений.
Одно лишь сохранение конфигурации не заменяет проверку. Кнопка Проверить подключение отправляет запрос к /models другой стороны — API для получения списка доступных моделей. У некоторых сервисов этот API отсутствует, поэтому проверка может завершиться ошибкой, хотя чат продолжит работать. В таком случае добавьте ID модели вручную.
Проверка на реальной задаче
Вернитесь на страницу чата, откройте меню моделей рядом с полем ввода и выберите полный ID из списка OmniProxy. Отправьте очень короткую фразу, например попросите ответить только одним словом. Ответ должен действительно появиться в окне чата.
2026-10-09 этот диалог был успешно выполнен в Open WebUI v0.11.4, установленном через Python. Docker по-прежнему остается рекомендуемым способом, но эта проверка не повторялась в Docker.
Затем откройте журнал вызовов OmniProxy и проверьте источник этого запроса и ID модели. Одного сообщения об успешном сохранении или появления модели в меню недостаточно для завершения проверки.
Интерфейс
Модель доступна для выбора
- Connections сохранены
- Модель появилась в списке
- Отправить короткий вопрос
Ответ
В окне чата есть ответ
- Сообщение не пустое
- Нет ошибки подключения
- Попробовать ещё раз с другой моделью
Запись
Шлюз видит запрос
- Источник — это подключение
- ID модели совпадает
- Ключ не попал на страницу
Распространенные ошибки
- В контейнере указан
localhostили127.0.0.1: оба адреса указывают на сам контейнер, а не на хост-компьютер. Замените их наhost.docker.internalи убедитесь, что команда запуска содержит--add-host=host.docker.internal:host-gateway. Если Open WebUI работает не в контейнере, используйте локальный адрес. - Страница не открывается в браузере: для Docker проверьте порт 3000, для Python — 8080. При первом запуске дождитесь завершения загрузки модели эмбеддингов. Команда
docker psпозволяет проверить, работает ли контейнер. Если порт 3000 занят, измените порт слева в параметре-p. - ID в меню моделей длиннее короткого имени поставщика: используйте полный ID из меню, включая косые черты.
- После обновления все пользователи вышли из системы: значение
WEBUI_SECRET_KEYизменилось. Перезапустите приложение с секретной строкой, созданной при первой установке. - Проверить подключение завершается ошибкой: сначала вручную добавьте ID модели в разделе Расширенные настройки, затем подтвердите работу, отправив реальное короткое сообщение в чате. У некоторых сервисов отсутствует
/models, поэтому чат может работать даже при ошибке проверки. - Модель не существует: снова скопируйте ID из текущего списка OmniProxy и не используйте устаревшее имя.
Официальные материалы
Команды установки приведены в Open WebUI Quick Start. Порядок подключения описан в инструкции по подключению OpenAI-compatible. Использованные в примерах ID моделей приведены в обзоре моделей Claude и списке моделей Gemini.
Замените все заполнители значениями из вашей собственной конфигурации OmniProxy. Никогда не публикуйте реальный ключ.
Сохранённый результат или HTTP 200 сами по себе не доказывают полную совместимость Агента. Проверьте источник и модель в журнале вызовов OmniProxy.