Как устроен ComfyUI
Урок «comfy-basics» в группе Основы ComfyUI списка уроков. Шагов: 10.
Чему вы научитесь
Вы узнаете, что такое граф, очередь и папка models, и сами найдёте ноду, вывод и файл модели.
Что понадобится
- Ноды: Load Image, Preview Image, Load Checkpoint.
- Приложение ничего не скачивает и не устанавливает. Тексты шагов ниже говорят, какие файлы, в какие папки и какой шаблон ComfyUI их называет.
Шаги
Слова каждого шага, как их показывает урок. Имена нод выделены.
Две программы (чтение)
ComfyUI это программа, которая запускает модели ИИ: рисует картинки, делает видео и звук на вашей видеокарте. Это приложение место, где вы собираете и читаете для неё графы.
Приложение никогда ничего не запускает. Оно читает, какие ноды и модели есть в вашем ComfyUI, помогает собрать граф, объясняет его и сохраняет файлом. Запускаете файл вы, в ComfyUI. Поэтому приложение не может сломать или замедлить ваш ComfyUI, и вы всегда видите, что будет выполнено.
Этот урок в основном для чтения, с тремя короткими практиками на холсте.
Граф из нод (чтение)
В ComfyUI всё это граф: ноды, соединённые связями.
- Нода делает одно дело: грузит модель, кодирует промпт, убирает шум, сохраняет картинку.
- Её выходы справа, входы слева. Связь идёт от выхода ко входу и несёт результат дальше.
- Цвет связи показывает, что она несёт: модель, промпт, картинку. Выход подключается только ко входу того же типа.
- Поля на ноде это её настройки: число, текст, файл.
Граф читается слева направо: загрузчики слева, результат справа. Сохранённый граф называют workflow, это файл .json.
Практика: найдите ноду
Найдите ноду Load Image и добавьте её на холст. Способов два: наберите имя в поиске библиотеки слева и дважды щёлкните по ноде или нажмите кнопку «Нода» на панели холста.
Поиск понимает части имён и русские слова: «load image», «картинка».
Её поле
imageвыбирает картинку из папки input у ComfyUI. Здесь подойдёт любая.Практика: вывод
Добавьте ноду Preview Image и протяните связь от выхода
IMAGEноды Load Image ко входуimages.Это самый маленький граф, который выполняется: он загружает картинку и показывает её. Preview Image это нода вывода: она показывает результат. Без нод вывода ComfyUI нечего выполнять, и он не примет граф.
Очередь: что выполняется и в каком порядке (чтение)
В ComfyUI кнопка Run (Ctrl+Enter; в старых версиях Queue Prompt) ставит граф в очередь. ComfyUI проходит очередь граф за графом.
- Выполняется только то, что ведёт к ноде вывода: Save Image, Preview Image, Save Video. Нода, чей результат никуда не идёт, пропускается.
- Порядок задают связи, а не место на холсте: нода выполняется, когда готово всё, что ей нужно.
- ComfyUI помнит результаты. Запустите тот же граф снова, и заново посчитается только то, что вы изменили; если ничего не менялось, запуск закончится сразу.
Где появляются результаты (чтение)
- Save Image и Save Video пишут файлы в папку output у ComfyUI (ComfyUI/output).
- Preview Image только показывает картинку на ноде и держит её во временной папке.
- Панель очереди в ComfyUI показывает каждый запуск с его картинками.
- То, что вы загружаете, берётся из папки input.
ComfyUI записывает весь workflow в каждую сохранённую картинку. Бросьте такую картинку на ComfyUI или откройте её в этом приложении, и получите граф, который её сделал.
Папка models (чтение)
Файлы моделей лежат в ComfyUI/models, по вложенной папке на вид:
- checkpoints: целые модели вроде SD 1.5 и SDXL;
- diffusion_models: только часть, которая рисует, у Flux, Wan, Qwen-Image и большинства новых семейств;
- text_encoders: часть, которая читает промпт;
- vae: часть, которая превращает результат в пиксели;
- loras: небольшие добавки для стиля или персонажа;
- controlnet, upscale_models, clip_vision и другие.
Каждая нода-загрузчик показывает только свою папку. Файл в чужой папке не ошибка: его просто нет в списке. Библиотека слева показывает файлы по папкам.
Практика: найдите файл модели
Добавьте ноду Load Checkpoint и откройте её поле
ckpt_name. В списке файлы папки checkpoints вашего ComfyUI. Выберите любой.Если список пуст, в вашем ComfyUI пока нет чекпойнта. Приложение ничего не скачивает: возьмите модель с её официальной страницы, положите файл в ComfyUI/models/checkpoints, обновите ComfyUI и выберите здесь «Синхронизация ▸ Синхронизировать сейчас».
Паки нод (чтение)
Пак нод (custom nodes) добавляет ноды, которых нет в ComfyUI: другие модели, инструменты, удобства. Это папка в ComfyUI/custom_nodes.
Паки ставят через ComfyUI Manager, он встроен в нынешний ComfyUI: откройте менеджер, найдите пак по имени, нажмите Install, перезапустите ComfyUI. Когда workflow просит ноды, которых у вас нет, менеджер сам предлагает поставить недостающие паки. Потом выберите здесь «Синхронизация ▸ Синхронизировать сейчас».
Пак запускает код своего автора на вашем компьютере. Ставьте паки, которыми пользуются многие. Старые форматы моделей (.ckpt, .pt, .pth, .bin) тоже могут выполнить код: предпочитайте .safetensors.
Отсюда в ComfyUI (чтение)
Сохраните граф через «Файл ▸ Сохранить workflow для ComfyUI…», откройте файл в ComfyUI и запустите там. Само приложение ничего в ComfyUI не запускает.
В ComfyUI перетащите сохранённый файл на холст или откройте через меню Workflow и нажмите Run. Результат появится на ноде вывода, а у нод сохранения ещё и в папке output.
Если ComfyUI покажет красную ошибку, она называет ноду, которая упала. Обычные сообщения (не хватило памяти, нет файла, нет ноды) объяснены в знаниях приложения.
Дальше: «Первая картинка из текста» собирает настоящий граф.
Что проверяет урок
Шаг для чтения сделан, когда вы нажимаете Понятно, дальше. Шаг с делом отмечается сам, когда на холсте есть:
- Шаг 3, Практика: найдите ноду:
- нода Load Image.
imageноды Load Image: значение выбрано.
- Шаг 4, Практика: вывод:
- нода Preview Image.
IMAGEноды Load Image во входimagesноды Preview Image.
- Шаг 8, Практика: найдите файл модели:
- нода Load Checkpoint.
ckpt_nameноды Load Checkpoint: значение выбрано.
Что дальше
Этот урок продолжают: Как читать чужой workflow.