Мой блог
Как перенести весь функционал AUTOMATIC1111 на ноды в Gradio Workflow
Архитектура Workflow1111: 73 ноды и 11 конвейеров
Интерфейс AUTOMATIC1111 (stable-diffusion-webui) долгое время оставался главным стандартом для локальной генерации изображений. Однако развитие нодовых систем показало, насколько удобнее собирать гибридные конвейеры на едином граф-холсте. В этом материале я подробно разберу проект Workflow1111 — масштабную схему из 73 узлов и 11 независимых пайплайнов, созданную с помощью Gradio Workflow.
Эта сборка объединяет современные модели для генерации по тексту (text-to-image), масштабирования (hi-resolution fix), редактирования (image-to-image), создания матриц промптов, распознавания сцен мультимодальными моделями (VLM interrogate), сегментации объектов под инпейнтинг, аннотаторов ControlNet, удаления фона, работы с метаданными PNG и создания видео из изображений.
Каждый из этих цепочек можно запустить прямо в браузере, авторизовавшись через аккаунт Hugging Face или указав свой access token, благодаря чему вызовы моделей расходуют ваши персональные лимиты.
Что находится на холсте
Вся архитектура интерактивного холста базируется на четырех базовых типах операторов Gradio Workflow. Каждый нод на схеме является оберткой над оператором, а его входы и выходы превращаются в порты для соединения связей:
- fn — изолированная Python-функция, выполняющаяся локально;
- model — прямой вызов сторонней нейросети через сервис Inference Providers;
- space — интеграция внешнего веб-приложения Gradio Space с Hugging Face Hub;
- dataset — выборка данных или строка из датасета на Hub.
Давайте шаг за шагом изучим, как реализован каждый из одиннадцати пайплайнов.
Генерация по тексту (Text-to-image)
Это базовый конвейер, содержащий привычные настройки интерфейса A1111: негативный промпт, количество шагов, коэффициент CFG, сид, ширину и высоту кадра, а также поле model_id для выбора чекпоинта. Направленный текстовый запрос сначала проходит через ноду-функцию prompt-builder (fn), которая очищает синтаксис и добавляет выбранный стилистический пресет, после чего поступает в ноду model. На выходе пост-процессинговая fn-нода вшивает все технические параметры генерации прямо в метаданные PNG-файла.
Увеличение разрешения (Hi-resolution fix)
В классическом AUTOMATIC1111 процедура Hi-Res Fix выполняет апскейл сгенерированного изображения, а затем проводит второй проход сэмплирования для устранения артефактов. Здесь же этот процесс организован в виде обходной цепочки из двух узлов. Результат текстовой генерации передается в модель FLUX.1-Kontext (нода типа model) с инструкцией «улучшить мелкие детали и микротекстуру, сохранив исходную композицию». На выходе получается детализированное изображение повышенного разрешения.
Редактирование изображений (Image-to-image)
Нода FLUX.1-Kontext одновременно служит и полноценным аналогом вкладки Image-to-Image. Достаточно загрузить сторонний кадр, ввести текстовое описание желаемых изменений — и система выдаст отредактированный вариант.
Генерация промптов с помощью LLM
Если у вас есть лишь краткая идея — например, «маяк во время шторма», — этот пайплайн помогает развернуть ее в профессиональный запрос. Текст передается в ноду модели Qwen3-4B, после чего небольшая fn-нода форматирует ответ в список из максимум 40 тегов (например: бушующее море, мокрые скалы, драматичная композиция, нижний ракурс, объемный свет). Выход этой ноды можно направить в любой диффузионный блок. В отличие от ComfyUI, здесь не требуются кастомные плагины: языковая модель и диффузионная сеть сосуществуют на холсте как равные операторы.
Чтение изображений и обратный инжиниринг промпта
Этот блок заменяет стандартную кнопку Interrogate. Вместо устаревшей CLIP здесь используется визуально-языковая модель Qwen2.5-VL, которая анализирует загруженный кадр и составляет детальный текстовый промпт. Параллельно классификатор ViT считывает ту же картинку и выдает вероятностные метки объектов. Поскольку обе ноды принимают на вход одно и то же изображение, Gradio Workflow исполняет их параллельно, выдавая суммарный результат за время одного запроса.
Автоматическое выделение и маскирование для Inpaint
В AUTOMATIC1111 маску для доработки приходится рисовать вручную Кистью. В Workflow1111 маска генерируется автоматически на базе нейросети-детектора. Детектор DETR распознает объекты на снимке (например, людей, машины, животных), после чего поток разветвляется: одна ветка отрисовывает рамки на исходном кадре, а вторая создает черно-белую бинарную маску под инпейнтинг. Отрисовка рамок и сборка маски выполняются локально с помощью библиотеки Pillow и NumPy — во внешнюю сеть отправляется только легкий запрос к детектору.

