ComfyUI

comfyui — граф узлов для работы с генеративными моделями

Раздел
Инструменты
Обновлено
22.10.26

В ComfyUI процесс генерации собирают из соединённых узлов: один загружает модель, другой обрабатывает промпт, третий сохраняет результат. Так можно строить и повторять схемы для изображений, видео и звука.

Коротко

Коротко. ComfyUI — редактор визуальных пайплайнов для генеративных моделей. Узлы отвечают за загрузку модели, подготовку условий, сэмплирование, декодирование и сохранение результата. Граф можно повторять, менять по частям и передавать как JSON-файл. ComfyUI распространяется с открытым исходным кодом и работает на основных настольных платформах.

Что это такое

Представьте процесс из нескольких этапов: загрузить модель, добавить LoRA, задать позу, сгенерировать изображение и увеличить его. В ComfyUI каждый этап виден как отдельный блок, а соединения показывают передачу данных.

Это удобно, когда хочется менять часть процесса, не собирая всё заново. Например, оставить генерацию прежней и попробовать другой способ увеличения. Для простой задачи можно начать с готовой схемы, не добавляя узлы по одному.

Позже вокруг проекта появилась организация Comfy Org и отдельное desktop-приложение. Условия кода, отдельных нод и моделей проверяются раздельно: одна лицензия интерфейса не распространяется автоматически на весь workflow.

Как это работает

ComfyUI — это Python-приложение с веб-интерфейсом. Запускается командой python main.py или через десктоп-приложение. После старта редактор доступен в приложении или браузере:

  1. Холст (canvas) — белая или тёмная сетка с узлами.
  2. Узлы (nodes) — квадратные блоки с входами слева и выходами справа.
  3. Связи (links) — линии между выходом одного узла и входом другого.

Один из базовых графов для SD 1.5 содержит семь узлов: загрузчик чекпоинта, два узла кодирования текста, создание латента, KSampler, VAE Decode и Save Image. Два текстовых узла используют один энкодер из чекпоинта: один обрабатывает положительный промпт, другой — отрицательный. Основная цепочка выглядит так:

Модель + два текстовых условия + начальный латент
                         ↓
                      KSampler
                         ↓
               VAE Decode ← VAE
                         ↓
                     Save Image

Каждый узел принимает данные, обрабатывает их и передаёт дальше. В этом графе KSampler получает четыре соединённых входа: модель, два закодированных текстовых условия и начальный латент. Загрузчик чекпоинта отдельно даёт модель, текстовый энкодер и VAE; числовые параметры сэмплера настраиваются в ноде. KSampler возвращает латент после удаления шума, а VAE превращает его в картинку.

Схему можно сохранить в JSON, а подходящие узлы сохранения записывают её и в метаданные изображения. Если метаданные сохранились, получатель может открыть граф из картинки. После пересылки через сервис, который удаляет метаданные, это не сработает.

Расширениями управляет встроенный ComfyUI Manager. В Desktop он уже включён; в portable- и manual-установках могут потребоваться зависимости Manager и штатный флаг включения. Manager работает с Registry, показывает источник пакета, помогает найти недостающие ноды и управляет установкой, обновлением или отключением расширений.

Пример на практике

Допустим, художнику нужна серия кадров с одним персонажем: поза похожа, а эмоции и окружение различаются. Он использует LoRA персонажа и совместимый ControlNet для позы.

  1. Открывает проверенный пример для выбранной модели.
  2. Подключает LoRA и изображение позы.
  3. Создаёт пробный кадр и проверяет внешность, позу и заметные артефакты.
  4. Меняет описание эмоции и фона, сохраняя остальную схему.
  5. Ставит варианты в очередь и просматривает готовую серию.

Очередь — функция выполнения заданий, а не обязательная отдельная нода. Время генерации зависит от оборудования и схемы; LoRA и ControlNet не гарантируют, что внешность персонажа совпадёт в каждом кадре. Способы проверки лица, одежды и ракурсов собраны в разборе одного персонажа в разных кадрах.

Сохранённый JSON помогает вернуться к работе. Но вместе с ним нужны совместимые версии моделей и расширений: один граф не содержит их код и веса.

