Ускоряем Stable Diffusion XL
Далее мы разберём не только способы ускорения, но и улучшения генераций.
Основные методы ускорения включают в себя использование специальных моделей, Lora и семплеров в совокупности с настройками. Однако мы ускоримся с минимальными усилиями, всё что нам понадобится - это скачать Lora: SPO-SDXL_4k-p_10ep_LoRA_webui.
Подробные тесты, использование Turbo, lighting и обычных XL модели, а также использование различных Lora для ускорения можно посмотреть вот тут - Stalogen.ru, здесь же я выложу только основные настройки. Ключевым моментом является упор не только на скорости, но и на улучшении качества генерации. Методика применима ко всем оболочкам Stable Diffusion включая автоматик и ComfyUI - на котором можно достичь максимальное ускорение.
Главным элементом будет являться совокупность из настроек для модели и применение - SPO Lora. Настройки будут немного отличаться в зависимости от используемой модели, если нужно максимальное ускорение и акцент на ART - пользуемся Lighting моделью, для фотогенераций берём обычную модель. Настройки будут варьироваться в указанных диапазонах, начните со средних значений и регулируйте исходя из примечаний.
XL - Lighting
1) Lightning Модель - важнейшим элементом для ускорения конечно же является модель, например juggernautXL_v9Rdphoto2Lightning. Использование данной модели обусловлено её универсальностью, модель отлично понимает стили Artist, токены камеры или тела, может генерировать как в реалистичном стиле, так и мультяшном, отлично подойдёт для карикатур или зомби ужасов. Однако lighting модели всё же уступают в реалистичности обычным моделям, зато выигрывают в скорости.
2) Использование SPO Lora - лора вытягивает из картинки максимум насыщенности и детализации. Т.к. мы будем использовать "ускоренные" параметры, нам важно получить больше параметров за шаг, в этом нам поможет Lora для пошаговой оптимизации spo_sdxl_10ep_4k-data_lora_webui. Вес =1 - 2, при этом чем выше вес Lora - тем больше изображение превращается в эпический арт, чем меньше - тем более реалистичной становится генерация.
3) Sampling method = DPM++ SDE- это важный параметр подтверждённый тестами. Нам нужно "свести" изображение к конечному результату за указанное количество шагов, этот семплер лучше всего с этим справляется.
4) Sampling steps = 4- это немного меньше рекомендуемого (5 шагов)для Lighting модели, но судя по тестам даёт более реалистичные, детализированные изображения и заодно ускоряет генерацию при условии выполнения всех пунктов по настройке.
5) CFG Scale = 1 - 2- большее значение рекомендуется для артов и для большей послушности подсказке, меньшее значение делает изображения более реалистичными.
6) Включаем расширение Kohya Hires.fix (ставится через расширения по поиску sd-webui-kohya-hiresfix) если разрешение превышает рекомендуемое и при этом проявляется эффект задвоения лиц. Аналогичная нода так же есть для ComfyUI. Применение данного расширения заметно ускоряет генерацию по сравнению с обычными методами Upscaler при увеличении разрешения в пару раз от рекомендуемого.
7) При использовании ComfyUI подключаем ноду wavespeed (далее будет упоминаться как волна). Так же имеются аналоги в виде "чая" и "тритона" - но в данном материале мы их рассматривать не будем, ибо это отдельная тема. Сейчас держим в уме саму перспективу ещё немного ускориться.
XL - обычная модель
Опишу только изменения по сравнению с lighting, что бы не повторяться:
- XL обычная больше подходит для фотореализма, но в ущерб скорости, для примера можно использовать обычную модель juggernautXL_v9Rdphoto2, с ней тоже можно ускориться - но поменьше.
- Sampling steps = 8-10 (при 20+ рекомендуемых) - чем меньше шагов, тем больше делаем вес Lora.
- CFG=2-4.
Дополнительные плюсы при таком подходе
Применение SPO Lora позволяет в буквальном смысле вытягивать качественную картинку, поэтому значительно понижаются требования к Prompt инженерингу. При применении этой волшебной Lora - можно получать потрясные результаты на коротких и даже абстрактных подсказках, вплоть до того, что в подсказке теперь можно писать белиберду и получать шикарные генерации!! Конечно же, чем более внятными будут подсказки - тем более контролируемый будет результат.
Скорость напрямую зависит от количества шагов, благодаря вышеописанным настройкам можно не только ускориться, но и повысить качество. Пример с тестами зависимостей параметров на разных моделях и с использованием альтернативных методов ускорения - Stalogen.ru.
Итого от 20 до 25 секунд на GTX 3060 и это на разрешении 2048 на 1024 в Automatic1111! Вот примеры на автомитике1111:
А на ComfyUI от 9 до 15 секунд на той же видеокарте и разрешении. Вот примеры на той же подсказке:
Больше примеров тут - Stalogen.ru.