Как подключить модели изображений в Open WebUI: администратор задаёт движок и модель в Settings > Admin > Images, включает Image Generation, а в чате вы оставляете обычную текстовую модель и включаете тумблер Image в меню Integrations. Ниже — условия доступности, выбор движка, поля подключения и диагностика.
Условия, при которых генерация доступна в чате
Генерация изображений в чате Open WebUI работает при выполнении нескольких условий одновременно. В документации проекта перечислены три обязательных пункта: глобальный тумблер Image Generation включён в Settings > Admin > Images; у вашей роли есть право Image Generation (администраторы проходят эту проверку всегда); у выбранной модели отмечена capability Image Generation в Workspace > Models > Edit. Вне Legacy-режима дополнительно должны оставаться включёнными capability Builtin Tools и категория встроенного инструмента Image Generation. По умолчанию все эти переключатели активны, поэтому чаще всего причина сбоя лежит в другом месте.
Четвёртое условие — тумблер Image в самом чате. Он находится в меню Integrations у поля ввода сообщения. Чтобы генерация была активна в каждом новом чате, отметьте Image Generation в разделе Default Features редактора модели. Порядок работы простой: включите Image в Integrations, введите промпт, нажмите Send, а дальше продолжайте общаться с текстовой моделью.
Если тумблер Image в меню Integrations отсутствует целиком, документация проекта называет три возможные причины: генерация выключена глобально, capability Image Generation снята у одной из выбранных моделей либо у роли нет соответствующего права. Адрес и ключ самого движка — отдельная история: при неверных значениях тумблер всё равно появится, а генерация упадёт уже в момент запуска. Поэтому отсутствие тумблера и неудачная генерация — два разных симптома с разными адресами проверки.
Отдельно проверьте режим вызова функций. Он задаётся в четырёх местах: в Chat Controls > Advanced Params для конкретного чата, в Settings > General > Advanced Parameters для себя, в редакторе модели и глобально в Model Defaults администратора. Побеждает первое значение, отличное от Default, а при отсутствии настроек применяется Native. Этот режим определяет, как именно модель обращается к движку изображений, и о нём подробнее ниже.
Таблица выбора движка изображений
Движок выбирается в поле Image Generation Engine в Settings > Admin > Images. Четыре варианта покрывают разные сценарии: облако OpenAI, локальный ComfyUI, локальный AUTOMATIC1111 и облако Google. Ниже сведены сценарий и обязательные поля для каждого.
| Движок | Когда подходит | Обязательные поля |
|---|---|---|
| Default (Open AI) | Облачная генерация через OpenAI, Azure OpenAI или LiteLLM-прокси | API Base URL, API Key, модель, размер изображения |
| ComfyUI | Локальные воркфлоу с полным контролем над узлами | Base URL, API Key (при необходимости), JSON-воркфлоу, маппинг Key и Node Ids |
| Automatic1111 | Уже развёрнутый AUTOMATIC1111 с включённым API | Base URL вида http://адрес:7860/ |
| Gemini | Imagen или Gemini-модели через Google AI Studio | Base URL, API Key, модель, Gemini Endpoint Method |
Для Default (Open AI) документация проекта описывает выбор между DALL·E 2, DALL·E 3 и моделями GPT-Image, причём доступные размеры зависят от модели. DALL·E 2 поддерживает 256×256, 512×512 и 1024×1024; DALL·E 3 — 1024×1024, 1792×1024 и 1024×1792; GPT-Image (gpt-image-2, gpt-image-1) — auto, 1024×1024, 1536×1024 и 1024×1536.
Для Automatic1111 документация проекта требует запустить сервер с флагами, включающими API-доступ, и указать в поле Base URL адрес http://<адрес>:7860/. Если Open WebUI и AUTOMATIC1111 работают на одном хосте в Docker, используется http://host.docker.internal:7860/.
Для Gemini документация проекта требует ключ Google AI Studio либо ключ Google Cloud с активированным Generative Language API. Поле Base URL заполняется значением https://generativelanguage.googleapis.com/v1beta, а метод эндпоинта обязан совпадать с типом модели. Страницы по отдельным движкам помечены как community contribution и не поддерживаются командой Open WebUI, поэтому воспринимайте их как рабочий пример настройки.
Подключение OpenAI-совместимого эндпоинта
Путь через Default (Open AI) закрывает OpenAI, Azure OpenAI и любой OpenAI-совместимый прокси, включая LiteLLM. Порядок для обычного OpenAI: получите API-ключ, откройте Settings > Admin > Images, установите Image Generation Engine в Default (Open AI), введите ключ и выберите модель. Размер изображения выбирайте из списка, который соответствует выбранной модели.
Для Azure OpenAI синтаксис совпадает с OpenAI, но меняются адрес и версия API. В поле API Base URL документация проекта указывает формат https://<instance-id>.cognitiveservices.azure.com/openai/deployments/<model>/, где instance и model берутся из настроек Azure AI Foundry. Версия API задаётся значением из тех же настроек. Для gpt-image-1.5 документация проекта приводит отдельный набор: модель gpt-image-1.5, размер 1024×1024, версия API 2025-04-01-preview и адрес https://<resource-name>.openai.azure.com/openai/deployments/<deployment-name>/ с завершающим слэшем. Если появляется ошибка про неизвестный параметр response_format, документация проекта советует проверить, что версия API не ниже 2025-04-01-preview.
Для LiteLLM-прокси документация проекта задаёт Base URL вида https://<litellm-url>:<port>/v1, ключ LiteLLM, пустую версию API и имя модели так, как оно записано в конфигурации LiteLLM. Сведения о подключении лежат в Settings > Admin > AI > Connections, в блоке OpenAI API.
Готовый промпт для проверки связки после настройки:
Сгенерируй изображение по описанию: [ваша сцена], стиль [ваш стиль], формат [соотношение сторон]. Если генерация недоступна, ответь одной строкой с названием ошибки.
Меняйте под себя сцену, стиль и соотношение сторон. Такой запрос проверяет и сам движок, и то, что модель умеет вызывать инструмент генерации.
Подключение ComfyUI: Base URL, API-воркфлоу и маппинг узлов
ComfyUI запускается с флагом —listen, привязывающим сервер к 0.0.0.0, после чего интерфейс доступен по адресу http://<ip>:8188. Если Open WebUI работает в Docker, контейнер должен видеть хост через host.docker.internal; при активном файрволе открывается порт 8188. Документация проекта приводит команду запуска контейнера с переменными COMFYUI_BASE_URL=http://host.docker.internal:8188/ и ENABLE_IMAGE_GENERATION=True.
В Settings > Admin > Images включите Image Generation, установите движок ComfyUI, выберите базовую модель, размер, число шагов и введите Base URL. Кнопка обновления рядом с полем проверяет соединение. Если у инстанса есть API-ключ, он вводится в соответствующее поле.
Воркфлоу экспортируется в API-формате. В интерфейсе ComfyUI откройте Settings, включите Dev Mode с описанием про API save, загрузите нужный воркфлоу и выберите Export (API) в подменю File. Полученный JSON загружается в Open WebUI в разделе ComfyUI Workflow.
Маппинг узлов состоит из двух полей на каждый параметр. Key — имя входного параметра в воркфлоу (например, text, ckpt_name, seed). Node Ids — идентификаторы узлов через запятую, которые содержат этот вход. Для генерации доступны шесть параметров: Prompt (ключ text, обязателен), Model (ckpt_name), Width (width), Height (height), Steps (steps), Seed (seed). Строго обязателен только узел промпта. Идентификатор узла находится кликом по узлу в ComfyUI, а ключ — в блоке inputs внутри JSON. Если значение нужно нескольким узлам, идентификаторы перечисляются через запятую, например seed с узлами 3, 15, 22. Некоторые воркфлоу требуют переименования ключа, например seed на noise_seed. Изображения возвращаются из узлов Save Image, Save Image (Advanced) и Preview Image.
Настройка Edit Image
Редактирование изображений включается отдельно и по умолчанию выключено. В Settings > Admin > Images в разделе Edit Image включите Image Edit и выберите движок редактирования. Для ComfyUI задайте модель, размер, Base URL и API Key при его наличии, затем загрузите отдельный воркфлоу для редактирования. Поля Base URL и API Key редактирования ComfyUI собственные: они не наследуются от настроек генерации, поэтому заполните их даже при использовании одного инстанса для обеих задач.
У редактирования через ComfyUI пять параметров с другими значениями по умолчанию: Image (ключ image, обязателен), Prompt (prompt, обязателен), Model (unet_name), Width (width), Height (height). Интеграция редактирования ComfyUI не поддерживает негативные промпты, шаги, seed и размер батча. Для Gemini документация проекта приводит минимальный набор: Image Edit включён, движок Gemini, модель вида gemini-3-pro-image, Base URL https://generativelanguage.googleapis.com/v1beta, ключ и метод generateContent.
Чтобы отредактировать картинку, загрузите её в чат и опишите изменение текстом, например «смени фон на закат» или «добавь шляпу». Модель вернёт новую версию изображения. Композитинг работает так же: загрузите несколько изображений и опишите желаемую композицию, а модель соберёт их в одну сцену.
Native и Legacy: разница режимов
Режим вызова функций определяет маршрут запроса. В Native модель сама вызывает инструмент генерации: вы отправляете учебный запрос Сгенерируй изображение кибернетического леса, и модель обращается к инструменту generate_image. Инструмент edit_image передаётся модели только тогда, когда в настройках администратора включён Image Edit. Результат зависит от модели: слабая модель может вообще не вызывать инструмент, поэтому перед проверкой конфигурации движка попробуйте более сильную модель. В Native модель рассуждает о промпте перед генерацией и может выдать несколько изображений в рамках одного сложного запроса.
В Legacy каждое сообщение при включённом тумблере уходит напрямую в движок изображений, что бы вы ни спросили. Если в недавней переписке есть изображения и включён Image Edit, режим переключается на редактирование. На пути создания отдельная модель-задача сначала переписывает ваше сообщение в промпт для изображения, если только администратор не выключил Image Prompt Generation. Этот переключатель живёт в разделе Create Image, а шаблон промпта настраивается в Settings > Admin > Interface в разделе Generation. Генерация промпта относится только к Legacy: в Native модель пишет промпт сама при вызове инструмента.
Кнопка Generate Image под сообщениями удалена начиная с версии 0.7.0. Вернуть её можно community-действием Generate Image Action: импортируйте его из каталога сообщества и включите в Admin Panel > Functions. Действие добавляет иконку в панель действий сообщения.
Отдельная частая ошибка — выбор image-модели в селекторе чата. Селектор вверху чата остаётся на вашей обычной текстовой модели, а image-модель задаётся один раз в настройках администратора и там не выбирается. Если выбрать image-модель как чат-модель, всё выглядит настроенным, но генерация падает или возвращает бесполезный результат: image-модель не ведёт беседу и не получает запрос в ожидаемом виде. Когда генерация перестала работать при верных настройках, документация проекта советует первым делом посмотреть на селектор модели.
Таблица диагностики
| Симптом | Где проверить | Что должно быть |
|---|---|---|
| Тумблер Image отсутствует в Integrations | Settings > Admin > Images; роль; Workspace > Models > Edit | Генерация включена глобально, у роли есть право Image Generation, у модели отмечена capability Image Generation |
| Генерация падает при видимом тумблере | Base URL и API Key движка; версия API для Azure | Адрес и ключ движка верны, версия API не ниже требуемой |
| Воркфлоу отклонён | JSON воркфлоу; маппинг Key и Node Ids | Имена моделей соответствуют типу узла, обязательные входы замаплены |
| Ответ приходит только текстом | Селектор модели в чате; режим вызова функций | В селекторе стоит текстовая модель, режим Native с рабочей моделью |
Разберём строки подробнее. Ошибка «Value not in list» по ckpt_name означает, что идентификатор узла указан верно, а передаваемое значение не подходит типу узла — например, VAE-модель уходит в загрузчик чекпойнтов. Ошибка «Missing input» означает, что воркфлоу требует вход, который Open WebUI не отправляет, потому что поле не замаплено: значение либо прописывается прямо в JSON, либо привязывается к нужному узлу. Для Gemini ошибка о ненайденной модели при методе predict лечится переключением метода на generateContent, поскольку пустое значение метода откатывается к predict. Для Azure ошибка про response_format указывает на версию API ниже 2025-04-01-preview.
Частые вопросы
Почему в чате нет тумблера Image?
Документация проекта называет три причины: генерация выключена глобально в Settings > Admin > Images, capability Image Generation снята у одной из выбранных моделей либо у роли нет права Image Generation. Администраторы проходят проверку права всегда. Начните с глобального тумблера, затем проверьте capability модели и права роли.
Можно ли выбрать модель изображений в селекторе чата?
Селектор вверху чата остаётся на обычной текстовой модели, а image-модель задаётся один раз в настройках администратора. Выбор image-модели как чат-модели документация проекта называет самой частой ошибкой настройки: генерация падает или возвращает бесполезный результат. Если генерация сломалась при верных настройках, проверьте селектор первым делом.
Чем Native отличается от Legacy?
В Native модель сама вызывает инструмент генерации, и вы пишете запрос обычной фразой. В Legacy каждое сообщение при включённом тумблере уходит напрямую в движок изображений, а отдельная модель-задача переписывает ваш текст в промпт. Режим задаётся в Chat Controls, личных настройках, редакторе модели или Model Defaults, а при отсутствии настроек применяется Native.
Какие поля заполнять для ComfyUI?
Нужны Base URL инстанса, API-ключ при его наличии, JSON-воркфлоу в API-формате и маппинг узлов. Для каждого параметра указывается Key с именем входа и Node Ids с идентификаторами узлов через запятую. Обязателен только узел промпта, остальные пять параметров можно оставить пустыми.
Почему Edit Image не работает при настроенной генерации?
Раздел Edit Image выключен по умолчанию. Включите Image Edit и задайте движок, модель, Base URL и API Key. Для ComfyUI заполните собственные поля подключения в разделе редактирования и загрузите отдельный воркфлоу: настройки подключения не наследуются от генерации. Для Gemini дополнительно проверьте, что метод эндпоинта соответствует модели.
