Установка и запуск Stable Diffusion веб-интерфейса под Виндой | Краткий Гайд

Установка и запуск Stable Diffusion веб-интерфейса под Виндой | Краткий Гайд

Под прошлым постом были люди, которым нужен был базовый гайд по установке. Сразу извиняюсь, что это заняло столько времени. Я чот занят был, да и спамить статьями на маленьком сайте не прилично как по мне.

Этот гайд будет на основе Voldy Retard Guide, из которого я возьму только часть по установке интерфейса. Если у вас нормально с английским - идите сразу в источник, по сути это будет просто перевод инструкций от туда с некоторыми дополнениями. https://rentry.org/voldy

Требования

Нвидэ. На Амуде не работает, кроме как под линуксом и танцами с бубном.
Если быть точнее, то Нвиде не старее 7хх, и с не менее чем 2 гигами памяти. Это прямо совсем минимум.
16 гигов оперативки
20 гигов места на диске, желательно на ssd, но не критично. Я например просто поставил на быстрый HDD.

Установка

Раньше было несколько разных рекомендаций, по которой предлагался выбор между разными консолями, git bash, miniconda и что-то ещё, но теперь гайд предполагает только гит баш, его и устанавливаем. https://git-scm.com/download/win
Я с вашего позволения воздержусь, ибо у меня уже стоит миниконда.

Шаг 2: После установки, у вас должен появиться выбор "Git Bash here" при клике правой кнопкой мыши в проводнике. Идёте/создаёте туда/там, где вы хотите иметь файлы интерфейса. Предлагаю найти около 100 свободных гигабайт. Поверьте, если затянет - и этого будет мало. Например у меня папка интерфейса занимает 303 гигабайта, и это я ещё удаляю мусорные файлы...
Далее вводите туда данную команду:
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
Это должно скопировать репозиторий AUTOMATIC1111 в назначенную вами папку. Ждите пока загрузится.
(Что бы в будущем обновиться данный интерфейс проделываете то же самое, но используете "git pull" вместо прошлой команды. Репозиторий указывать не нужно)

Шаг 3: Скачиваем модель. Это может быть Stable Diffusion, какой вам больше нравится, 2.1, 2.0, 1.5, 1.4, 1.3... Их можно найти здесь - https://huggingface.co/models?search=stable%20diffusion
А можете и аниме модели скачать, или различные другие файн-тюны. Они так же присутствуют на данном сайте.
Если вам хочется хорошую аниме модель, посоветую Anything3. Но будьте внимательны, нет гарантии, что она безопасна. Но я её использую. Так же я не нашёл её на хаггингфейс... Странно. Но в любом случае, есть NovelAI, ссылку на её торрент можете найти в основном гайде от Волди, ссылка на который в самом начале, она находится сразу после гайда по установке.
Далее переименовываете данный файл в model.ckpt, что бы интерфейс пододбрал её как основную. После этого остальные модели могут быть названы как угодно, и быть их может так же сколько угодно. Интерфейс будет загружать на старте ту модель, которую вы использовали в последний раз.
Далее помещаете данную модель в папку .../stable-diffuision-webui/models/Stable-diffusion

Шаг 4: Устанавливаем Питон. Гайд рекомендует версию 3.10, версии выше ставите только на свой страх и риск.
https://www.python.org/downloads/windows/
Обязательно выделите галочкой "add to PATH" при установке!

Поздравляю, это всё, что нужно, что бы интерфейс смог запуститься и докачать нужные пакеты и модели. Можете запустить его с помощью файла webui-user.bat

Помните, что в первый раз всё будет долго, и будет казаться, что ничего не происходит, ибо нет полоски загрузки, но это не так, оно качает пакеты питона, что бы работать. Они всегда устанавливаются на диск C, поэтому оосвободите +- 20 гигабайт под них(это с запасом).

