Automatic1111: плагины, xformers и hi‑res

Задача страницы. Показать, как запустить и эксплуатировать Automatic1111 WebUI на облачных GPU: оптимальные флаги запуска (xformers/SDPA), пресеты hi‑res fix, категории плагинов (ControlNet, тайлинг, апскейл/реставрация), API и батч‑рендер, а также наблюдаемость и расчёт стоимости.

TL;DR

Когда выбирать Automatic1111 (а когда — ComfyUI)

  • Automatic1111 подходит для быстрого старта UI, богатых плагинов, одиночных/серийных прогонов через веб‑форму и REST‑API.
  • ComfyUI удобнее для сложных графов и конвейеров, где нужно ветвление, кэш узлов и кастомные пайплайны (см. /solutions/image-video-gen/comfyui/).
  • Для микса «UI‑демо + пакетный рендер» можно держать оба стека: WebUI — для интерактива, ComfyUI — для фермы.

Запуск на GPU: рекомендуемые флаги и директории

Структура хранилища:

/weights/

checkpoints/ # SD/SDXL/SD3

vae/

loras/

controlnet/

embeddings/

/outputs/ # результаты (дата/проект/вариант)

/cache/ # временные файлы/предпросмотры

Подробнее про диски и кэш — /solutions/storage-data/.

Пример запуска (универсальный):

# Предполагается, что launch.py находится в каталоге WebUI
export SD_WEBUI_LOGDIR=/outputs/logs
export TRANSFORMERS_CACHE=/weights/cache
export HF_HOME=/weights/cache
# Выберите один вариант внимания (а не оба):
# Вариант A: xformers (низкая память, хороший тюнинг под SDXL)
EXTRA="--xformers"
# Вариант B: SDPA (Scaled-Dot-Product Attention, быстрый на современных GPU)
# EXTRA="--opt-sdp-attention"
python launch.py 
 --api --listen --port 7860 
 --ckpt-dir /weights/checkpoints 
 --vae-dir /weights/vae 
 --lora-dir /weights/loras 
 --controlnet-dir /weights/controlnet 
 --gradio-queue 
 $EXTRA

Замечания по флагам

  • Используйте или --xformers, или --opt-sdp-attention. Одновременное включение не имеет смысла.
  • Для экономии VRAM оставьте fp16 по умолчанию, --no-half-vae включайте только при проблемах с VAE.

Для прод‑API добавьте --api и ограничители размеров/шагов на уровне реверс‑прокси.

Hi‑res fix: рабочие пресеты Общее правило: генерируйте базовое изображение в меньшем размере, затем включайте Hi‑res fix (встроенный «второй проход») или внешний апскейл.

Рекомендации (стартовые):

  • Scale: 1.5–2.0×;
  • Hi‑res steps: ~35–50% от базовых шагов;
  • Denoise strength: 0.2–0.4;
  • Upscaler: Latent / Latent (antialiased) для мягкого деталинга; для финала — апскейл из /solutions/image-video-gen/upscaling/.

Для SDXL: держите base на 1024² с умеренными шагами, refiner — на коротком проходе (10–15) для детализации (см. /solutions/image-video-gen/sdxl/).

VRAM‑профили и рекомендации

**Сценарий** **Разрешение** **SD 1.5** **SDXL (base/refiner)** **SD3‑семейство** **Комментарий**
Интерактив 20–30 шагов 512² 8–12 ГБ 12–16 ГБ 16–24 ГБ предпросмотры
Интерактив HQ 768² 12–16 ГБ **16–24 ГБ** 24–32 ГБ refiner по желанию
1024² 1024² 16 ГБ **16–24 ГБ** 24–48 ГБ тайлинг при нехватке VRAM
ControlNet/IP‑Adapter +1–3 ГБ +2–4 ГБ +3–6 ГБ на каждую ветку
Апскейл/реставрация 8–12 ГБ 8–16 ГБ 8–16 ГБ см. апскейл/фейсы

Плагины и расширения: что ставить в первую очередь

Ниже — категории расширений. Конкретные списки подбираются под продуктовую политику.

  • ControlNet/IP‑Adapter — управляемые структуры: поза/скетч/грани/референс‑изображение. См. /solutions/image-video-gen/controlnet/.
  • Тайловая диффузия/тайловый VAE — большие разрешения без OOM (2–4k) с «стежкой» швов.
  • Апскейл/реставрация — апскейлеры и восстановление лиц (см. /solutions/image-video-gen/face-restoration/, /solutions/image-video-gen/upscaling/).
  • Промпт‑инструменты — вариативные промпты/шаблоны, региональные промпты (разные стили для областей).
  • Авто‑детализация — добавление деталей на лице/телесных областях (альтернатива ручной правке).
  • Batch‑утилиты — матрицы промптов, серия seed/CFG/шагов для каталогов (см. /solutions/image-video-gen/batch-render/). API WebUI: txt2img/img2img и прогресс

Пример txt2img:

curl -X POST "http://<host>:7860/sdapi/v1/txt2img" 
 -H "Content-Type: application/json" 
 -d '{
 "prompt": "ultra-detailed product photo on white background",
 "negative_prompt": "blurry, watermark",
 "width": 768, "height": 768,
 "steps": 28, "cfg_scale": 6.5,
 "sampler_name": "DPM++ 2M Karras",
 "seed": 42,
 "batch_size": 1
 }'

Пример img2img:

