Ключевые параметры: steps, CFG, seed, sampler, размер

Урок-справочник по главным ручкам генерации: что крутить и к чему это приведёт.

Параметры генерации — настройки, управляющие процессом расшумления: число шагов, сила следования промпту (CFG), стартовое зерно (seed), алгоритм шагов (sampler) и размер.

Пять главных ручек

ПараметрЗа что отвечаетТипичный диапазон
stepsчисло шагов расшумления20–40
CFG scaleстрогость следования промпту5–9
seedстартовый шум / повторяемостьлюбое число
samplerалгоритм удаления шумазависит от модели
размерразрешение (размер латента)родное для модели

steps: больше не всегда лучше

Число шагов — это сколько раз вызвать U-Net. Слишком мало (5–10) — картинка «недопечена», шумная. Достаточно (20–30) — обычно качество уже хорошее. Дальше (60+) прирост почти незаметен, а время растёт линейно. Хороший старт — 25–30.

CFG scale: насколько слушать промпт

Низкий CFG (2–4) — модель «фантазирует», слабо держится промпта, картинки мягкие. Средний (6–8) — баланс. Высокий (12+) — модель буквально вцепляется в каждое слово, появляются пережжённые цвета и артефакты. Большинству задач хватает 6–8.

seed и sampler

Seed фиксирует стартовый шум: записали удачный seed — сможете воспроизвести картинку и аккуратно её менять. Sampler — это алгоритм, как именно вычитать шум на каждом шаге; разные сэмплеры дают слегка разную картинку и по-разному «сходятся» (одни хороши на малом числе шагов, другие — на большом).

# Грубая модель: качество растёт с шагами, но выходит на плато
def quality(steps):
    # имитация: насыщение около 30 шагов
    return round(1 - (0.85 ** steps), 3)
for s in [5, 15, 30, 60]:
    print("steps =", s, "-> качество ~", quality(s))

Вывод:

steps = 5 -> качество ~ 0.556
steps = 15 -> качество ~ 0.913
steps = 30 -> качество ~ 0.992
steps = 60 -> качество ~ 1.0

Видно, как после ~30 шагов прирост почти исчезает — лишние шаги тратят время зря.

Как работает под капотом

Размер картинки = размер латента, поэтому удвоение стороны примерно учетверяет стоимость каждого шага. Кроме того, у каждой модели есть «родное» разрешение, на котором она обучалась; сильно больше — и появляются дубли (две головы, повторяющиеся объекты), потому что модель не видела таких больших композиций. Для крупных картинок используют генерацию в родном размере с последующим апскейлом.

Частые ошибки

  • Ставить steps 100 «для качества». После плато это лишь жжёт время.
  • Высокий CFG ради «точности». Часто даёт пережжённые, неестественные картинки.
  • Генерировать сразу в огромном размере. Появляются дубли; лучше родной размер + апскейл.

Итог

  • steps ~25–30 и CFG ~6–8 — безопасный старт для большинства задач.
  • seed даёт повторяемость, sampler слегка меняет стиль и скорость сходимости.
  • Размер = латент: генерируйте в родном разрешении, увеличивайте апскейлом.
Проверьте себя
1. Что обычно происходит при очень большом числе шагов (например, 100)?
AКачество растёт бесконечно
BКачество выходит на плато, а время растёт впустую
CКартинка становится чёрной
DПромпт перестаёт действовать
2. Почему генерация сразу в очень большом размере часто даёт дубли объектов?
AИз-за слишком большого CFG
BМодель обучалась на родном разрешении и не видела таких больших композиций
CИз-за неправильного seed
DДубли появляются всегда
3. Что произойдёт при очень высоком CFG scale (например, 15)?
AКартинка станет мягче и нейтральнее
BМодель чрезмерно вцепится в промпт, появятся пережжённые цвета и артефакты
CГенерация остановится
DNegative prompt отключится