Возможно у вас будет ошибка timeout, это значит, что ваш интернет не справился с загрузкой в определённое время. Попробуйте, когда нагрузка на сеть будет ниже, ночью например, это частая ошибка. За раз там качаются файлы гигабайтных размеров. Время выделенное на закачку одного файла, после которого выдаст ошибку, у каждого разное, для меня это примерно 20-30 минут. Подозреваю, что зависит от провайдера.

После окончания установки пойдёт процесс запуска, по его окончанию вы увидите сообщение на английском что-то что-то, http://127.0.0.1:7860/ что-то что-то. Это где захосчен ваш интерфейс, локально.
Переходите по данному айпи и видите интерфейс :)

Опциональные фичи

Если у вас видеокарта 10хх, 20хх, 30хх, 40хх, то вы можете попробовать поставить флаг --xformers в файле webui-user.bat, на данных видеокартах они поддерживаются по умолчанию и без бубнов.

Данный флаг позволит использовать режим оптимизации xFormers, который довольно сильно уменьшит требования к памяти, а так же повысит скорость, особенно при больших картинках, некоторые замечают +100% прирост. Но обменом на это будет стабильность генерации, а так же невозможность повторить генерации, которые были созданы без него. Не сильно важно, но если вы собираетесь что-то тренировать - есть мнение, что лучше их не использовать, даже если они ускоряют тренировку.

Для простых генераций они хороши. Включайте, если просто хотите генерировать картинки. Да и в тренировках они включаются отдельно, так что используйте.

Следующий полезные флаг это --medvram а так же --lowvram. Они позволяют уменьшить потребление памяти в обмен на скорость. Medvram не сильно её понижает, но позволяет генерировать куда больше за раз, что в итоге повышает общую скорость, либо куда больше по размеру. Обязательно для видеокарт с 4 и менее гигами. Полезно для 6 и 8, если нужно больше генераций. Не позволяет тренировать лучше/больше, но сильно замедляет, по моим наблюдениям, выключайте при тренировке.

Конец

Всё, вы готовы в первый раз запустить интерфейс.

Существует ещё тонна возможностей кастомизации интерфейса, скрипты, расширения, тренировка инверсий, моделей и т.д. Но это продвинутый контент, который мы разбирать в этом гайде не будем, всё-таки мы просто хотим хотя бы установить его xD

Дополнительные материалы

Собственно, сам гайд на английском, но он содержит много дополнительной информации для новичков, если у вас нормально с английским - https://rentry.org/voldy

Немного устаревший, но до сих пор огромный архив моделей и ссылок на них - https://rentry.org/sdmodels - Множество NSFW моделей, включая нишевые фетиши. Вы предупреждены.

Страница с новостями, тоже на английском, извините, данного контента на русском никто особо не делает - https://rentry.org/sdupdates3

Монструозная работа по сортировке и презервации различной информации, советов и исследований на тему генеративных нейронных сетей, очень много очень полезного очень материала, но на английском - https://rentry.org/sdgoldmine

Внимание, качайте модели, гиперсети, инверсии и т.д. с осторожностью. Они МОГУТ содержать вирусы. Данное не касается только основных официальных моделей(Stable Diffusion 1.0-2.x, Waifu Diffusion, NovelAI и некоторых популярных файн-тюнов) и моделей расширения .safetensors, таковые безопасны. Но гиперсети и инверсии не поддерживают данный формат как я знаю, на данный момент, поэтому проверяйте, что качаете.

Ну и держите картиночку для затравки что ли. Сгенерирована на моём собственном файн-тюне.

Если у вас есть вопросы, или вы что-то не понимаете, то пишите, постараюсь ответить.

Если у вас есть вопросы по настройкам генерации - тоже пишите, и я подумаю над написанием гайда по настройкам генерации.

32
3920

Комментарии

Вот это отличная тема👍

Годно, спасибо!

Гайд рекомендует версию 3.10, но не думаю, что будут проблемы с версией 3.11, которая сейчас является стабильной.

