Как установить Stable Diffusion: пошаговая инструкция

Добавил самое полное руководство по Stable Diffusion – идеально для первого знакомства!

Если вас интересует нейросеть Stable Diffusion и как ее скачать – я подготовил для вас исчерпывающее руководство. Отсутствие понятных ответов в сегменте русского интернета побудили написать меня данную заметку, ведь неподготовленному пользователю невероятно сложно разобраться со всеми дистрибутивами и настройками.

🔥 Лучшее в телеграм: Как установить Stable Diffusion: пошаговая инструкция... Присоединиться!
Для данного изображения был использован stable diffusion prompts girl cyberpunk computer

Я всегда завидовал людям, которые умеют хорошо рисовать – данный дар меня обошел стороной. Очень хотел этому научиться, однако интересы всегда смещались в сторону железа, игрушек и прочего. Поиск изображений и иллюстраций для моих заметок всегда занимал много времени. Мне хотелось привнести немножечко уникальности в оформление… но вы понимаете, что если для пошаговых инструкций это не было проблемой (скриншоты уникальны), то для заголовков и в местах где нужно проиллюстрировать – с моими навыками я мог только криво отредактировать, ни о каких вариантах нарисовать с нуля даже и речи не было.

Последние две недели я все свое время потратил на изучение нейросети и составление текстовых описаний картинок (это в среде Stable Diffusion называется PROMPT). Вся суть использования заключается в максимально подробном описании изображения, которое вы хотите сгенерировать.

Как скачать Stable Diffusion на свой компьютер

В отличии от DALLE и популярной сегодня Midjourney (именно с ее поиска я и узнал про Stable Diffusion) – мы имеем возможность установить нейросеть на свой компьютер и использовать ее автономно без каких либо ограничений. После нескольких неудач с запуском официальной версии и перебиранием различных приложений и расширений для Windows мне повезло встретить веб версию от AUTOMATIC1111 – это работает так, как я себе и представлял, именно эту версию мы сегодня будем рассматривать.

Устанавливаем Python

Для успешного запуска нам понадобится среда Python – не нужно скачивать самую последнюю версию, сам разработчик пишет о корректной работе в Python 3.10.6. Именно ее мы и установим (ниже ссылка на 64 разрядную версию, ввиду того что нейросеть требовательная до ресурсов компьютера – рассматривать 32 битку даже не буду)

https://www.python.org/ftp/python/3.10.6/python-3.10.6-amd64.exe

Во время установки обязательно установите галочку напротив “Add Python to PATH”, иначе ничего работать не будет, Windows не будет знать что у вас установлен Python.

Устанавливаем GIT

Тут все элементарно, даже комментировать не буду, просто переходим по ссылке и жмем “Click here to download”, после загрузки устанавливаем нажимая везде “Далее”.

https://git-scm.com/download/win

Download Git

Во многих инструкциях установка GIT опциально и не требуется, ее используют непосредственно для удобства скачивания Stable Diffusion Webui. В моем случае нейросеть не запустилась без установленного Git – поэтому скачивать будем через него!

На этом этапе у нас все готово для загрузки Stable Diffusion на компьютер. Теперь необходимо выбрать расположение для нашей нейросети. Несмотря на свой скромный размер – реально, после установки всех необходимых моделей и расширений папка будет занимать не менее 30 гигабайт на диске. Следовательно необходимо заранее продумать о свободном месте. НЕЛЬЗЯ чтобы в пути использовались кириллица или пробелы – т.е. желательно положить в корень диска и использовать имя вроде STABLEDIFFUSION.

Загрузка Stable Diffusion от AUTOMATIC1111

Кликаем правой кнопкой мыши в подготовленной папке и жмем “Git Bash Here” (если у вас Windows 11, то сперва выбираем пункт “Показать дополнительные параметры”).

Stable Diffusion Download

Вводим команду ниже и жмем Enter…

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui

…останется только дождаться загрузки (там совсем немного).

Процесс загрузки WEB UI

