Stable Diffusion — программное обеспечение, создающее изображения по текстовым описаниям, с открытым исходным кодом. И так как это программное обеспечение требует довольно мощные компьютерные комплектующие, работает оно не самым быстрым способом.
И сегодня мы рассмотрим плагин, который ускоряет генерацию изоборажений почти в 2 раза. Имя этому плагину TensorRT.
После того как вы удали данную папку, необходимо заново запустить файл webui-user.bat который сам установит все необходимые для начала зависимости. Вот так выглядит данный файл:
Когда все установится, Stable Diffusion запустится на локальном адресе, мы сможем перейти к следующему шагу. Так выглядит докозательства что все установилось правильно:
Далее нам нужно обновить pip до последней версии. Это легко можно сделать вставив следующую команду в консоль python.exe:
-m pip install --upgrade pip
Теперь установим модули нужные нам для работы. А именно TensorRT:
python -m pip install nvidia-cudnn-cu11==8.9.4.25 --no-cache-dir
python -m pip install --pre --extra-index-url https://pypi.nvidia.com/ tensorrt==9.0.1.post11.dev4 --no-cache-dir
После этого можно удалить первый установленный модуль с помощью данной комманды:
python -m pip uninstall -y nvidia-cudnn-cu11
Выходим с виртуального окружения и запускаем Stable Diffusion.
venv\Scripts\deactivate.bat
webui-user.bat
Выбираем установку по URL - ссылке:
Нажимаем "Install" и ждем конца установки. В консоли мы видим, что плагин устанавливает дополнительные модули:
Как только все установиться, переходим во вкладку "Settings" и в поиске пишем "Quicksettings list", затем в списке выбираем sd_unet. После проделанных действий применяем настройки - Apply settings и Reload UI:
После всего в интерфейсе появится вкладка TensorRT и сверху sd_unet. Перейдем во вкладку TensorRT и создадим профиль для будущей модели. Для каждой модели в которой вы захотите ускроить генерацию необходимо будет создать профиль, который занимает примерно 1.6 гигабайт места на диске.
Жмем "Export Default Engine" и ждем. Это займет примерно 2-3 минуты. Не бойтесь когда всплывет такое уведомление, так и надо:
Весь процесс можно наблюдать в консоли:
Как только все завершиться, придет уведомление об этом в консоли, в папке models/Unet-trt у нас появится TRT модель. Ее нужно
будет выбрать в SD Unet:
Входная форма обязательно должна быть 64-х битной в обоих измерениях (ширине, высоте). Пример 512x512, 512x768. (так же допустимый размер зависит от выбранного профиля). На данном этапе можно спокойно перейти к генерации изображения. Генерация на таких же параметрах с TRT занимает около 3-х секунд.
Генерация без TRT занимает от 5.5 и более секунд:
На этом все, надеюсь статья оказалась для Вас полезной!
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.