С питоном так не работает. Надо смотреть на версии библиотек, на которых написаны модели. Тот же торч зачастую отстаёт на одну-две версии питона от актуальной, и для последней просто не собран

Гайд рекомендует версию 3.10, но не думаю, что будут проблемы с версией 3.11, которая сейчас является стабильной.С питоном так не работает. Надо смот…
Жук
Гайд рекомендует версию 3.10, но не думаю, что будут проблемы с версией 3.11, которая сейчас является стабильной.С питоном так не работает. Надо смот…

Жук, да ты что :)

Жук, да ты что :)
Артем
Жук, да ты что :)

xelblch24, это ты погромист, а нормальные люди не знают, что обновляться до последней версии не стоит

xelblch24, это ты погромист, а нормальные люди не знают, что обновляться до последней версии не стоит
Жук
xelblch24, это ты погромист, а нормальные люди не знают, что обновляться до последней версии не стоит

Жук, гайд конечно в целом не юзер френдли и плохо написан. а либы могут отставать, но разве их не билдят автоматом сразу под релиз питона? а если и не билдят, то соберутся сами локально при соблюдении всех пререквестов к либе. короче ну такое. я бы посмотрел в сторону контейнерного решения, чтобы еще и в систему не срать лишним мусором ради экспериментов

Жук, гайд конечно в целом не юзер френдли и плохо написан. а либы могут отставать, но разве их не билдят автоматом сразу под релиз питона? а если и н…
Артем
Жук, гайд конечно в целом не юзер френдли и плохо написан. а либы могут отставать, но разве их не билдят автоматом сразу под релиз питона? а если и н…

xelblch24, нет, автоматом не собирают. Не знаю, в чём там загвоздка, но большинство ml библиотек от актуального питона отстают. Там обычно куча зависимостей с плюсовыми библиотеками, кудой и так далее. Самому собирать - то ещё приключение, не рекомендую. Особенно на винде

Жук, гайд конечно в целом не юзер френдли и плохо написан. а либы могут отставать, но разве их не билдят автоматом сразу под релиз питона? а если и н…
Артем
Жук, гайд конечно в целом не юзер френдли и плохо написан. а либы могут отставать, но разве их не билдят автоматом сразу под релиз питона? а если и н…

xelblch24, с контейнером могут быть проблемы в плане прокидывания туда доступа для видеокарты. Я хз, не пробовал ни разу что-то видеокартовое в контейнерах гонять

Но тут в принципе можно поставить нормальную анаконду, и через неё поставить среду с нужными библиотеками, она всё в одну папочку сохранит, и систему не засрёт

xelblch24, с контейнером могут быть проблемы в плане прокидывания туда доступа для видеокарты. Я хз, не пробовал ни разу что-то видеокартовое в конте…
Жук
xelblch24, с контейнером могут быть проблемы в плане прокидывания туда доступа для видеокарты. Я хз, не пробовал ни разу что-то видеокартовое в конте…

Жук, видяхи прокидываются, видел уже контейнеры со стейблом :)

Жук, видяхи прокидываются, видел уже контейнеры со стейблом :)
Артем
Жук, видяхи прокидываются, видел уже контейнеры со стейблом :)

xelblch24, не сомневаюсь, что прокидываются. Просто я не знаю, сколько нужно с этим ебаться. Докер на винде не очень приятен сам по себе, а прокидывать куда-либо видяху винда активно мешает. Я в своё время вторую систему с линухом поставил, чтобы с всл не мучиться постоянно

xelblch24, не сомневаюсь, что прокидываются. Просто я не знаю, сколько нужно с этим ебаться. Докер на винде не очень приятен сам по себе, а прокидыва…
Жук
xelblch24, не сомневаюсь, что прокидываются. Просто я не знаю, сколько нужно с этим ебаться. Докер на винде не очень приятен сам по себе, а прокидыва…

Жук, не юзай всл. Сижу на винде с докером, ноль ебли :) но видяхи не прокидывал, тут хз, поверю тебе что будет жопа