По окончанию загрузки вы обнаружите у себя вновь созданную папку “stable-diffusion-webui”.

Папка с загруженной нейросетью на компьютере

Я бы и рад написать что – можно уже приступать к творчеству, но нет… мы только начали!

Настройка параметров видеопамяти

Перед первым запуском лучше заранее настроить параметры VRAM, чтобы не столкнуться с ошибками “Out of memory”. Для видеокарт с небольшим количеством памяти необходимо прописать дополнительные параметры запуска в файле конфигурации (хотя если у вас современная видеокарта от nvidia 30xx или 40xx то можете пропустить эту часть руководства по запуску).

Если вы новичок в ИТ, то вам поможет руководство “Как узнать объем видеокарты на компьютере” – далее нам понадобится информация об объеме вашей видеокарты.

–lowvram – данный параметр необходимо использовать если у вас 2гб или меньше,

–medvram – используется если у вас 4гб видеопамяти или менее,

Если у вас видеокарта с объемом памяти более 4гб без необходимости не вписывайте никакие дополнительные параметры (если будет наблюдаться ошибки, тогда уже пробовать различные конфиги). Использование данных токенов замедляют работу stable diffusion, но позволяют работать на старом железе.

Редактирование webui-user для слабых видеокарт

Открываем папку “stable-diffusion-webui” которую вы только что загрузили на свой компьютер с репозитория github. Кликните правой кнопкой мыши по webui-user (Тип: Пакетный файл Windows) и нажмите “Редактировать” (в Windows 11 сперва выберите “Показать дополнительные параметры”.)

webui-user в папке с программой

Команды необходимо добавлять после строки“set COMMANDLINE_ARGS=”

Редактирование параметров видеопамяти

Выше приведен пример для видеокарты с 4 гигабайтами графической памяти – это все, что необходимо для первичной настройки. Почти все готов для запуска WebUI!

Загрузка модели

Модель – отвечает за конечный результат генерации изображения. Как правило они имеют расширение ‘.ckpt’ или ‘.safetensors’. Я не буду рекомендовать стандартную модель – для новичков на мой взгляд идеальными будут:

Deliberate – 2 гиговая модель от нашего соотечественника, чем подробнее вы опишите свои хотелки, тем лучше будет результат.

Dreamshaper – на мой взгляд подходит исключительно для артов или иллюстраций.

На самом деле перейдя по ссылкам вы возможно найдете модель лучшую для вас, выбор сейчас пугающе огромен!

Скачанные модели необходимо положить в ‘../stable-diffusion-webui/models/Stable-diffusion’

Запуск WebUI

Все готов для запуска Stable Diffusion на компьютере. Найдите файл ‘webui-user’ и запустите его

Запуск нейросети Stable Diffusion

Веб интерфейсу потребует несколько минут для установки всех необходимых компонентов. В какой-то момент вам может показаться что ничего не происходит – почти всегда это нет так, все зависит от скорости вашего интернет соединения (у меня с 500мбит интернетом первый запуск занял около 7 минут).

Загрузка компонентов

Для входа в Stable Diffusion UI просто перейдите в браузере по адресу http://127.0.0.1:7860/

Известные проблемы на этом этапе

RuntimeError: Couldn’t install torch.
Для работы Stable Diffusion лучше всего установить версию Python 3.10.6 из начала руководства. Если вы скачали последнюю версию с официального сайта - произведите удаление и установите рекомендованную
Не открывается WebUI в браузере
Проверьте что вы не пытаетесь подключиться по протоколу 'https://', адрес всегда начинается с 'http://'. После удачной загрузки адрес всегда можно подсмотреть в командной строке, закрывать ее не нужно.

Адрес для входа в Web UI

Что дальше

А дальше забыть о свободном времени и пытаться составить идеальный запрос. В поле prompt пишем что хотим увидеть (на английском конечно, можете использовать переводчик как я), жмем Generate и смотрим как происходит Магия!

Интерфейс Stable Diffusion от Automatic1111