С чем часто путают

  • ComfyUI и Stable Diffusion — ComfyUI это интерфейс, Stable Diffusion это модель. Для генерации нужны и веса, и код выполнения. Модель можно запускать в других совместимых программах; ComfyUI не единственный способ её использовать.
  • ComfyUI и Automatic1111 — оба позволяют работать с генеративными моделями, но по-разному показывают процесс и поддерживают разные наборы архитектур. A1111 — форма с полями, ComfyUI — граф узлов. Что окажется удобнее, зависит от задачи, готовых примеров и привычек пользователя.
  • ComfyUI и Forge — Forge сохраняет интерфейс с формами и вкладками, а ComfyUI строит процесс как граф. Скорость и расход памяти зависят от модели, backend, расширений и конкретного workflow.
  • ComfyUI и Custom Nodes — Custom Nodes — внешние пакеты дополнительных узлов. Встроенный Manager помогает ими управлять, но сами пакеты не становятся частью ядра ComfyUI.

Частые ошибки и заблуждения

  • «ComfyUI сложнее A1111, поэтому хуже». У этих интерфейсов разная логика. Форма удобна для короткого сценария, а граф — для процесса, который нужно видеть целиком, повторять и менять по частям.
  • «ComfyUI всегда быстрее A1111». Универсальной разницы нет: результат зависит от модели, точности, оптимизаций, custom nodes и того, какие этапы сравниваются.
  • «Workflow можно открыть в A1111». Напрямую обычный интерфейс A1111 не исполняет граф ComfyUI. Некоторые этапы можно воспроизвести вручную, но совместимость параметров и результата требует проверки.
  • «Пакет в Manager автоматически безопасен». Нет. Custom Nodes выполняют Python-код на компьютере. Registry и Manager упрощают проверку происхождения и управление пакетами, но не заменяют оценку источника и разрешений.
  • «ComfyUI только для картинок». Нет. Через подходящие ноды в граф можно подключать видео, аудио, текстовые модели и внешние сервисы. Поддержка зависит от конкретного пакета и его зависимостей. Примеры видеозадач и их ограничений разобраны отдельно для LTX и MiniMax H3.

Связанные термины

  • Automatic1111 — интерфейс с формой и вкладками.
  • ComfyUI с нуля — практический гид по первому workflow, KSampler, VAE и custom nodes.
  • Forge — родственный Automatic1111 проект с собственной вычислительной частью.
  • Stable Diffusion / SDXL / FLUX — модели, для которых ComfyUI чаще всего используется.
  • KSampler — главный узел сэмплирования в ComfyUI.
  • ControlNet / LoRA / IP-Adapter — модули, которые ComfyUI поддерживает через отдельные узлы.
  • ComfyUI Manager — встроенный менеджер пакетов для установки Custom Nodes.

Частые вопросы

Сколько занимает обучение ComfyUI с нуля? Начать можно с готового базового графа и одного изменения в нём. На сложные ветвления, ControlNet, LoRA и диагностику чужих workflow требуется больше времени; темп зависит от знакомства с генеративными моделями и нодовыми редакторами.

Какие требования к железу? Требования задаёт прежде всего модель и точность весов, а не интерфейс. Перед загрузкой полезно сверить размер checkpoint, поддерживаемые форматы, доступную оперативную и видеопамять, а также поддержку выгрузки весов в RAM или квантизации для выбранного workflow.

Можно ли пользоваться без программирования? Да. ComfyUI — это редактор, не IDE. Узлы и соединения настраиваются мышкой. Для базовой работы код писать не нужно. Он может понадобиться для собственных узлов, автоматизации или диагностики сложной ошибки.

Где брать готовые workflow? Например, в официальных шаблонах ComfyUI, документации моделей и репозиториях авторов пакетов. Перед запуском чужого JSON полезно проверить происхождение custom nodes и используемых моделей.

ComfyUI Desktop или обычный? Desktop объединяет установку и запуск в приложении и включает Manager. Portable или ручная установка дают другой способ управления окружением. Выбор зависит от поддержки оборудования и того, насколько важно самостоятельно фиксировать зависимости.

Главное

В ComfyUI можно увидеть весь путь от исходных данных до результата и заменить один этап, не переделывая остальные. Для начала достаточно готовой схемы и небольшого изменения в ней. Когда процесс подходит, его сохраняют вместе со сведениями о моделях и расширениях — так к работе проще вернуться самому или передать её коллеге.