ComfyUI SPEED теперь ускоряет и модели изображений, не только H3
ComfyUI-SPEED добавляет узлы KSampler: выборка с прогрессивным разрешением работает и на MOSS Image и Krea 2, с калибровкой под модель.
Тот же seed и промпт, 5-секундный клип 960x544 на Modal L40S. Слева: обычная выборка, 288 с. Справа: SPEED с допуском 0.05 и 4 стадиями, 182 с.
Что делает пакет
SPEED основан на работе Spectral Progressive Diffusion for Efficient Image and Video Generation Говарда Сяо, Брайана Чао, Лиора Ярива и Гордона Ветцштейна из Стэнфорда. Наблюдение, лежащее в основе: диффузионные модели строят изображение примерно от низких частот к высоким, поэтому на ранних шагах денойзинга преобладают полосы, которые модель ещё не разрешила. Выполнение этих шагов в полном разрешении тратит большую часть вычислений на шум.
Пакет применяет это в ComfyUI без переобучения. Прогон начинается на меньшей сетке, затем латентный тензор поднимается на большую сетку, когда детализация начинает иметь значение. stages задаёт лестницу: 2 стадии идут 0.5 → 1.0, 3 стадии 0.33 → 0.66 → 1.0, а 4 стадии 0.25 → 0.5 → 0.75 → 1.0. Tolerance (Delta), noise_amplitude и noise_decay_exponent определяют, на каком шаге происходит каждое переключение, и меньший допуск переключает позже: безопаснее, но медленнее.
MiniMax H3 держит аудиопоток в полном разрешении независимо от того, на какой стадии находится видеопоток.
Что изменилось с переименованием
Теперь репозиторий называется StanLukuvka/ComfyUI-SPEED вместо StanLukuvka/ComfyUI-MiniMax-H3-SPEED, а changelog собирает эти изменения под версией 2.0.0. Когда пакет был ещё только для H3, этот сайт рассказывал о его наборе семплеров V2.
- Шесть узлов в двух семействах.
SPEED KSampler,SPEED KSampler (Manual)иSPEED KSampler Sigma Harvestпринимаютmodel, условие иlatent_image, как собственный KSampler в ComfyUI, и сами собирают шум, гид, семплер и расписание сигм. Семейство расширенных узлов сохраняет подключение SamplerCustomAdvanced для MiniMax H3. - Flow-модели изображений. MOSS Image и Krea 2 работают через узлы KSampler. Пакет отклоняет не-flow модели, такие как чекпойнты EPS или v-prediction, с ошибкой, как в семплерах, так и в Harvest.
- Изображение в изображение.
denoiseработает как в KSampler: первая стадия стартует из закодированного изображения, уменьшенного до размера этой стадии, а Automatic пропускает грубые стадии, которые сокращённое расписание уже прошло. - Референсные латенты в моделях редактирования. Модели редактирования, принимающие
reference_latents, например Flux 3 Klein, раньше на грубой стадии видели только левый верхний угол референса. Теперь узлы KSampler масштабируют референсные латенты на каждой стадии и восстанавливают их для последней. - Никаких встроенных значений по умолчанию.
noise_amplitudeиnoise_decay_exponentтеперь начинаются с 0 и завершаются ошибкой, пока вы не выполните калибровку Harvest. Для базового H3 с Euler README приводит эталонные значения 35.4213 и 1.0126. - Переименованные узлы. Прежние ID
MiniMaxH3*остаются зарегистрированными как устаревшие подклассы, поэтому сохранённые рабочие процессы по-прежнему загружаются, а узлы можно менять по одному.
Именно в Sigma Harvest происходит калибровка под конкретную модель. Он один раз прогоняет ваш семплер и расписание в полном разрешении, без цепочки SPEED, измеряет, как мощность остатка падает с частотой, и подгоняет P(ω) = A·|ω|^-β. Затем Automatic вычисляет границы каждой стадии по этой подгонке, а Harvest сообщает r² и метку health (good при r² 0.7 и выше, fair при 0.4, затем weak, suspect и invalid), чтобы вы знали, стоит ли доверять подгонке.
Измеренные ускорения
Новые данные по H3 заменяют прежний 10-секундный клип на 5-секундный клип с латте-артом в 960x544, выполненный на Modal L40S с одной калибровкой Harvest (A 35.4213, β 1.0126). Обычная выборка заняла 288 с в сессиях с допуском 0.01 и 0.05 и 276 с в сессии с 0.005, и каждое ускорение измеряется относительно своей сессии.
| Допуск | 2 стадии | 3 стадии | 4 стадии |
|---|---|---|---|
| 0.005 | 238 с (1.16x) | 236 с (1.17x) | 227 с (1.22x) |
| 0.010 | 238 с (1.21x) | 226 с (1.27x) | 224 с (1.29x) |
| 0.050 | 206 с (1.40x) | 194 с (1.48x) | 182 с (1.58x) |
Та же пара рядом: слева обычная выборка, справа SPEED с допуском 0.05 и 4 стадиями.
Автор сообщает, что ни в одном из десяти клипов H3 нет цветовой вспышки, и что налив, латте-арт и надпись сохраняются в каждом прогоне. Это ниже, чем 2.41x, которые тот же репозиторий сообщал для своего предыдущего клипа H3 на RTX 5080, поэтому рассматривайте множитель как свойство клипа, GPU и калибровки, а не метода.
Изображения это гораздо более короткие прогоны, и цифры там меньше:
| Модель | Нативно | Automatic, 3 стадии, допуск 0.05 | Manual, 0.5x до половины шагов |
|---|---|---|---|
| MOSS Image, 1344x768, 20 шагов, CFG 5 | 22 с | 18 с (1.26x) | 14 с (1.54x) |
| Krea 2 raw, fp8, 1216x832, 52 шага, CFG 3.5 | 283 с | 215 с (1.31x) | 183 с (1.55x) |
MOSS Image в 1344x768, тот же seed и промпт. Слева: нативно, 22 с. Справа: SPEED с 3 стадиями, 18 с.
Krea 2 в 1216x832, 52 шага. Слева: нативно, 283 с. Справа: SPEED с 3 стадиями, 215 с. Автор отмечает, что строки Krea 2 это одиночные прогоны на карте с 8 ГБ, запускающей модель на 13 ГБ, поэтому они различаются на десятки секунд.
При допуске 0.005 вычисленная граница попадает внутрь первых нескольких шагов расписания изображения, что почти ничего не экономит, поэтому рабочие процессы для изображений используют 0.05.
Композиция против скорости
noise_policy определяет, откуда берётся дополнительная высокочастотная детализация при каждом переключении. coupled_full_grid повторно использует поле шума, которое использовал бы обычный прогон SamplerCustomAdvanced, поэтому тот же seed сохраняет ту же композицию, и на клипах H3 это экономило лишь 5-10 процентов. direct_coarse создаёт собственное заполнение: он меняет картинку при заданном seed и экономил 15-30 процентов на тех же клипах.
Рабочие процессы
В репозитории есть три примера графов: в каждом на одном наборе загрузчиков стоят узлы Harvest, Automatic и Manual, и активен только Automatic.
Граф H3 запускает расширенные узлы с Euler, simple-планированием на 20 шагов, 3 стадиями и допуском 0.005. Два графа для изображений запускают узлы KSampler с Euler: 20 шагов для MOSS Image и 52 шага для Krea 2, 3 стадии и допуск 0.05.
Ограничения
- Принимаются только flow-модели (CONST) изображений, как в семплерах, так и в Harvest.
noise_maskи денойзинг с маской не поддерживаются.- В расширенных узлах
latent_imageдолжен быть пустым на старте; изображение-в-видео идёт через keyframe-условие H3, которое пакет сам масштабирует и восстанавливает. - Каждая стадия это отдельный вызов семплера, поэтому многошаговые семплеры перезапускают свою историю при каждом изменении разрешения. Давайте каждой стадии минимум 2 шага.
- Некоторые семплеры по-прежнему ведут себя неправильно на H3:
dpm_fastиdpm_adaptiveникогда не завершают денойзинг, аuni_pcломается, когда стадия получает один шаг.
Доступность
- Пакет узлов: StanLukuvka/ComfyUI-SPEED
- Статья: Spectral Progressive Diffusion
- Рабочие процессы:
workflows/ - Доказательства и оригинальные клипы:
evidence/
На момент написания у репозитория было 110 звёзд. Анонс вышел в r/StableDiffusion; независимого воспроизведения цифр по моделям изображений на момент написания опубликовано не было.
Комментарии
Войдите через GitHub, чтобы участвовать в обсуждении.