Друзья, тема с установкой Stable Diffusion первая на блоге в разделе нейросетей, хотелось бы узнать ваше мнение – есть ли смысл в подробных разборах, существует ли необходимость в обучающих руководствах?

Оцените статью
Блог Айтишнега
Добавить комментарий

  1. Геннадий

    Большое спасибо за подробную инструкцию!

    Правда, у меня после всех действий появляется ошибка “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.”

    Я в батнике прописал:
    set COMMANDLINE_ARGS=–lowvram –no-half
    Выдало ошибку
    Прописал:
    set COMMANDLINE_ARGS=–lowvram –no-half –disable-nan-check
    Выдано как картинку черный квадрат.

    Нашел соответствующую тему на гитхабе но не нашел там решения или не увидел

    Ответить
    1. alimugik автор

      К сожалению вы не написали о вашей видеокарте, на 16 серии nvidia при черном квадрате дописывают “–precision full –no-half”, у вас первого параметра в конфиге нет… на AMD к сожалению проверить негде, не знаю как там ситуация. Так же рекомендую рассмотреть возможность установить Stable Diffusion на Google Colab, но это материал для отдельной заметки.

      Ответить
  2. Георгий

    сделал все по списку, но все равно пишет что нету питона :c
    Python was not found but can be installed from the Microsoft Store: ms-windows-store://pdp/?productid=9NJ46SX7X90P
    Launch unsuccessful. Exiting.

    Ответить
    1. alimugik автор

      Тут что-то с переменными path, надо там разбираться. В Stable Diffusion в файле webui-user.bat можно прописать путь до python (на скриншоте ниже). Если вы у себя не находите папки AppData – включите отображение скрытых файлов.

      path python stable diffusion

      Ответить
  3. Antonio

    Словил ошибочку – в консоли после фразы “LatentDiffusion: Running in eps-prediction mode
    DiffusionWrapper has 859.52 M params.” ничего не происходило.
    В моем случае полечилось редактированием InstallDir:\stable-diffusion-webui\venv\Lib\site-packages\huggingface_hub\file_download.py | Line 1262

    заменил на blob_path = os.path.join(storage_folder, “blobs”, etag[3:]) (добавил в квадратных скобочках [3:]

    Ответить
    1. alimugik автор

      Сегодня наблюдалась проблема с загрузкой одной из моделей с huggingface – уже все поправили, ничего менять не нужно.

      Ответить
  4. Олег

    Про Dreambooth можно было бы рассказать, чтобы свои фотки использовать

    Ответить
  5. Сэнэр

    Огромнейшее спасибо. Теперь осталось понять, как правильно писать запросы))

    Ответить
  6. Алекс

    Сделал всё в точности как описано тут. Установка шла не 7 минут, а 2. Потом попросило закрыть окно. Зашел в браузер, открываю http://127.0.0.1:7860 и ничего не открывает.

    Ответить
  7. Алекс

    Наконец то всё работает! С первого раза не получилось установить. Писал суда в чат, сообщение просто удалили… Спасибо за это творение!

    Ответить
    1. alimugik автор

      Приветствую! Никто ничего не удаляет, ваш комментарий ожидал модерации. Рад что у вас получилось – для более быстрой реакции присоединяйтесь к нам в телеграм.

      Ответить
  8. Sloth

    Все установилось, но по адресу http://127.0.0.1:7860/ не открывается, пишет: “Не удается получить доступ к сайтуСайт 127.0.0.1 не позволяет установить соединение.”
    Окно с командной строкой уже закрыл :(( как быть?

    Ответить
    1. alimugik автор

      Окно командной строки – это и есть ваш запущенный Stable Diffusion. Браузер просто является удобным промежуточным звеном между вами и Stable Diffusion.

      Ответить
  9. Александр

    А какая это версия stable-diffusion ?
    Перешел по ссылке выше, пишет версия 1.21. А вроде как последняя в интернете 2.5 гуляет.

    Ответить
    1. alimugik автор

      Это версия интерфейса. Работать умеет как с моделями 1.5 так и 2.0 и 2.1… 2.5 вроде как еще недоступна всем желающим. Если вы только знакомитесь с нейросетями – выбирайте модели 1.5 – они быстрее и у них развитое сообщество, ну и моделей полно на любой вкус. Если возникнут вопросы – пишите!

      Ответить
      1. Александр

        Спасибо большое за ответы! Добра Вам!🤗

        Ответить
  10. Александр

    Пост просто бомба! Спасибо за труд!🤗 По поводу стоит ли писать дальше такие посты – точно стоит!) К примеру, есть очень очень полезная программа “cudNN” для видеокарт нвидия. Ускоряет работу нейронки в 2 раза. Только сегодня открыл это для себя и очень доволен) Сама нвидия написала cudnn. В телеграмм отправил запрос.😌

    Ответить
  11. DI

    Что это значит? В первый раз в cmd ошибок не было, но на интерфейс зайти так и не удалось, перезапустил, уже писало другое, вот это:

    venv “D:\AI\stable-diffusion-webui\venv\Scripts\Python.exe”
    Python 3.10.6 (tags/v3.10.6:9c7b4bd, Aug 1 2022, 21:53:49) [MSC v.1932 64 bit (AMD64)]
    Version: v1.2.1
    Commit hash: 89f9faa63388756314e8a1d96cf86bf5e0663045
    Fetching updates for Taming Transformers…
    Checking out commit for Taming Transformers with hash: 24268930bf1dce879235a7fddd0b2355b84d7ea6…
    Traceback (most recent call last):
    File “D:\AI\stable-diffusion-webui\launch.py”, line 369, in
    prepare_environment()
    File “D:\AI\stable-diffusion-webui\launch.py”, line 303, in prepare_environment
    git_clone(taming_transformers_repo, repo_dir(‘taming-transformers’), “Taming Transformers”, taming_transformers_commit_hash)
    File “D:\AI\stable-diffusion-webui\launch.py”, line 162, in git_clone
    run(f'”{git}” -C “{dir}” checkout {commithash}’, f”Checking out commit for {name} with hash: {commithash}…”, f”Couldn’t checkout commit {commithash} for {name}”)
    File “D:\AI\stable-diffusion-webui\launch.py”, line 111, in run
    raise RuntimeError(message)
    RuntimeError: Couldn’t checkout commit 24268930bf1dce879235a7fddd0b2355b84d7ea6 for Taming Transformers.
    Command: “git” -C “D:\AI\stable-diffusion-webui\repositories\taming-transformers” checkout 24268930bf1dce879235a7fddd0b2355b84d7ea6
    Error code: 128
    stdout:
    stderr: fatal: reference is not a tree: 24268930bf1dce879235a7fddd0b2355b84d7ea6

    Уже обновлял пайтон с 310 на более новую и наоборот заново ставил, ничего не помогло.

    Ответить
    1. alimugik автор

      Такое ощущение что проблема с интернет соединением или ошибки диска – напишите нам в группе телеграмм, возможно получится удаленно подключиться и посмотреть, так будет быстрее всего

      Ответить
  12. Владимир

    Помогите пожалуйста
    error: could not install packages due to an oserror: httpsconnectionpool (host = ‘codeload.github.com’…..

    Ответить
    1. alimugik автор

      Судя по ошибке не получается подключиться к репозитарию, откуда загружается Stable Diffusion. Это может быть из-за проблем с интернетом или конфликт со сторонними приложениями (например запрет антивируса на соединение).

      Ответить
  13. Григорий

    Здравствуйте. При первой попытке сгенерировать написал такую ошибку:
    OutOfMemoryError: CUDA out of memory. Tried to allocate 6.18 GiB (GPU 0; 6.00 GiB total capacity; 8.44 GiB already allocated; 0 bytes free; 14.58 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
    не понимаю где выставить настройки памяти. подскажите пожалуйста

    Ответить
    1. alimugik автор

      В файлике, который запускает Stable Diffusion нужно прописать команду:

      Ответить