В статье я буду показывать на Stable Diffusion, но советы, о которых пойдет речь, применимы и для других нейросетей, где требуется промт для генерации изображения - Midjourney, DALL-E, Bing Image Creator,Kandinsky... Итак, промт-это текстовый запрос пользователя к нейросети, в нем указывается, что и кто будет изображен, какие цвета и детали должны быть, стиль, жанр, формат, в котором ИИ должна выдать результат. Обобщенно — инструкция, контекст, входные данные, вывод.
Порядок написания промта
Промт пишут поэтапно, чтобы не запутаться. Структурированный текст лучше считывается моделью и позволяет ей четче интерпретировать запрос. Также этому способствуют короткие и конкретные формулировки. Ключевые слова — токены, пишем через запятую, наибольший вес собирают самые первые написанные слова (ИИ читает слева направо, каждое слово при генерации имеет свой вес, но об этом немного позже). Итак по порядку:
1. Объект, который изображен и его количество (1girl, 2cats, 1man, 4dogs);
2. Основное — раса, порода, одежда, поза, прическа, эмоция, черты лица, композиция (full body, half body, portrait, furry, 2ponytails);
3. Фон (pink princess bedroom, gothic castle architecture, forest);
4. Атмосфера (day, morning, sunny, dark);
5. Дополнительные детали (anatomic, 5fingers, hands, 2arms, HD, old masters, oil painting, photorealism);
6. Цвета (HDR, muted colors, neon).
Вес промта
Наконец перейдем к весу. Под весом промта подразумеваем важность для генерации отдельных токенов (pink hair, blush и т. п.). Для манипуляций с весом используются символы: (), [], {}, а также цифры (red eyes:1.4). Чем больше символов мы ставим вокруг токена, тем выше его вес, тем важнее его генерация для модели ([[[blue eyes]]]). В одном промте можно указать несколько токенов, взятых в скобки и имеющих разный вес.
Вес можно записать цифрами от 0,01 до 2 (по умолчанию у каждого из токенов вес 1). Следовательно 0,4 убавит значимость токена, а 1,4 усилит. 2 — максимально сильный вес, если его указать, можно столкнуться с неприятным и пугающим результатом, поэтому лучше остановиться на 1,5 в качестве максимального веса. Цифру добавляем так: токен:0,0, например (blue eyes:1.5).
В процессе генерации токены еще будут меняться исходя из потребности.
Фишки написания промта
Советы собирались мною со всего Интернета и на основании личного опыта, так что тут много полезного. Приступим!
1. Объект, первые токены. Иногда возникает потребность сделать девушке плавный переход на волосах или совместить два разных существа. Есть 2 варианта, как это сделать. Первый — использовать “AND” – (cat AND dog), это будет означать перемешивание, сплетение для cat и dog, также (pink AND white hair). Второй вариант обладает тем де эффектом, но выглядит так: (cat|dog). Применим вес к этому инструменту с помощью цифр, чтобы у нас чего-то из двух стало больше — кота или собаки, розового или белого в волосах. Это будет выглядеть так: (cat:1,3|dog:0,7).
2. Поза и анатомия. Приведу несколько токенов, которые могут помочь улучшить анатомию изображаемого. Вообще, поза здесь играет роль спасателя, давая нейросети конкретную задачу, чтобы она не уходила в сюрреализм с переплетенными ногоруками. Напишите для персонажа жест и что он делает. Ну, например проповедует, рассказывает, бежит, сидит. Опишите положение рук — собраны в кулак, свободно лежат и т. д. Помните — конкретика ваш друг и такой подход сотворит с вашим изображением волшебство! А вот основные вспомогательные токены для анатомии: anatomic, good anatomy, 2legs, 2arms, 5fingers, realistic eyes, hands, gesture, beautiful face.
3. Детали и цвета. После описания персонажа и его окружения, переходим к баффам самой картинки. Несколько токенов для улучшения качества: high res fix, best quality, HD, high resolution, professional studio, ArtStation, reflexes, composition. Теперь определимся со стилем. Здесь можно написать как само название стиля, так и имена авторов (псевдонимы ИИ воспринимает хуже), например, (by Ivan Ivanov). Пожалуй, самое полезное в этом пункте — работа с цветом. Есть несколько полезных токенов:
HDR – разнообразит палитру и немного увеличит резкость;
Dark shot – сделает палитру темнее;
Muted colors – убавит контраст и сделает цвета блеклыми и неяркими.
Здесь же напишу заметку по освещению. Вы наверняка замечали, что персонаж не вписан в атмосферу, жгучая блондинка на знойном пляже почему-то освещена холодным светом вашей настольной лампы. Ну, тут я обычно приписываю warm lighting, warm colors, atmospheric.
Негативный промт
Сюда следует писать то, чего нейросеть должна избегать при генерации. Как правило это зеркалит промт, который мы написали изначально — Good anatomy – Bad anatomy. Stable Diffusion, например, часто не может сгенерировать юношу среднего телосложения без растительности на лице и вместо этого выдает девушек — всё то, что нам не нужно пишем здесь.
Если при генерации изображения ИИ нарушил количество главных объектов в изображении, можно в негатив написать (more than 1girl), а в главное окошко для токенов (only 1girl).
Также введем анатомические токены: bad anatomy, ugly, scary и т. п. И токены по качеству: low resolution, blurry, worst quality.
Здесь также работает вес.
Мои советы подошли к концу, дорогой читатель. Экспериментируй и все обязательно получится!