Особенности составления промтов в Stable Diffusion
Общий вид и структура промтов в Stable Diffusion имеет свои особенности и несколько отличается к примеру, от того же Midjourney. Рассмотрим основные отличия.
В Stable Diffusion промт должен состоять из ключевых слов, разделенных запятыми. Важно соблюдать порядок слов — наибольший вес получают самые первые. В начале промта всегда должен указываться объект - то что мы хотим чтобы было изображено на сгенерированном изображении, далее указываются основные характеристики объекта. Окружающая среда - где должен быть изображен ваш объект. Дополнительные детали, что еще должно быть изображено вместе с основным объектом. Далее указываем стиль, в котором должно быть сгенерировано изображение. Следом может идти освещение, цветовая гамма.
Для большей гибкости в составлении промтов используется понятие - Вес. Важность отдельного слова или словосочетания в промте может быть повышена путем обрамления в круглые скобки. Например, если необходимо чтобы модель на изображении имела темный цвет волос, можно увеличить вес выражения путем круглых скобок - ((темные волосы)). Чтобы понизить вес, вместо круглых следует использовать квадратные скобки. Альтернативный вариант выставления веса - указание числового значения слова после двоеточия - темные волосы:2.
Рассмотрим пример:
Объект → девушка
Атрибуты объекта → взгляд в сторону, светлые волосы
Визуальные характеристики изображения:
Углы съемки / тип съемки → крупный план
Освещение → кинематографическое освещение
Художественные стили / Стиль художника / Эстетика → цифровая живопись
Цветовая гамма → яркие цвета
Окружающая среда → в лесу
Дескрипторы качества → лучшее качество, шедевр
Соединим все вместе и переведем на английский, т.к. Stable Diffusion понимает промты только на английском языке.
girl, looking away, (blonde hair), close-up, cinematic lighting, digital painting, bright colors, forest, best quality, masterpiece
Также в Stable Diffusion настоятельно рекомендуется указывать негативный промт. Без указания негативных промтов, в изображении могут появиться нежелательные артефакты в виде неправильного количества пальцев, некрасивых лиц и т.п. В негативном промте нужно перечислить все, что не должно присутствовать на изображении - деформированные руки или пальцы, второй человек в кадре, шум, плохое качество.
В то же время слишком большие негативные промты не обязательно будут работать лучше, поэтому можно взять за основу основные ключевые слова (deformed, extra fingers, extra legs, extra limbs, bad proportions, ugly grumpy, cropped, blurry, noisy, oversaturated, out of frame, cut off, weird, low quality, low resolution, text, watermark) и далее, менять негативный промт в зависимости от того, какая генерация у вас получается.
Также в Stable Diffusion достижения необходимого качества изображения, полезно использовать следующие основные настройки генерации:
Steps — количество шагов, которое понадобится нейросети для генерации. Рекомендуемое значение - 25-35.
Classifier Free Guidance — насколько свободна нейросеть в интерпретации запроса. По умолчанию равно 7 — половину нейросеть придумает сама.
Seed — старт для самостоятельной работы нейросети. Если выставить значение - случайный, нейросеть будет выводить разные результаты при одном запросе.
Resolution — размер изображения. Чем он больше, тем дольше будет длиться генерация. Stable Diffusion обучена на картинках 512×512 и генерирует такие изображения лучше всего.
Это самые основные настройки для генерации, желающие углубиться в тему могут изучить понятия - чекпоинт (ядро нейросети), sampler, lora, denoising strength и т.д. Эти параметры позволяют выбрать специализированную модель и проводить более тонкую настроуйку генерации изображения. Но это тема отдельной статьи.