Матрица промптов (Prompt matrix)
Пайплайн воссоздает функцию генерации сетки вариантов. Базовый запрос объединяется с четырьмя суффиксами (например: на рассвете, во время грозы, под Млечным Путем, в осеннем тумане). В Gradio Workflow нет циклов, поэтому четыре ноды text-to-image расположены на схеме параллельно. Имея одинаковую глубину зависимостей, они запускаются одновременно. Финальная fn-нода склеивает четыре полученных кадра в единый коллаж.
Апскейлинг и удаление фона
Этот раздел заменяет вкладку Extras. Для увеличения разрешения доступны два независимых пути. Первый — локальный алгоритм Lanczos внутри fn-ноды, который не требует сети и работает со скоростью рендеринга библиотеки Pillow. Второй — нейросетевой апскейлер AuraSR ×4, реализованный как space-нода (он обращается к отдельному приложения на Hugging Face). Удаление фона работает аналогичным образом через подключение приложения BRIA RMBG-2.0.

Препроцессоры и аннотаторы ControlNet
Фильтры Canny, Line art, Sketch, Luma-depth и Posterize, которые обычно ставятся вместе с расширением ControlNet, здесь собраны в виде обычных fn-нод на чистом Python и NumPy. Они работают без привлекаемых нейросетевых моделей и обрабатывают кадр архитектуры за полсекунды на обычном процессорном ядре (CPU).
Из 36 операционных узлов приложения 32 являются нодами типа fn, а 22 из них работают полностью локально. Это означает, что почти две трети всей схемы продолжит функционировать даже при отключении от интернета.
Чтение метаданных (PNG Info)
Интерфейс AUTOMATIC1111 сохраняет параметры сэмплирования в текстовый чаกк параметров PNG, а вкладка PNG Info позволяет их прочитать. В Workflow1111 пост-процессинговый узел записывает эти данные при генерации, а отдельный пайплайн считывает их обратно, восстанавливая промпт, негативный промпт, шаги, CFG, сид, разрешение и имя модели.
Анимация и генерация видео (Image-to-video)
Изображение, считанное блоком PNG Info, передается на вход видеомодели Wan 2.2 I2V A14B, которая приводит его в движение. Дополнительные блоки загрузки не требуются: единый исходный узел может питать сразу несколько дочерних конвейеров.
Запуск моделей на собственном GPU
По умолчанию вызовы моделей в описанной схеме направляются на внешнее оборудование через Inference Providers или подключенные Spaces. Именно поэтому запускать Workflow1111 можно даже на ноутбуке без дискретной видеокарты.
Однако, поскольку нода типа fn — это обычный код на Python, ничто не мешает загрузить модель в локальную видеопамять и запустить ее на собственном GPU. Для этого используется декоратор `@spaces.GPU`, который динамически выделяет графическую карту на время выполнения функции и освобождает ее сразу после завершения генерации.
Если вы запускаете графы локально на своем ПК через метод `.launch()`, вы можете передать в параметры `bind=` любую функцию с локальным чекпоинтом, и холст будет напрямую задействовать мощность вашей видеокарты.
Превращение каждого выхода в REST API и MCP-инструмент
Каждая выходная нода на граф-холсте автоматический становится изолированным REST-эндпоинтом. В случае с Workflow1111 генерируется девять готовых API-маршрутов, включая /image, /edited_image, /generated_prompt, /detected_objects, /upscaled_local и /png_info.
Кроме того, эти же эндпоинты поддерживают протокол MCP (Model Context Protocol). При запуске с параметром `mcp_server=True` все выходы превращаются в инструменты для ИИ-ассистентов. Подключив клиент Cursor или Claude Code к URL-адресу сервера, нейросетевой агент сможет генерировать изображения, анализировать промпты и детектировать объекты без написания связующего кода.
Сравнение Gradio Workflow и ComfyUI
Хотя функциональный набор Workflow1111 взят из AUTOMATIC1111, с точки зрения архитектуры его пряморелизуемым конкурентом является ComfyUI. Оценивая оба решения, я отмечу ключевые преимущества подхода Gradio Workflow:
- Облачное исполнение без GPU: узлы могут быть внешними сервисами, что позволяет запускать сложнейшие цепочки без мощного локального железа.
- Автоматические API из коробки: любой собранный граф сразу превращается в строгие REST-эндпоинты и MCP-инструменты.
- Доступ через браузер с авторизацией: включив OAuth, вы можете расшарить ссылку на приложение, и пользователи смогут заходить под своими учетными записями Hugging Face.
- Мультимодальность: легкое объединение LLM, VLM, диффузионных сетей и видеогенераторов в единый поток.
- Простота кастомизации: любой кастомный узел — это простая функция на Python.
Сборка собственного графа
Создание собственного нодового конвейера в Gradio Workflow начинается с минимального кода на Python. Функция `bind=` превращает ваши Python-функции в узлы, параметр `edges=` задает связи между ними, а метод `.launch()` открывает интерактивный холст в браузере. Вы можете клонировать готовое пространство Workflow1111, удалять ненужные блоки, менять модели и перенастраивать связи под свои задачи.
Источник: huggingface.co
