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

Чаще всего установка ControlNet в Stable Diffusion заканчивается ошибкой «No ControlNet model found» или пустой вкладкой в интерфейсе — и почти всегда причина в том, что расширение поставили, а файлы моделей скачать забыли или положили не в ту папку. ControlNet состоит из двух независимых частей: самого расширения для WebUI и отдельных файлов моделей весом по 1,5–2,5 ГБ каждая, и без второй части первая бесполезна.

В этой инструкции разберём полный цикл: установку расширения sd-webui-controlnet в Automatic1111 WebUI, загрузку моделей, настройку и проверку работы. Отдельно рассмотрим типичные ошибки и их решения. Материал ориентирован на Windows, но логика шагов одинакова и для Linux.

Что нужно перед установкой

ControlNet — это не самостоятельная программа, а расширение для интерфейса Stable Diffusion. Поэтому первое требование — у вас уже должен быть установлен и запускаться Automatic1111 WebUI (или его форк, например Forge, где ControlNet встроен из коробки). Проверить это просто: если вы можете сгенерировать обычное изображение по текстовому запросу, база готова.

Второй момент — видеокарта. Для комфортной работы ControlNet желательно иметь GPU NVIDIA с объёмом видеопамяти от 6–8 ГБ. На картах с 4 ГБ расширение тоже запустится, но потребуется включить режим экономии памяти --lowvram или --medvram в параметрах запуска. Точные требования зависят от версии WebUI и используемых моделей, поэтому при нехватке памяти ориентируйтесь на текст ошибки в консоли.

  • 🖥️ Установленный и рабочий Automatic1111 WebUI
  • 🎮 Видеокарта NVIDIA желательно с 6+ ГБ VRAM
  • 💾 Свободное место на диске — от 10 ГБ под модели ControlNet
  • 🌐 Стабильный интернет для загрузки файлов с Hugging Face

Установка расширения ControlNet

Самый надёжный способ — установка через интерфейс WebUI. Откройте вкладку Extensions, затем подвкладку Install from URL. В поле URL for extension's git repository вставьте адрес репозитория расширения и нажмите кнопку Install:

https://github.com/Mikubill/sd-webui-controlnet.git

После завершения установки перейдите на подвкладку Installed и нажмите Apply and restart UI. Без полной перезагрузки интерфейса расширение не активируется — это частая причина ситуации, когда ControlNet «установлен», но его нигде не видно.

Альтернативный вариант — вкладка Available в том же разделе Extensions: нажмите Load from, найдите в списке sd-webui-controlnet и кликните Install. Результат идентичен, разница только в способе поиска расширения.

☑️ Проверка установки ControlNet

Выполнено: 0 / 4
⚠️ Внимание: после нажатия Install дождитесь сообщения об успешной установке в интерфейсе и не закрывайте консольное окно WebUI. Прерывание процесса на середине может оставить «битую» папку расширения, которую потом придётся удалять вручную из каталога extensions.

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

Расширение без моделей — пустая оболочка. Модели ControlNet распространяются через платформу Hugging Face в виде файлов с расширением .safetensors или .pth, часто в паре с конфигурационным файлом .yaml. Для Stable Diffusion 1.5 существует набор классических моделей под разные задачи: Canny (контуры), Depth (глубина сцены), OpenPose (позы человека), Scribble (наброски) и другие.

Скачанные файлы нужно поместить в папку моделей расширения. Стандартный путь выглядит так:

stable-diffusion-webui\extensions\sd-webui-controlnet\models

Некоторые версии расширения также подхватывают модели из общего каталога stable-diffusion-webui\models\ControlNet — это удобно, если вы хотите держать все веса в одном месте. После копирования файлов нажмите кнопку обновления (значок 🔄) рядом со списком моделей в панели ControlNet, и они появятся в выпадающем меню Model.

Какие модели выбрать: сравнение популярных вариантов

Каждая модель ControlNet управляет генерацией по-своему, и выбор зависит от задачи. Ниже — ориентировочная таблица по классическим моделям для SD 1.5. Названия файлов могут незначительно отличаться в зависимости от источника загрузки.

МодельЧто контролируетТипичная задача
CannyКрая и контуры объектовПерерисовка фото с сохранением композиции
DepthКарту глубины сценыСохранение перспективы и объёма
OpenPoseСкелет и позу человекаПостановка персонажей в нужную позу
ScribbleГрубый набросок от рукиПревращение эскиза в полноценный арт
TileОбщую структуру изображенияАпскейл и детализация картинки

Обратите внимание: модели для SD 1.5 и SDXL несовместимы между собой. Если ваша основная модель генерации построена на SDXL, понадобятся отдельные ControlNet-модели, выпущенные именно под эту архитектуру — их нужно искать с пометкой SDXL в названии.

📊 Какую модель ControlNet вы планируете использовать первой?
Canny (контуры)
OpenPose (позы)
Depth (глубина)
Tile (апскейл)

