Перейти к содержанию

Установка Stable Diffusion WebUI

В этой статье

Stable Diffusion WebUI (ранее Automatic1111) - это графический интерфейс для работы с моделями Stable Diffusion, которые генерируют изображения из текстовых описаний (промптов). Вместо командной строки Stable Diffusion WebUI предоставляет интуитивно понятный интерфейс с кнопками, полями ввода и настройками, упрощая процесс генерации изображений. Он позволяет легко изменять параметры, сохранять и загружать изображения, а также делает Stable Diffusion доступной для широкой аудитории, даже для тех, кто не знаком с командной строкой.

Установка Stable Diffusion WebUI на сервер c Ubuntu

Внимание

Stable Diffusion WebUI работает с приемлемой производительностью только на vGPU/GPU серверах с видеокартами Nvidia с тензорными ядрами начиная с A4000 и выше. Убедитесь, что у вас предварительно установлены драйвера Nvidia и CUDA.

  1. Логинимся к серверу по ssh или другими способами как root.

  2. Устанавливаем зависимости:

    apt install python3.10
    apt install python3-pip
    apt install python3-venv -y
    apt install libgl1 
    apt install libglib2.0-0
    apt install google-perftools
    
  3. Создаем пользователя sd:

    adduser sd
    adduser sd sudo
    
  4. Переходим в домашнюю директорию пользователя и переключаемся на него:

    cd /home/sd/
    su sd
    
  5. Скачиваем установочный скрипт:

    wget -q https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui/master/webui.sh
    chmod +x ./webui.sh
    
  6. Устанавливаем веб-интерфейс:

    ./webui.sh
    
  7. Добавляем параметры для запуска:

    • Для запуска с графическим интерфейсом с доступом по IP сервера:
    echo 'export COMMANDLINE_ARGS="--autolaunch --no-half-vae --xformers --medvram-sdxl --opt-sdp-attention --listen"' >>  /home/sd/stable-diffusion-webui/webui-user.sh 
    
    • Для запуска без графики с OpenWebUI:
    echo 'export COMMANDLINE_ARGS="--autolaunch --no-half-vae --xformers --medvram-sdxl --opt-sdp-attention --nowebui --api --api-auth username:password"' >>  /home/sd/stable-diffusion-webui/webui-user.sh
    

    где username:password - имя пользователя и пароль для доступа к API.

    Примечание

    Вы можете не задавать параметр --api-auth username:password, если кроме вас никто не будет обращаться к данному API на сервере.

  8. Скачиваем модель SDXL:

    wget https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors -O ~/stable-diffusion-webui/models/Stable-diffusion/sd_xl_base_1.0.safetensors
    
  9. Созданием сервис systemd для автозапуска:

    sudo tee /usr/lib/systemd/system/sdwebui.service > /dev/null <<EOF
    [Unit]
    Description=Stable Diffusion Webui Service
    After=network-online.target
    
    [Service]
    ExecStart=/home/sd/stable-diffusion-webui/webui.sh
    User=sd
    Restart=always
    RestartSec=3
    
    [Install]
    WantedBy=default.target
    EOF
    
  10. Запускаем сервис:

    sudo systemctl daemon-reload
    sudo systemctl enable sdwebui
    sudo systemctl start sdwebui
    

    Примечание

    Вы можете управлять сервисом Stable Diffusion WebUi через команды sudo service start sdwebui и sudo service stop sdwebui.

  11. Проверяем работоспособность сервиса:

    sudo service status sdwebui
    

Использование графического интерфейса Stable Diffusion WebUI

Для доступа к графическому интерфейсу используйте адрес http://<IP_вашего_сервер>:7861.

В интерфейсе задайте следующие параметры для генерации изображений:

  • Stable Diffusion checkpoint: sd_xl_base_1.0.safetensors;
  • Width: 1024;
  • Height: 1024;
  • Sampling steps: от 30 до 50.

Примечание

Сгенерированные изображения сохраняются в директории ~/stable-diffusion-webui/outputs/txt2img-images отсортированные по дате создания.

Использование в AI чат-боте

Настройка генерации изображений в AI чат-боте

Для включения генерации в AI чат-боте (OpenWebUI)) выполните следующие шаги:

  1. Войдите в AI чат-бот как администратор;
  2. Зайдите в меню Имя администратора >> Admin Panel >> Settings >> Images;
  3. Пропишите в поле AUTOMATIC1111 Base URL значение http://0.0.0.0:7861, а в поле AUTOMATIC1111 Api Auth String заданные ранее username:password;
  4. После этого установите значение пункта Image Generation (Experimental) в On;
  5. Измените параметр Set Image Size на 1024x1024 и поставьте в Set Steps значение от 30 до 50;
  6. Сохраните изменения, нажав на кнопку Save.

Инструкция по генерации изображений в AI чат-боте

Для генерации изображений используйте следующий алгоритм:

  1. Выберите любую модель и в строке ввода чат-бота отправьте команду Repeat this back: <you prompt for image generation>;
  2. На русском языке: Переведи и повтори только перевод: <промт генерации изображения>;
  3. В ответе чат-бота нажмите на значок генерации картинки Generate Image;
  4. Ждите результат от 20 до 50 секунд, в зависимости от загрузки вашего сервера.

Внимание

Для генерации нового изображения повторите пункты 1-4. При нажатии на значок Regenerate вывода изображение заменится на новое, не сохранив старое.

Примечание

Все сгенерированные изображения сохраняются на сервере в директории /var/lib/docker/volumes/open-webui/_data/cache/image/generations/.

Добавление других моделей в Stable Diffusion OpenWebUI

Вы можете добавлять любые поддерживаемые модели в формате .safetensors и LORA самостоятельно. Для этого вам нужно залогиниться на ваш сервер через SSH, переключиться на пользователя SD командой

```bash
cd /home/sd/
su sd
```

и скачать модели, вставим команды приведенные ниже.

Внимание

После установки моделей, обязательно перезапустите Stable Diffusion WebUI командой sudo systemctl restart sdwebui

Мы рекомендуем использовать следующие модели:

  1. UI icons. Модель для рисования иконок в монохромном формате.

    wget -O ~/stable-diffusion-webui/models/uiIcons_v10.safetensors https://civitai.com/api/download/models/367044
    

    Необходимые настройки:

    • Stable Diffusion checkpoint: uiIcons_v10.safetensors;
    • Width: 256;
    • Height: 256;
    • Sampling steps: 30.
  2. Deliberate v6. Быстрая модель на основе SD 1.5 для использования как для генерации изображений, так и для генерации inpaint изображений или применения в ControlNet для переноса стиля или генерации по скетчам в режиме image2image.

    wget https://huggingface.co/XpucT/Deliberate/resolve/main/Deliberate_v6.safetensors -O ~/stable-diffusion-webui/models/Deliberate_v6.safetensors
    

    Необходимые настройки:

    • Stable Diffusion checkpoint: Deliberate_v6.safetensors;
    • Width: 512;
    • Height: 512;
    • Sampling steps: От 30 до 50.