Sage Attention, TeaCache и WaveSpeed: Полный гид по ускорению ComfyUI для продвинутых пользователей
Опубликовано: 05 Май 2025 • Автор: petemaster_doom

Если вы работаете с ComfyUI и современными моделями (Flux, SDXL, HunyuanVideo, Wan 2.1 и др.), то наверняка сталкивались с вопросом: как ускорить генерацию, сэкономить VRAM и не потерять качество? В 2024–2025 годах на пике популярности сразу несколько технологий ― Sage Attention, TeaCache и WaveSpeed (Apply First Block Cache). Разберёмся, как они работают, чем отличаются, где уместны и как влияют на результат.
Sage Attention: ускорение внимания без компромиссов
Sage Attention ― это современный механизм ускорения dot-product attention в трансформерах. Его суть ― агрессивная квантизация матриц Query/Key (до 4/8 бит) и Value (до FP8/FP16), что уменьшает объём вычислений и снижает потребление VRAM.
Преимущества:
· Скорость: Ускоряет инференс и обучение в 2–3 раза по сравнению с Flash Attention 2.
· Экономия VRAM: Снижение потребления памяти до 30–40% на длинных последовательностях.
· Качество: Потери качества минимальны ― на большинстве моделей разница не превышает 1%, а визуально зачастую неотличима от оригинала.
· Совместимость: Работает с большинством современных моделей (Flux, Wan 2.1, HunyuanVideo, SDXL и др.), легко интегрируется через node Patch Sage Attention KJ (KJNodes) или глобально через аргумент запуска.
На что обратить внимание:
· Требования к GPU: Для FP8-режимов необходимы видеокарты RTX 40xx и новее.
· Совместимость: Для некоторых старых моделей или кастомных node может потребоваться ручная настройка.
· Установка: На Windows рекомендуется использовать кастомные сборки Triton (например, woct0rdho/triton-windows) и SageAttention 2.x из исходников.
TeaCache: кеширование блоков для максимальной скорости
TeaCache ― это динамическое кеширование выходов блоков UNet/трансформера. Если изменения между шагами малы (оценивается через порог rel_l1_thresh), блоки не пересчитываются, а используется сохранённый результат.
Преимущества:
· Скорость: Ускоряет генерацию до 2 раз, особенно на длинных сэмплах и видео.
· Экономия VRAM: За счёт пропуска вычислений снижается нагрузка на память.
· Гибкость: Порог rel_l1_thresh можно настраивать для баланса между скоростью и качеством.
Потери качества:
· Баланс: Чем выше порог, тем больше ускорение, но тем выше риск появления артефактов или деградации качества (особенно на сложных сценах или быстрых движениях в видео).
· Практика: Для Flux, Hunyuan, LTX и Wan 2.1 оптимальными считаются значения 0.1–0.25. При слишком низком пороге ускорение минимально, при слишком высоком ― заметны потери детализации.
Совместимость:
· Модели: Работает с большинством современных моделей, включая Flux, LTX, HunyuanVideo, SDXL.
· Особенности: TeaCache чуть лучше совместим с ControlNet и LoRA, чем WaveSpeed.
WaveSpeed (Apply First Block Cache): умное кеширование первого блока
WaveSpeed ― это универсальный набор оптимизаций для ComfyUI, включающий динамическое кеширование на уровне первого блока трансформера (Apply First Block Cache, FBCache).
Как работает:
· Сохраняет выход первого блока трансформера (residual output).
· Если разница между текущим и предыдущим выходом меньше residual_diff_threshold, пропускает вычисления всех последующих блоков и использует кэшированный результат.
· Позволяет настраивать порог и максимальное число подряд кешированных шагов.
Преимущества:
· Скорость: Ускорение генерации в 1.5–3 раза, особенно на длинных сэмплах.
· Экономия VRAM: Снижение нагрузки на память за счёт пропуска вычислений.
· Качество: При правильно подобранном пороге потери качества минимальны, визуально зачастую неотличимы от оригинала.
· Совместимость: Поддерживает Flux, LTXV, HunyuanVideo, SD3.5, SDXL и др. Не работает с FreeU Advanced node pack.
Потери качества:
· Регулируются порогом: Чем выше residual_diff_threshold, тем больше ускорение, но тем выше риск потери деталей и появления артефактов.
· Рекомендации: Для Flux рекомендуют threshold 0.12, для SDXL - 0.2, для Hunyuan - 0.1. Подбирать оптимум нужно экспериментально.
Особенности:
· Стабильность: В отличие от TeaCache, WaveSpeed реже вызывает конфликты с другими node и не требует ручной очистки кэша.
· Дополнительные опции: Включает torch.compile для ещё большего ускорения (требует современных GPU и Triton).
Сравнительная таблица
Технология |
Механизм |
Скорость |
Экономия VRAM |
Потери качества |
Совместимость |
Sage Attention |
Квантизация QKV |
2–3x |
до 40% |
<1% (визуально нет) |
Flux, Wan 2.1, Hunyuan, SDXL, др. |
TeaCache |
Кеш блоков UNet |
до 2x |
до 30% |
Зависит от порога, могут быть артефакты |
Flux, LTX, Hunyuan, SDXL, LoRA, ControlNet |
WaveSpeed (FBCache) |
Кеш первого блока |
1.5–3x |
до 40% |
Зависит от порога, минимальны при правильной настройке |
Flux, LTXV, Hunyuan, SDXL, SD3.5 |
Практические рекомендации
· Для максимальной скорости используйте Sage Attention в связке с WaveSpeed (Apply First Block Cache). Это даст наилучший прирост без заметной потери качества.
· Для экономии VRAM оба метода кеширования и Sage Attention эффективны, но Sage Attention даёт наименьшие потери качества.
· Если важна совместимость с ControlNet/LoRA - TeaCache чуть гибче, но требует аккуратной настройки и может конфликтовать с некоторыми node.
· Для стабильности и простоты - WaveSpeed предпочтительнее TeaCache, особенно на больших и сложных workflow.
· Тонкая настройка: Всегда экспериментируйте с порогами кеширования (rel_l1_thresh для TeaCache, residual_diff_threshold для WaveSpeed). Слишком агрессивные значения ускоряют генерацию, но могут привести к деградации результата.
Итоги
Sage Attention, TeaCache и WaveSpeed ― это три столпа ускорения современных ComfyUI workflow. Sage Attention оптимизирует сами вычисления внимания, не затрагивая логику генерации. TeaCache и WaveSpeed реализуют умное кеширование, позволяя пропускать повторяющиеся вычисления и экономить ресурсы. В умелых руках их грамотная комбинация позволяет ускорять генерацию в 2–3 раза, экономить VRAM и получать качественные результаты даже на ограниченных GPU.