Содержание
- Что такое ControlNet и какую задачу он решает
- Как установить ControlNet в Stable Diffusion (WebUI): пошаговая инструкция
- ControlNet в Easy Diffusion: почему он может не работать и что проверить
- Где скачать модели ControlNet и какие файлы нужны
- Куда положить модель ControlNet: точный путь к папке
- Как добавить и активировать ControlNet в интерфейсе
- Инструкция по ControlNet OpenPose: контроль позы
- Как использовать ControlNet Lineart и другие препроцессоры
- Настройка параметров ControlNet: weight, guidance, preprocessor, модель
- Скачивание ControlNet: официальные источники и совместимость версий
- Типичные ошибки: пустой список моделей, пропавшая вкладка, нехватка видеопамяти
- Частые вопросы
- Как обновлять ControlNet
Как установить расширение ControlNet для Stable Diffusion
Черновик готовит редакция с помощью ИИ. За стандарт издания отвечает главный редактор — Валерий Курземнек.
Материал редакции Зерокодера. Счёт по выдаче снят собственным прогоном 28 сентября 2026 года; цитаты источников приведены дословно. Обновлено: сентябрь 2026.
ControlNet — расширение для Stable Diffusion, которое добавляет к текстовому промпту управляющее условие: контуры, карту глубины, скелет позы. Установка состоит из двух шагов: подключить расширение sd-webui-controlnet в AUTOMATIC1111 и скачать файлы моделей в папку models. Ниже — полный порядок действий, таблица препроцессоров и разбор ошибок. Мы скачали топ-10 Яндекса по запросу «controlnet»: текст отдали 9 из 10.
Что такое ControlNet и какую задачу он решает
ControlNet — дополнительная нейросеть, которая позволяет управлять композицией AI-изображения с помощью второго входа рядом с текстом. Метод представили в 2023 году Lvmin Zhang, Anyi Rao и Maneesh Agrawala в статье «Adding Conditional Control to Text-to-Image Diffusion Models»; работа получила Marr Prize на ICCV 2023 — так описывает историю словарь Twin AI.
Обычная генерация по тексту выдаёт случайную компоновку: позу, ракурс и контуры предсказать нельзя. В обзоре на Хабре это названо прямо: инструменты создания вариаций на основе вектора CLIP, image2image и inpainting «работают не так хорошо, как хотелось бы». ControlNet решает эту задачу иначе — модель способна эффективно изучать условия, зависящие от конкретной задачи, даже когда обучающий набор данных невелик (< 50k).
Архитектурно это компактная надстройка: ControlNet имеет всего четыре слоя свёртки с ядрами 4 x 4 и шагами 2 x 2, наряду с активацией ReLU и гауссовыми весами. Обучение модели Stable Diffusion с этой сетью управления требует всего 23% дополнительной памяти и 34% дополнительного времени по сравнению с исходной моделью.
Как установить ControlNet в Stable Diffusion (WebUI): пошаговая инструкция
AUTOMATIC1111 (A1111) — бесплатный веб-интерфейс Stable Diffusion. Предполагается, что он уже установлен и запускается локально. Если A1111 стоит давно, сначала обновите его командой git pull в папке проекта: старые сборки конфликтуют со свежими версиями расширения.
Два равнозначных способа установки, оба — прямо в интерфейсе:
Способ 1. Из URL. Вкладка Extensions → подвкладка Install from URL → в поле URL for extension’s git repository вставьте https://github.com/Mikubill/sd-webui-controlnet → Install → подвкладка Installed → Apply and restart UI.
Способ 2. Из списка Available. Extensions → Available → Load from → в поиске введите controlnet, найдите строку sd-webui-controlnet → Install → Installed → Apply and restart UI.
После установки закройте не только вкладку браузера, но и окно терминала, из которого запускался A1111, затем запустите заново. Так новые зависимости подхватятся корректно.
ControlNet в Easy Diffusion: почему он может не работать и что проверить
Порядок выше относится к AUTOMATIC1111: sd-webui-controlnet ставится расширением именно этого интерфейса, и его веса лежат в каталоге extensions\sd-webui-controlnet\models. Для Easy Diffusion порядок подключения смотрите в документации самой сборки.
Почему чаще всего «не работает»: файлы весов лежат в каталоге, который ваш интерфейс не читает, либо скачана модель под другую базу. В словаре Neurosaver совместимость описана жёстко: SDXL ControlNet не работает с SD 1.5, Flux требует свои отдельные файлы. Если после подключения эффекта нет — первым делом сверьте базу чекпоинта и модели.
Где скачать модели ControlNet и какие файлы нужны
Актуальная версия — ControlNet 1.1, о её выходе сообщает репозиторий lllyasviel/ControlNet на GitHub. Официальные файлы весов лежат на HuggingFace в репозитории lllyasviel/ControlNet-v1-1. Скачивать всё сразу не нужно — берите под задачу.
Имена файлов, которые встречаются в руководстве на CLORE.AI:
| Задача | Файл модели |
|---|---|
| Контуры | control_v11p_sd15_canny.pth |
| Глубина | control_v11f1p_sd15_depth.pth |
| Поза | control_v11p_sd15_openpose.pth |
| Набросок | control_v11p_sd15_scribble.pth |
| Штриховой рисунок | control_v11p_sd15_lineart.pth |
| Мягкие края | control_v11p_sd15_softedge.pth |
| Сегментация | control_v11p_sd15_seg.pth |
| SDXL-контуры | diffusion_pytorch_model (controlnet-canny-sdxl-1.0) |
Форматы: .safetensors — безопаснее и легче; .pth — классические веса; .yaml — конфиг рядом с моделью, его имя обязано совпадать с именем файла модели. Для большинства моделей 1.1 конфиг уже встроен в расширение.
Куда положить модель ControlNet: точный путь к папке
Скачанные файлы кладут в каталог:
stable-diffusion-webui\extensions\sd-webui-controlnet\models
Если A1111 запущен, откройте раздел ControlNet и нажмите иконку обновления (🔄) рядом с выпадающим списком моделей — список подтянется без полного перезапуска. Пустой список моделей почти всегда означает, что файлы лежат не в этой папке.
Как добавить и активировать ControlNet в интерфейсе
После успешной установки на вкладках txt2img и img2img появится сворачиваемый раздел ControlNet — обычно над выпадающим меню Script. Порядок первой генерации:
- Разверните раздел ControlNet и загрузите исходное изображение на холст.
- Поставьте галочку Enable — без неё расширение не сработает.
- При слабой видеокарте включите Low VRAM.
- Выберите Preprocessor и парную ему Model.
- Задайте Control Weight.
- Впишите промпт и негативный промпт, нажмите Generate.
Кнопка-«взрыв» (💥) рядом с препроцессором показывает предпросмотр карты условия — удобно проверить, что контуры или поза считались верно, ещё до полной генерации.
Инструкция по ControlNet OpenPose: контроль позы
OpenPose задаёт скелет человека: тело, руки, лицо. В пару берут препроцессор openpose или openpose_full и модель control_v11p_sd15_openpose.pth. Это рабочий сценарий для раскадровки и повторяющихся персонажей: поза удерживается от кадра к кадру.
Условие можно подготовить двумя путями. Автоматический — препроцессор извлекает скелет из референса. Ручной описан в словаре Neurosaver: поставить суставы в редакторе поз, нарисовать набросок или вывести глубину из 3D-сцены. В глоссарии Ultralytics для извлечения скелета позы человека упомянута модель компьютерного зрения Ultralytics YOLO26.
Как использовать ControlNet Lineart и другие препроцессоры
Ключевое правило: препроцессор превращает изображение в карту условия, модель по этой карте строит результат. Их подбирают в пару.
| Тип | Препроцессор | Для чего |
|---|---|---|
| Canny | canny | Чёткие контуры, жёсткий контроль формы |
| Depth | depth_midas / depth_zoe | Объём и планировка сцены |
| OpenPose | openpose / openpose_full | Скелет и поза человека |
| Lineart | lineart / lineart_anime | Штриховой рисунок, в том числе аниме |
| Scribble | scribble_pidinet | Грубый набросок от руки |
| SoftEdge | softedge_hed | Мягкие края, гибче Canny |
| Segmentation | seg_ofade20k | Разметка сцены по смысловым зонам |
| Normal | normal_bae | Рельеф и направление поверхностей |
| MLSD | mlsd | Прямые линии: архитектура, интерьеры |
| Tile | tile_resample | Апскейл и детализация |
| Inpaint | inpaint_only | Перерисовка выбранной области |
| Reference | reference_only | Перенос стиля по референсу |
Lineart работает по штриховому рисунку: препроцессор lineart для обычной графики, lineart_anime для аниме. В версии 1.1 препроцессоры получили уточнённые имена, а карты линий и контуров рисуются белым по чёрному фону.
Настройка параметров ControlNet: weight, guidance, preprocessor, модель
Control Weight масштабирует влияние карты условия. В словаре Neurosaver отмечено: значение 1.0 обычно означает стандартный множитель. Низкая сила перерисовки в img2img помогает остаться ближе к исходнику, но тоже не обещает точной копии.
Для режима без промпта (Guess Mode) репозиторий lllyasviel/ControlNet рекомендует 50 шагов и guidance scale между 3 и 5. При нехватке видеопамяти включают Low VRAM — режим добавлен для GPU на 8 ГБ и для больших батчей. Для глубины ControlNet принимает полную карту 512×512, тогда как модель Stability использует 64×64.
Скачивание ControlNet: официальные источники и совместимость версий
Официальный источник весов — репозиторий lllyasviel/ControlNet-v1-1 на HuggingFace. Там же на GitHub выходят новости версий: ControlNet 1.1, ночная сборка 1.1, режим Low VRAM, реализация режима без промпта, перенос ControlNet на любую community-модель.
Совместимость по базе обязательна. В словаре Neurosaver: SDXL ControlNet не подходит для SD 1.5. Модели для SD 1.5 работают с чекпоинтами SD 1.5, для SDXL нужны отдельные SDXL-модели. Смешивать нельзя — модель просто не применится.
Типичные ошибки: пустой список моделей, пропавшая вкладка, нехватка видеопамяти
| Проблема | Причина и решение |
|---|---|
| Раздел ControlNet не появился | Интерфейс не перезапущен. Apply and restart UI, закрыть терминал, запустить A1111 заново |
| Список моделей пуст | Файлы не в той папке. Положить в extensions\sd-webui-controlnet\models и нажать 🔄 |
| Ошибка про YAML / config | Имя .yaml не совпадает с именем модели. Переименовать конфиг либо удалить лишний |
| Модель не влияет на результат | Нет галочки Enable либо модель не под вашу базу |
| Нехватка видеопамяти, вылеты | Включить Low VRAM и уменьшить разрешение |
| Конфликт зависимостей / Gradio | Обновить A1111 через git pull и перезапустить |
Отдельное заблуждение — ждать от ControlNet точной копии карты. В словаре Neurosaver это разобрано как частая ошибка: img2img — «перерисуй с поправкой», ControlNet — «следуй этой композиции, остальное на твой выбор».
Частые вопросы
Нужно ли скачивать модели отдельно от расширения?
Да. Расширение — это только интерфейс. Веса моделей ControlNet скачиваются отдельно с HuggingFace и кладутся в папку extensions\sd-webui-controlnet\models. Без них раздел появится, но генерировать по условию будет нечем.
Чем препроцессор отличается от модели?
Препроцессор превращает исходное изображение в карту условия: контуры, глубину, скелет позы. Модель по этой карте строит финальную картинку. Их выбирают в пару: например, препроцессор canny и модель control_v11p_sd15_canny.
Работает ли ControlNet с SDXL?
Да, но нужны отдельные модели ControlNet под SDXL. Модели для SD 1.5 с SDXL-чекпоинтом не совместимы, и наоборот — база должна совпадать.
Обязателен ли Google Colab?
Нет. Если AUTOMATIC1111 запущен локально, всё ставится через вкладку «Расширения». Colab — лишь один из способов запуска для тех, у кого нет подходящей видеокарты.
Что делать, если раздел ControlNet не появился?
Полностью перезапустите интерфейс: нажмите Apply and restart UI, закройте окно терминала и запустите A1111 заново. Если не помогло — проверьте, что расширение стоит на вкладке Installed и включено.
Как обновлять ControlNet
Обновление нужно только при локальном запуске: Extensions → Installed → Check for updates → Apply and restart UI, после чего полностью перезапустить веб-интерфейс. Обновление расширения не тянет за собой новые модели — свежие веса скачивают отдельно с HuggingFace и докладывают в ту же папку.
Освоив ControlNet, посмотрите прикладные сценарии: как нарисовать комикс с помощью нейросети — там ControlNet удерживает позы и раскадровку от кадра к кадру. Полезно также разобраться, что такое Civitai и сколько весят модели, и сравнить альтернативы в подборке аналогов Midjourney.
