Как читать чужой workflow

<!-- lesson: read-workflow -->

Урок «read-workflow» в группе Основы ComfyUI списка уроков. Шагов: 11.

Чему вы научитесь

Вы научитесь читать группы, заметки, точки перенаправления, примитивы, Set и Get, ноды в обходе и субграфы и дадите двум полям одно значение.

Что понадобится

  • Урок продолжает Как устроен ComfyUI, Первая картинка из текста. Карточка говорит об этом; это подсказка, а не замок.
  • Ноды: Empty Latent Image, Int.
  • Приложение ничего не скачивает и не устанавливает. Тексты шагов ниже говорят, какие файлы, в какие папки и какой шаблон ComfyUI их называет.

Шаги

Слова каждого шага, как их показывает урок. Имена нод выделены.

  1. С чего начать (чтение)

    В workflow из шаблона или из интернета бывает полсотни нод. Читайте его в таком порядке:

    1. заметки;
    2. ноды вывода и назад по связям;
    3. загрузчики и их файлы;
    4. что выключено.

    Этот урок объясняет всё, что встретится по пути. Одну вещь он отрабатывает на графе «Первая картинка из текста».

  2. Заметки (чтение)

    Ноды Note и Markdown Note это текст на холсте. Они никогда не выполняются.

    Авторы шаблонов пишут там, какие файлы моделей нужны графу, в какую папку класть каждый и какие настройки поменять. Сначала прочитайте все заметки: большинство «не работает» кончается там.

  3. Группы (чтение)

    Группа это цветная рамка с заголовком вокруг нескольких нод: «Модели», «Промпт», «Увеличение». Она ничего не меняет в выполнении, только упорядочивает холст. Двигаете группу, двигаются её ноды.

    Прочитайте заголовки групп, чтобы увидеть части графа раньше нод.

  4. Точки перенаправления (чтение)

    Точка перенаправления (reroute) это точка на связи, которая только передаёт данные дальше, чтобы длинные связи обходили другие ноды. Нынешний интерфейс ComfyUI ставит такие точки прямо на связях; старые workflow используют ноды Reroute.

    Когда идёте по связи, проходите сквозь точки: настоящий источник дальше.

  5. Примитивы (чтение)

    Нода-примитив держит одно значение и отдаёт его в поля других нод: Int для целого числа, Float для дробного, Text и Text (Multiline) для текста, Boolean для «да или нет».

    В нынешнем интерфейсе у каждого поля своя точка входа, поэтому связь от примитива идёт прямо в поле. Это поле берёт значение из связи, а не набранное в нём.

    Шаблоны пользуются примитивами, чтобы одно значение было на виду в одном месте и его делили несколько нод.

  6. Нужен граф картинки

    На холсте должен быть граф «Первая картинка из текста» с нодой Empty Latent Image.

    Если его нет, сначала пройдите тот урок.

  7. Практика: одно значение на два поля

    Добавьте ноду Int. Подключите её выход INT ко входу width ноды Empty Latent Image и ещё раз к её входу height. Поставьте её value на 1024 (512 для модели SD 1.5).

    Теперь картинка квадратная, а её размер задан в одном месте. Поменяйте число, и оба поля последуют. Так шаблоны делят размер между заготовкой и нодами, которые должны ему соответствовать.

  8. Set и Get: связи, которых не видно (чтение)

    Некоторые паки передают данные без видимой связи, чтобы большие графы оставались опрятными.

    • ComfyUI-KJNodes: нода Set берёт значение под именем, и каждая нода Get с этим именем выдаёт его в другом месте.
    • cg-use-everywhere: нода Anything Everywhere отправляет свой вход во все подходящие неподключённые входы.
    • rgthree-comfy: ноды Context несут модель, текстовый энкодер, VAE и промпты одной связью.

    Когда вход выглядит пустым, а граф работает, ищите одну из этих нод. Они живут в интерфейсе: без пака невидимые связи пропадают.

  9. Ноды в обходе и выключенные (чтение)

    • Bypass (Ctrl+B в ComfyUI, нода становится фиолетовой): нода пропускается, а её входы идут прямо в выходы. LoRA-загрузчик в обходе оставляет модель как была.
    • Mute (Ctrl+M, нода становится серой): нода не выполняется, и то, что зависит только от неё, тоже.

    Так авторы выключают необязательные части: увеличение, правку лиц. Когда workflow делает не то, что обещает его название, сначала ищите фиолетовые и серые ноды.

  10. Субграфы (чтение)

Субграф это нода, внутри которой целый граф. Она показывает те входы, выходы и поля, которые решил показать её автор.

В ComfyUI дважды щёлкните по ней или нажмите её кнопку правки, чтобы войти внутрь; полоса наверху ведёт обратно. Официальные шаблоны часто кладут всю часть с моделью в один субграф, и на холсте видны только промпт, размер и результат. В этом приложении в контекстном меню ноды есть «Открыть субграф».

  1. Перед запуском (чтение)
  • Красной ноде или ноде, которую приложение отмечает как неизвестную, нужен пак: поставьте его через ComfyUI Manager.
  • Полю загрузчика с файлом, которого у вас нет, нужен этот файл в своей папке; где его взять, обычно пишут заметки.
  • «Проверить граф» в этом приложении находит недостающие ноды и модели, пустые входы и смешанные семейства моделей.

Сохраните через «Файл ▸ Сохранить workflow для ComfyUI…», откройте файл в ComfyUI и запустите там.

Что проверяет урок

Шаг для чтения сделан, когда вы нажимаете Понятно, дальше. Шаг с делом отмечается сам, когда на холсте есть:

  • Шаг 6, Нужен граф картинки:
    • нода Empty Latent Image.
  • Шаг 7, Практика: одно значение на два поля:
    • нода Int.
    • INT ноды Int во вход width ноды Empty Latent Image.
    • INT ноды Int во вход height ноды Empty Latent Image.
    • value ноды Int: от 512 до 1024; «Сделать за меня» ставит 1024.

См. также

Страница перенесена из wiki репозитория приложения (docs/wiki/lessons/Reading-A-Workflow.ru.md, ревизия b8e3f71). То же руководство встроено в приложение: «Справка ▸ Руководство».

Чтобы обновить её, выполните npm run import, а затем npm run build в папке сайта.