Первый запуск и проверка работы

Проверить установку проще всего на простом тесте. Откройте вкладку txt2img, разверните панель ControlNet и загрузите любое фото в поле изображения. Поставьте галочку Enable — без неё модуль игнорируется, и это одна из самых частых причин «неработающего» ControlNet.

Выберите в поле Preprocessor значение canny, а в поле Model — соответствующую скачанную модель. Нажмите кнопку предпросмотра препроцессора (иконка рядом с выпадающим списком): если всё настроено верно, вы увидите контурную карту вашего изображения. Дальше введите любой промпт и запустите генерацию — результат должен повторять композицию исходника.

Параметр Control Weight определяет силу влияния управляющего изображения: значение по умолчанию обычно равно 1, и для первых экспериментов его менять не нужно. Если результат слишком жёстко копирует исходник или, наоборот, игнорирует его — корректируйте именно этот ползунок небольшими шагами.

Типичные ошибки и их решение

Разберём проблемы, с которыми пользователи сталкиваются чаще всего. Большинство из них диагностируется по тексту в консоли WebUI, поэтому первое действие при любой ошибке — открыть окно терминала и прочитать последние строки лога.

  • 🔍 Пустой список моделей — файлы лежат не в той папке или не нажата кнопка обновления списка. Проверьте путь extensions\sd-webui-controlnet\models.
  • 📉 Ошибка out of memory — не хватает видеопамяти. Добавьте --medvram или --lowvram в webui-user.bat в строку COMMANDLINE_ARGS.
  • 🧩 Расширение не появляется после установки — WebUI не был полностью перезапущен, либо установка прервалась. Удалите папку расширения и поставьте заново.
  • ⚙️ Ошибка загрузки препроцессора — возможная причина в отсутствии зависимостей; проверьте лог консоли на строки со словом error и при необходимости обновите расширение через кнопку Check for updates.
⚠️ Внимание: скачивайте модели только с официальных репозиториев на Hugging Face или по ссылкам из документации расширения. Файлы .pth из непроверенных источников теоретически могут содержать вредоносный код — формат .safetensors в этом отношении безопаснее, поэтому при выборе отдавайте предпочтение ему.
Как обновить ControlNet до свежей версии

Откройте Extensions → Installed и нажмите «Check for updates». Если для sd-webui-controlnet доступно обновление, появится кнопка применения. После обновления обязательно перезапустите WebUI целиком, а не только интерфейс.

Настройка под слабые видеокарты

Если видеопамяти мало, ControlNet всё равно можно использовать — потребуется лишь подкрутить параметры запуска. Откройте файл webui-user.bat в папке WebUI и допишите в строку аргументов нужные флаги:

set COMMANDLINE_ARGS=--medvram --xformers

Флаг --xformers снижает потребление памяти при генерации, если соответствующая библиотека установлена в вашем окружении. В самой панели ControlNet также есть опция Low VRAM, которая переносит часть вычислений в оперативную память — генерация станет медленнее, но перестанет падать с ошибкой.

Ещё один работающий приём — не держать активными несколько юнитов ControlNet одновременно. Каждый дополнительный юнит загружает свою модель в память, и на слабых картах это быстро приводит к переполнению. Для начала ограничьтесь одним.

⚠️ Внимание: не редактируйте файлы запуска и конфигурации, не сделав резервную копию. Ошибка в строке аргументов может помешать запуску WebUI, и проще вернуть исходный файл, чем вспоминать, что именно было изменено.

Часто задаваемые вопросы

Можно ли установить ControlNet без Automatic1111?

Да. ControlNet поддерживается и в других интерфейсах — например, в ComfyUI он реализован через систему нод, а в Fooocus и Forge встроен изначально. Порядок установки в каждом случае свой, поэтому сверяйтесь с документацией конкретного интерфейса.

Почему в списке моделей пусто после копирования файлов?

Проверьте три вещи: файлы лежат именно в папке models расширения, у них корректное расширение (.safetensors или .pth), и вы нажали кнопку обновления списка. Если модели скачаны в архиве — их нужно предварительно распаковать.

Совместимы ли модели ControlNet для SD 1.5 с SDXL?

Нет, архитектуры несовместимы. Для SDXL-моделей генерации нужны отдельные ControlNet-модели, созданные под SDXL. Использование «чужой» модели приведёт к ошибке загрузки или некорректному результату.

Сколько места занимают модели ControlNet?

Каждая классическая модель для SD 1.5 занимает порядка 1,5–2,5 ГБ. Полный набор из нескольких моделей потребует заметного объёма на диске, поэтому скачивайте только те, которыми реально пользуетесь.

ControlNet включён, но не влияет на генерацию. Что не так?

Чаще всего не выбрана модель в выпадающем списке, не стоит галочка Enable или в поле изображения не загружена картинка. Также проверьте значение Control Weight — при нулевом весе модуль фактически отключён.