xelblch24, не сомневаюсь, что прокидываются. Просто я не знаю, сколько нужно с этим ебаться. Докер на винде не очень приятен сам по себе, а прокидыва…
Жук
xelblch24, не сомневаюсь, что прокидываются. Просто я не знаю, сколько нужно с этим ебаться. Докер на винде не очень приятен сам по себе, а прокидыва…

Жук, че такое анаконда кста? Гуишка венва?

Жук, че такое анаконда кста? Гуишка венва?
Артем
Жук, че такое анаконда кста? Гуишка венва?

xelblch24, типа того. Только у неё свой репозиторий для пакетов, и они там чёт с системными библиотеками шаманят. Бывает, что через pip не поставить, а в анаконде есть

xelblch24, типа того. Только у неё свой репозиторий для пакетов, и они там чёт с системными библиотеками шаманят. Бывает, что через pip не поставить,…
Жук
xelblch24, типа того. Только у неё свой репозиторий для пакетов, и они там чёт с системными библиотеками шаманят. Бывает, что через pip не поставить,…

Жук, xelblch24 , ух, задушили. Пойду поставлю, что 3.11 на свой страх и риск xD
А какие проблемы у Докера с ВСЛ? Я особо не пользуюсь, так, один контейнер для хоста Depthy стоит, но всёж.

Ну и конечно, что ещё конкретно не нравится в гайде?

Жук, xelblch24 , ух, задушили. Пойду поставлю, что 3.11 на свой страх и риск xD А какие проблемы у Докера с ВСЛ? Я особо не пользуюсь, так, один конт…
Anzhc
Жук, xelblch24 , ух, задушили. Пойду поставлю, что 3.11 на свой страх и риск xD А какие проблемы у Докера с ВСЛ? Я особо не пользуюсь, так, один конт…

Anzhc, проблема в этом гайде в том, что подобные ещё кустарные питоновские штуки нестабильны, и всегда может вылезти какой-нибудь AttributeError из-за не той версии библиотеки, решить которую пользователь не сможет. Ну и всё ставится в системный питон, вместо того, чтобы создать отдельную среду под это дело. И картинок бы побольше

А проблемы у докера с всл - длинный разговор. Винда сама по себе в целом слишком много проблем для человека создаёт

Anzhc, проблема в этом гайде в том, что подобные ещё кустарные питоновские штуки нестабильны, и всегда может вылезти какой-нибудь AttributeError из-з…
Жук
Anzhc, проблема в этом гайде в том, что подобные ещё кустарные питоновские штуки нестабильны, и всегда может вылезти какой-нибудь AttributeError из-з…

Жук, Ну про питон я поправил, ставим только рекомендуемую. Боюсь пользователю придётся научиться искать ответ на проблему на гитхабе в любом случае, если пользователь захочет что-то кроме базового интерфейса xD

Отдельная среда, ну это же будет сложнее, чем просто поставить так, правильно же? Я хотел сделать самый простой, что бы большинство не подумало "да ну нахер с этим ебаться", поэтому за базу взял популярный гайд от Волди, который имеет такие вот шаги. Раньше было по другому, но я не программист, разницу не пойму. Ставил с помощью анаконды, вроде что-то такое создавалось, типа отдельная среда вроде, но я не разбираюсь.

За картинки - это я догадывался, но думаю сам понимаешь, у меня оно уже стоит, а устанавливать заново эти гигабайты питона ради картинок такая себе идея. е_е

Эх, Винда ¯\_(ツ)_/¯

Спасибо за фидбэк. Если буду писать гайды по расширениям - там будут картинки, для них не трудно сделать :D

Жук, Ну про питон я поправил, ставим только рекомендуемую. Боюсь пользователю придётся научиться искать ответ на проблему на гитхабе в любом случае, …
Anzhc
Жук, Ну про питон я поправил, ставим только рекомендуемую. Боюсь пользователю придётся научиться искать ответ на проблему на гитхабе в любом случае, …

