Для начала нам необходимо скачать Stable Diffusion с репозитория от Automatic1111 последней версии, Официальный репозиторий https://github.com/AUTOMATIC1111/stable-diffusion-webui Если Stable Diffusion последней версии уже установлен и присутствует папка venv - удалите ее Как выглядит папка venv После того как мы удалим данную - необходимо заново запустить файл webui-user.bat который установит все необходимые для начала зависимости. Как выглядит файл webui-user.bat Как только все установится и Stable Diffusion запустится на локальном адресе, мы можем перейти к следующему шагу. Признаки того, что все установилось Закрываем консольку с запущенным Stable Diffusion и открываем новую. Переходим по пути к нашей папке и активируем виртуальное окружение venv\Scripts\activate.bat Активация виртуального окружения Теперь нам следует обновить pip до последней версии. Сделать это можно вставив следующую команду в консоль python.exe -m pip install --upgrade pip Обновляем 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 Удаляем cudnn Выходим с виртуального окружения и запускаем Stable Diffusion. venv\Scripts\deactivate.bat webui-user.bat Запускаем Stable Diffusion Устанавливаем плагин TensorRT для Stable Diffusion Web UI. Репозиторий с нужным нам плагином https://github.com/NVIDIA/Stable-Diffusion-WebUI-TensorRT Перейдем во вкладку Extensions и установим наш плагин по ссылке репозитория. Выбираем вкладку Extensions Выбираем Install from URL Нажимаем кнопочку Install и дожидаемся конца установки. В консоли мы сможем увидеть, что плагин устанавливает дополнительные модули. Началась установка Как только все будет установлено переходим во вкладку Settings и пишем в поиск Quicksettings list , затем выбираем в выпадающем списке sd_unet Вкладка Settings Выбираем sd_unet После проделанных действий нажимаем Apply settings и Reload UI Применяем настройки После того как интерфейс у нас появится вкладка TensorRT и сверху sd_unet . Перейдем во вкладку TensorRT и создадим профиль для нашей модели. Для каждой модели у которой мы хотим ускорить генерацию необходимо будет создать профиль, который весит ~1.6 гигабайт места на диске. Создание профиля Жмем кнопку Export Default Engine и ожидаем. Уходит примерно 2-3 минуты. Такое уведомление нас будет ожидать после нажатия на кнопку Весь процесс мы сможем наблюдать в консоли. Процесс создания модели Как только все будет завершено, мы получим уведомление об этом в консоли, в папке models/Unet-trt у нас появится TRT модель. Ее нужно будет выбрать в SD Unet. Выбор TRT модели в SD Unet Входная форма должна быть кратна 64 в обоих измерениях (ширине, высоте). Пример 512x512, 512x768. (так же допустимый размер зависит от выбранного профиля) После проделанных действий мы можем перейти к генерации изображения. Генерация на таких же параметрах с TRT занимает ~3 секунды Генерация без 5.5+ Скорость работы
мне кажется если я ничего не сделаю и продолжу тратить в 2 раза больше времени на генерацию - я нихуя не потеряю
nu11, должно быть кратно 64 разница с и без. тут апскейл 768х768 потому что у меня профиль не на 1024х1024
vuchaev2015, детализация лица как будто просела, или на реванимейтеде это норма? давно его не юзал, не помню уже
neurosetevik, я комфи не юзал никогда, думаю в будущем может и будет, но я сам в нем даже не разобрался)
NansException: A tensor with all NaNs was produced in Unet. This could be either because there's not enough precision to represent the picture, or because your video card does not support half type. Try setting the "Upcast cross attention layer to float32" option in Settings > Stable Diffusion or using the --no-half commandline argument to fix this. Use --disable-nan-check commandline argument to disable this check. The post was merged to previous Dec 24, 2023 до этого норм работало. фикс?
Элейна, если собираешься ставить Tensort RT необходимо удалить все из папки со стейблом желательно, затем заново запустить ,а только потом ставить tensort rt через extensions (при этом стейбл должен быть последней версии)
хз насколько это дело вообще нужно, да тема старая но бтв, если вы хотите использовать LoRA, то лучше не используйте TensorRT иначе могут быть утеряны некоторые детали лоры