curl -X POST "http://<host>:7860/sdapi/v1/img2img" 
 -H "Content-Type: application/json" 
 -d '{
 "init_images": ["data:image/png;base64,<BASE64>"],
 "prompt": "clean studio lighting, sharp focus",
 "denoising_strength": 0.45,
 "steps": 24, "cfg_scale": 6,
 "width": 1024, "height": 1024
 }'

**Стриминг прогресса (обёртка SSE) WebUI предоставляет прогресс/превью через эндпоинты; для UX удобно отдавать SSE:

from fastapi import FastAPI
from fastapi.responses import StreamingResponse
import httpx, asyncio, json
WEBUI = "http://localhost:7860"
app = FastAPI()
@app.get("/v1/a1111/progress_stream")
async def progress():
 async def gen():
 yield "event: startndata: {}nn"
 async with httpx.AsyncClient(timeout=10) as s:
 for _ in range(600):
 r = await s.get(f"{WEBUI}/sdapi/v1/progress?skip_current_image=1")
 yield f"data: {r.text}nn"
 await asyncio.sleep(0.3)
 yield "event: donendata: [DONE]nn"
 return StreamingResponse(gen(), media_type="text/event-stream")

Качество vs скорость: рычаги тюнинга

  • Шаги (steps): для предпросмотра снижайте до 16–24; финал — 28–40.
  • Самплер: DPM++ 2M Karras — баланс скорости/деталей; Euler a — очень быстрый предпросмотр.
  • CFG: удерживайте в диапазоне 4–8; избыточный CFG повышает шум/«пластик».
  • Hi‑res fix: используйте второй проход для HQ; на 2–4k добавляйте тайлинг.
  • ControlNet и IP‑Adapter: повышают управляемость, но требуют VRAM/времени; включайте по мере нужды.
  • Апскейл/реставрация: часто выгоднее «768–1024² → апскейл → лёгкий денойз», чем изначально 2–4k (см. соответствующие страницы).

Batch‑рендер и стоимость

Мини‑модель стоимости:

T ≈ O + S × t_step(R, B)

Imgs_per_hour ≈ 3600 / T

Cost_per_1000 ≈ (GPU_hour_price × Num_GPU) / (Imgs_per_hour / 1000)

Где S — шаги диффузии, R — разрешение, B — батч, t_step — среднее время шага, O — накладные.

Паттерн пакетной генерации

  • Очередь задач (JSON‑манифест параметров), пул API‑воркеров WebUI, ретраи, дедуп по (prompt, seed, cfg, steps, model).
  • Раздельные пулы: on‑demand (интерактив) и interruptible (пакеты).
  • Отчёт: список артефактов, параметры, время, цена/1k изображений.

Детали — /solutions/image-video-gen/batch-render/, экономика — /solutions/llm-inference/costs/, планирование — /solutions/cost-planner/.

Наблюдаемость и алерты

Метрики (минимум):

  • images_per_min, t_step_ms, steps, batch, resolution, queue_wait.
  • GPU: util/HBM, OOM/ретраи, время загрузки весов, кэш‑хиты.
  • Ошибки API и тайм‑ауты по эндпоинтам.
  • Интеграция: /solutions/monitoring-logging/, /solutions/llm-inference/observability/.

Безопасность и политика

  • Белый список моделей/LoRA/ControlNet; ограничения параметров API (макс. разрешение/шаги/CFG/батч).
  • Санация промптов/логов, маскирование PII и токенов.

Подробнее: /solutions/security/, /solutions/llm-inference/guardrails/.

Как запускать в cloudcompute.ru

  • Шаблон “A1111‑GPU” в /solutions/templates/: – монтирование /weights, /outputs, /cache; – флаги --api --gradio-queue и выбор внимания (xformers или SDPA); – лимиты параметров, health‑checks, прогрев весов; – базовые метрики/алерты.
  • Для больших партий — связка с /solutions/image-video-gen/batch-render/.
  • Расчёт стоимости/профилей — /solutions/cost-planner/.

Траблшутинг

  • CUDA OOM — снижайте разрешение/шаги/батч, выключайте refiner/избыточные ControlNet, включайте тайлинг.
  • Чёрные/пустые изображения — проверьте VAE/совместимость весов; запустите без --no-half-vae.
  • Рывки/очереди — прогрейте веса, держите кэш на NVMe, разделяйте short/long задания.
  • «Пластик»/артефакты — уменьшайте CFG, используйте refiner, корректируйте негатив‑промпт.
  • Низкая скорость — переключите внимание (xformers↔SDPA), уменьшите шаги, проверьте, что weights локально.

Чек‑лист перед продом

  • Выбраны модели (SD/SDXL/SD3) и целевые R/S/батч.
  • Настроены флаги (--xformers или --opt-sdp-attention), прогрев и локальный кэш весов.
  • Hi‑res fix сконфигурирован (scale/steps/denoise), определён пайплайн апскейла/реставрации.
  • Ограничены параметры API/UI; раздельные пулы интерактив/пакет.
  • Метрики/алерты/логи включены; рассчитана Cost_per_1000.
  • Политики безопасности/контента внедрены; логи без PII.

Навигация по разделу «Генерация изображений и видео»/solutions/image-video-gen//solutions/image-video-gen/comfyui//solutions/image-video-gen/sdxl//solutions/image-video-gen/sd3//solutions/image-video-gen/controlnet//solutions/image-video-gen/upscaling//solutions/image-video-gen/face-restoration//solutions/image-video-gen/batch-render/ • инфраструктура: /solutions/performance-tuning/, /solutions/storage-data/, /solutions/llm-inference/streaming/, /solutions/llm-inference/observability/, /solutions/llm-inference/costs/

Готовы запустить?

Запустить GPU-сервер