Anzhc, анаконда лучше, потому что в ней ты можешь указать любое место под среду, а с путями она уже разберётся. И пользователю не нужно искать место на системном диске

И потом не будет конфликтов, если пользователь играется с каким-то другими штуками, требующими питон. Из renpy игр порнушные картинки вытаскивает, или чем там ещё можно заниматься

Anzhc, анаконда лучше, потому что в ней ты можешь указать любое место под среду, а с путями она уже разберётся. И пользователю не нужно искать место …
Жук
Anzhc, анаконда лучше, потому что в ней ты можешь указать любое место под среду, а с путями она уже разберётся. И пользователю не нужно искать место …

Жук, Та хз, думаю, если пользователь захочет с чем-то ещё поиграться, то он более-менее знает, что делает, я хотя бы надеюсь на это, и мои гайды ему будут ни к чему. Всё-таки здесь для обычного народа, мы знать не знаем как играться с питоном, ну разве что со своим xD

Вай как круто, на праздниках можно будет посидеть потыкать, спасибо)

О, вот это годнота! Это прям то что нужно)

На нвиде как всегда всё просто, следуй англогайду и всё, вот бы запилил кто понятный и работающий гайд для амдэшек

На нвиде как всегда всё просто, следуй англогайду и всё, вот бы запилил кто понятный и работающий гайд для амдэшек
issey
На нвиде как всегда всё просто, следуй англогайду и всё, вот бы запилил кто понятный и работающий гайд для амдэшек

issey, Да есть он, только толку, амуде это боль...

issey, Да есть он, только толку, амуде это боль...
Anzhc
issey, Да есть он, только толку, амуде это боль...

Anzhc, я и пишу что боль, облегчил бы кто

Anzhc, я и пишу что боль, облегчил бы кто
issey
Anzhc, я и пишу что боль, облегчил бы кто

issey, У амуде вроде просто нет аналога CUDA ядер и всякой экспериментальной фигни, которая ускоряет вычисления ИИ. Соответственно и оптимизировать под них нечего. Хотя вроде в 7000 какие-то такие блоки завозят, но, один хер, если обновляться, то уж на нвиде. Да и сколько времени ещё пройдёт, пока напишут что-то стабильное, если у них появится своя фишка для ускорения ИИ.

ну че попробовать что-ли на моей Gt 710 с двумя гигами...

ну че попробовать что-ли на моей Gt 710 с двумя гигами...
Зиро Хатт
ну че попробовать что-ли на моей Gt 710 с двумя гигами...

Зиро Хатт, Пиздец...

ну че попробовать что-ли на моей Gt 710 с двумя гигами...
Зиро Хатт
ну че попробовать что-ли на моей Gt 710 с двумя гигами...

Зиро Хатт, А мне наверное стоит достать из комода GT 430 с двумя гигами и на ней потестить?

Зиро Хатт, А мне наверное стоит достать из комода GT 430 с двумя гигами и на ней потестить?
Anzhc
Зиро Хатт, А мне наверное стоит достать из комода GT 430 с двумя гигами и на ней потестить?

Anzhc, оно короче наверное не запустится

Зиро Хатт, А мне наверное стоит достать из комода GT 430 с двумя гигами и на ней потестить?
Anzhc
Зиро Хатт, А мне наверное стоит достать из комода GT 430 с двумя гигами и на ней потестить?

Anzhc, проще через онлайн сервисы

вчерашние попытки запуска на GT 710 привели меня к этому. Архитектура CUDA gt 710 3.5.
а PyTorch поддерживает с 3.7.
Вроде аргумент --skip-torch-cuda-test" должен пропускать проверку CUDA,но его то не видит то при выделении не распознает.
А аргументы --precision full --no-half --skip-torch-cuda-test" должны перекидывать обработку на ЦП но ему все еще не нравиться CUDA ядра видеокарты