Промты для нейросетей

Промты для нейросетей: примеры, как писать запросы

Поделиться

Как составлять запросы к Midjourney, Stable Diffusion и другим нейросетям.

Если вы уже пользовались нейросетями, то знаете, как трудно получить картинку, которая бы вам понравилась.

Вы придумали идею, вводите запрос, нажимаете кнопку и видите результат. Но получается совсем не то, что вы себе представляли. В голове картинка выглядела идеально, но ИИ вас не понял.

В соцсетях говорят, что скоро появится новая профессия — человека, который составляет запросы к нейросетям, промпт-инженера. Такая должность может понадобиться, поскольку бесплатные попытки в Midjourney, Stable Diffusion или DALL-E 2 ограничены, а чтобы разобраться в тонкостях составления запросов, нужно точно больше 25 попыток. Да и немногие хотят тратить часы на генерацию сотни картинок, чтобы получить одну желаемую.

Общие принципы написания запросов одинаковы в любых нейросетях. Рассказываю, как правильно составить запрос, чтобы не приходилось тратить бесплатные попытки на ошибки.

Составляем простой запрос

Для генерации картинки на самом деле достаточно и одного-двух слов. И такие результаты тоже получаются качественными. Но если вы введете пару слов без дополнительных параметров, то остальные детали нейросеть хаотично «додумает» сама. Поэтому лучше использовать базовые знания, чтобы затем развить запрос в более комплексный.

Составляйте запросы на английском языке

Нейросети обучались на парах картинка-описание на английском языке, поэтому лучше всего воспринимают запросы на «родном» языке. Они могут воспринимать другие языки и даже понимать эмодзи, но результаты будут непредсказуемы. Если не знаете английский, пользуйтесь нейросетевым переводчиком DeepL — он понимает контекст лучше, чем Google Translate.

Объект. Основа практически любого запроса — именно он будет в центре всего рисунка. Очевидно, что в первую очередь надо придумать именно его. Например, кот, волшебник, священник, ангел, император, некромант, рок-звезда, город, королева, дом, храм, ферма, машина, пейзаж, гора, река.

Нейросети обучают на огромной базе изображений из сети. Картинок такого типа в интернете много, поэтому нейросети легко их сгенерируют. Правда, если вписывать в команду исключительно один объект, то результаты вряд ли порадуют разнообразием. Поэтому попробуйте, например, совместить два объекта и получить необычный концепт: кот-геймер, некромант-капиталист, киберпанк-монах.

Кот-геймер
Кот-геймер
Киберпанк-монах
Киберпанк-монах
Бэтмен-коммунист
Бэтмен-коммунист

Идеи также можно совмещать через предлоги. Шрек, сделанный из глины, Шрек как королева Англии или Шрек, похожий на кота.

Да, кстати, персонажей тоже можно смело использовать в качестве объектов. Внешность Гарри Поттера или Леголаса не будет списана с Дэниэла Рэдклиффа или Орландо Блума, но героев вы сразу узнаете.

Шрек из дерева
Шрек из дерева
Шрек как королева Англии
Шрек как королева Англии
Шрек-кот
Шрек-кот

Если хотите, чтобы на изображении было несколько объектов, то указывайте их количество. Вместо «волшебники в офисе» напишите «три волшебника в офисе». Если использовать множественное число без указания значения, то нейросеть сгенерирует случайное количество волшебников.

С большим числом конкретных объектов, скажем, больше пяти-шести, нейросети справляются с трудом. В таких случаях можно уже сразу просить сгенерировать «толпу волшебников», но помните: чем больше объектов, особенно людей или животных, тем менее они детализированные. Вероятность ошибки растет с каждым новым объектом в кадре.

Две крысы
Две крысы
Три крысы
Три крысы
Четыре крысы
Четыре крысы

Абстракции. Помимо реальных объектов нейросети могут генерировать абстрактные понятия вроде времени, судьбы, счастья или смысла жизни. Делают они это так, как такие концепты обычно изображают в поп-культуре или искусстве. Сгенерируйте когнитивный резонанс или создание времени — результаты каждый раз будут удивлять.

В то же время не стоит увлекаться и пытаться генерировать концепции, которые предполагают обдумывание и самостоятельные выводы. Этим вы только запутаете нейросеть. Если есть возможность — выбирайте конкретные запросы, где абстрактные понятия заменяют объекты. Вместо «оптимистичного будущего» попробуйте «киберпанк-город с голограммами», а вместо «моды в 2222 году» — «футуристичную одежду со светящимися и красочными украшениями».

Мода в 2222 году — неплохо, но можно лучше
Мода в 2222 году — неплохо, но можно лучше
Футуристичная одежда со светящимися и красочными украшениями
Футуристичная одежда со светящимися и красочными украшениями
Оптимистичное будущее — получилось непонятно и как постер к фильму
Оптимистичное будущее — получилось непонятно и как постер к фильму

От чего сразу стоит отказаться:

  1. Отрицания. Избегайте слов «не», «без», «исключая», «кроме» и подобных. Нейросети воспринимают все буквально и не замечают отрицательных частиц. По запросу «мужчина без бороды» нейросеть наверняка сгенерирует бородатого мужчину, поэтому напишите «чисто выбритый мужчина», чтобы точно получить то, что вам нужно.
  2. Большое количество разных объектов. Велика вероятность, что нейросеть запутается, особенно если добавлять детали к каждому объекту.
  3. Желание в точности передать реальный объект. Если вы напишете «Москва», то это не будет реальная столица России — лишь вариация нейросети с похожими элементами. То же самое и с попытками указать конкретных людей: Генри Кавилл, Илон Маск, Марк Цукерберг.

Добавляем детали

Тут важно соблюдать баланс. Иногда кажется, что чем длиннее и детальнее будет ваш запрос, тем лучше будут и результаты. Но разработчики обычно предупреждают, что избыток деталей перегрузит систему, поэтому итоговый рисунок окажется далек от задумки.

Уделите время конкретике: придумайте, как расположены объекты на картинке. Напишите не просто «волшебник», а «грустный волшебник в колпаке работает за компьютером в офисе поздно вечером». Не забывайте, что у запросов есть ограничение на количество символов. У Midjourney — 4000 символов, у DALL-E 2 — 400 символов, у Stable Diffusion — 75 слов.

Вот какие базовые детали можно добавить к запросу.

Действия. Сформулируйте действие так, чтобы его можно было наглядно отразить на картинке. Глаголы «стоит» или «идет» помогают гораздо больше, чем «мечтает» или «беспокоится». Если вам все же нужно изображение с неочевидным действием, то добавьте детали: не просто «размышляет», а «сидит, погруженный в мысли».

Пожилой мужчина сидит в парке
Пожилой мужчина сидит в парке
Пожилой мужчина катается на скейте
Пожилой мужчина летит над городом в костюме супермена
Пожилой мужчина летит над городом в костюме супермена

Описания. Прилагательные значительно улучшают изображение. Они позволяют задать настроение персонажу или сцене. Добавляйте к объекту слова «красивый», «мрачный», «реалистичный», «злой» или «добрый». Еще меняют результат такие запросы, как «реалистичный» или «детализированный».

Для усиления эффекта не используйте слово «очень», подбирайте синонимы. Вместо «очень красивый» напишите «прекрасный». Если пишете запросы сразу на английском, то подобрать синонимы поможет сайт losethevery.

Полезные прилагательные, которые можно использовать в запросе

strange, ancient, angelic, angry, anxious, athletic, award-winning, simple, beautiful, chaotic, cheerful, clean, cold, colorful, confusing, cozy, creepy, cute, depressing, detailed, dirty, disgusting, dreamy, dry, ecstatic, older, ethereal, evil, excited, expensive, fancy, bold, flat, flat design, flat shading, fluffy, friendly, furry, blurry, gloomy, good, gorgeous, creepy, hairy, happy, very detailed, huge, hyperrealistic, impossible, incoherent, complicated, complicated maximalist, joyful, large, solitary, clear, luminous, massive, massive scale, mature, gentle, micro, mini, minimalist, moody, morbid, speckled, muted, nano, nervous, OCD, old, squiggly, otherworldly, photorealistic, simple, powerful, pretty, priceless, psychedelic, calm, rainy, realistic, refreshing, sad, simple, eerie, sleepy, smooth, ghostly, strong, surface detail

Цвета. Можете уточнить общую цветовую палитру или цвет конкретных деталей. Например, что ваза на столе должна быть синяя, а платье на девушке — красным.

Какие есть рабочие параметры:

  1. Базовые цвета: красный, синий, желтый и все остальные. С тонами у нейросетей сложнее, но можно попробовать уточнить.
  2. Палетки: с пастельными тонами, радужными, цветами Pantone.
  3. Художественные цвета: неон, сепия, черно-белая гамма, Kodachrome.
  4. Duotone: двухтонные картинки для минималистичных изображений.
Красивая девушка в платье
Красивая девушка в платье
Красивая девушка в красном платье
Красивая девушка в красном платье
Красивая девушка в платье, черно-белое фото
Красивая девушка в платье, черно-белое фото

Синонимы. Не бойтесь повторяться в запросах — так нейросеть попытается понять, к чему вы больше всего стремитесь. Например, если вы хотите передать мрачное настроение, то одновременно используйте слова «темно», «мрачно», «плохо освещено», «страшно», «хоррор». Это часто «раздувает» промпты: встречаются варианты на четыре-пять строк с постоянно повторяющимися запросами.

Настройки кадра. Каждый вид можно уточнять дополнительными параметрами. Например, если вы разбираетесь в фотографии, можете задать тип камеры, объектива, расстояние до объекта, фокусное расстояние, выдержку.

Подробные параметры можно посмотреть в гайдах, приведем несколько примеров использования:

  1. Расстояние до объекта: extreme close-upclose-up, medium shot, long shot, extreme long shot.
  2. Расположение камеры: over-the-shoulder shot, aerial view, low angle, dutch angle.
  3. Настройки камеры: bokeh, motion blur, fast shutter speed, slow shutter speed.
  4. Объектив камеры: telephoto lens, macro lens, wide angle lens.
  5. Креативные стили: go-pro selfie, polaroid, camera obscura, CCTV.
Корги, близкое расположение камеры
Корги, близкое расположение камеры
Корги, фото в движении
Корги, фото в движении
Корги, селфи на гоупро-камеру
Корги, селфи на гоупро-камеру

Отсылки к платформам. Сообщество ИИ-энтузиастов обнаружило несколько ключевых терминов, которые помогают улучшить изображение. Нейросеть обучается на картинках из интернета, так что упоминание конкретных сервисов поможет достичь похожего результата.

Точно известно, что работает формулировка Trending on ArtStation: она стилизует картинку в духе артов с сайта. Попробуйте и другие сервисы.

Просто современный дом
Просто современный дом
Стилизованный современный дом с ArtStation
Стилизованный современный дом с ArtStation
Современный дом с Pinterest
Современный дом с Pinterest

Задаем стилистику

Нейросети обучены на огромном количестве художественных стилей, работах конкретных людей, различных эстетиках и временных эпохах. Уже известны тысячи стилистик, которые можно указать в запросе и точно получить приемлемый результат. Вы можете сгенерировать кота-геймера в эстетике нуара, готики, современного искусства, фэнтези, манги, пиксель-арта, сюрреализма или любого другого художественного стиля, который только сможете придумать. Перечислить их в одном материале невозможно, но стили есть, например, в документации по использованию Midjourney.

Работают стилистики во всех основных направлениях с приставками «панк» — киберпанк, стимпанк, дизельпанк — и «вейв» — вэйпорвейв, ретровейв. Наглядно посмотреть, как выглядят разные эстетики, можно на сайте художницы Элисон Александр.

Резьба по костям
Резьба по костям
Минимализм
Минимализм
Пиксель-арт
Пиксель-арт

Дадим несколько советов.

Смешайте стили. В запрос можно добавить сразу две стилистики, чтобы получить необычный результат. Например, киберпанк и пиксель-арт. При этом лучше не смешивать взаимоисключающие параметры. В таком случае нейросеть сгенерирует картинку либо в одном, либо в другом стиле, но объединять их не будет.

Укажите артиста. Выберите конкретных людей, чей стиль вам понравился. Если с ходу не можете вспомнить имен художников, можно воспользоваться таблицей с сотнями имен артистов, стиль которых могут имитировать нейросети. Например, если хотите сгенерировать Шрека в стиле Ван Гога, то напишите Shrek by Van Gogh.

Но необязательно указывать именно классических художников: современные нейросети обучены на иллюстраторах, авторах комиксов, дизайнерах, архитекторах, фотографах, художниках стрит-арта. Также работают названия игровых проектов и студий, режиссеров с узнаваемым визуальным стилем: попробуйте Bloodborne, студию «Гибли», Уэса Андерсона.

Стили разных артистов тоже можно смешивать — для этого добавьте в запрос имена двух-трех художников или фотографов. Обычно в запросе указывают похожих артистов, чтобы получить достаточно четкий и оформленный, но уникальный стиль.

Шрек Ильи Репина и Ивана Шишкина
Шрек Ильи Репина и Ивана Шишкина
Киберпанк-Шрек Энди Уорхола
Киберпанк-Шрек Энди Уорхола
Аниме-Шрек Хироси Ёсиды
Аниме-Шрек Хироси Ёсиды

Выберите преобразование объекта. Укажите в запросе, какая форма искусства вам нужна — картина, постер, фотография, скульптура, мозаика, татуировка, пазл, вышивка или даже кофе-арт. Есть и совсем необычные варианты: объект из запроса легко можно превратить в набор «Лего», чертеж, трехмерную модель, оригами.

Отдельный популярный жанр генераций — кадр из фильма. Пользователи обнаружили, что запрос DVD Screengrab помогает сгенерировать сцены из кино. И теперь фантазируют на тему несуществующих фильмов и сочетают уже вышедшие картины с новыми режиссерами.

Латте-арт
Латте-арт
Пазл
Пазл
Тату
Тату

Учимся использовать картинки

Можно не только прописывать запросы текстом, но и прикладывать картинку в качестве референса. Для этого достаточно загрузить изображение или поделиться ссылкой на него.

Есть несколько сценариев, как использовать функцию.

Стилизуйте реальное фото. Вместе с картинкой можно добавить любой текстовый запрос, как и в стандартном промпте. Изображение-референс точнее передает, что именно вы хотите, но повышает вероятность ошибок и артефактов при обработке. Попробуйте загрузить собственное селфи и поэкспериментировать со стилистиками из предыдущего шага.

Несколько попыток стилизовать фото Дуэйна Джонсона. Получается интересно, но сам «Скала» не везде узнаваем

Несколько попыток стилизовать фото Дуэйна Джонсона. Получается интересно, но сам «Скала» не везде узнаваем

Смешайте сразу две картинки. В таком случае нейросеть автоматически перемешает два изображения, взяв по половине характеристик от каждого. К сожалению, нельзя настроить, какие именно элементы позаимствовать из каждого фото. Текстовый запрос составлять при смешивании картинок можно, но необязательно.

Используйте уже сгенерированные изображения в качестве референса для новых генераций. Их можно как смешивать с готовыми картинками, так и прописывать дополнительные параметры, чтобы изменить детали в изображении.

Добавляем надстройки

В нейросетях есть короткие команды, позволяющие быстро изменить разрешение сторон изображения, усилить стилизацию или добавить абстрактности. В каждом сервисе они свои. Расскажу про те, которыми пользовалась сама.

Вот какие настройки можно выставить в Midjourney.

Стилизация. Если добавить к запросу –s(x), можно регулировать уровень стилизации. Диапазон — от 0 до 60 000. Например, wild flowers, acrylic painting –s 100.

Хаос. Параметр увеличивает уровень абстракции в запросе. Диапазон — от 0 до 100. Например, wild flowers, acrylic painting –chaos 100.

Качество. По умолчанию стоит на отметке 1, можно установить 2, тогда будет больше деталей у картинки. Раньше был максимальный параметр 5, но его убрали из-за высокой нагрузки. Например, wild flowers, acrylic painting –quality 4.

Соотношение сторон. По умолчанию картинки генерируются в соотношении сторон 1:1. Если хотите горизонтальную, поставьте в конце запроса –ar 4:3 или –ar 3:2. Если нужна вертикальная, то –ar 2:3. Если хотите установить свое разрешение сторон, прописывайте в формате –w 600 –h 300, где первый параметр — ширина, а второй — высота.

Вес. К каждому слову в запросе можно добавить вес через двоеточие. По умолчанию вес любого слова из запроса равен 0,25. Если написать, например, wild::.6 flowers::.5, то вес у слова wild будет больше, чем у flowers. Если добавить негативные веса, например wild::.-1 flowers::.1, то цветы станут «не дикими». При использовании негативных весов их сумма должна быть больше или равна нулю. Подробно посмотреть, как работают веса в Midjourney, можно в этом документе.

Фильтрация слов. При использовании параметра –no нейросеть будет избегать указанных объектов. Например, в запросе fried chicken –no sauce нейросеть сгенерирует курицу без соуса.

Вот какие настройки можно выставить в Stable Diffusion.

Steps. Количество шагов, которые пройдет нейросеть, пока генерирует изображение. Чем больше шагов, тем качественнее должен быть результат, а значит, тем больше времени уйдет на обработку запроса. По умолчанию ставится 50 шагов.

Classifier Free Guidance. Этот параметр означает, насколько вольно нейросеть может интерпретировать запрос. По умолчанию ставится 7 —z это означает, что ИИ половину додумает сам. При параметре меньше 6 нейросеть возьмет дело в свои руки. При параметре 16 ИИ полностью учтет ваш запрос без своих добавлений. Если вы уверены в своем запросе, ставьте высокое значение. А если не уверены, лучше дать Stable Diffusion свободу.

Seed. Стартовая точка, из которой нейросеть затем формирует изображение. По умолчанию стоит «случайный» параметр — это помогает достигать разных результатов при одном и том же запросе. А если вы используете конкретное номерное значение сида, то потом даже при смене запроса композиция картинки останется схожей. Всего сидов около 16 миллиардов, конкретными сидами можно делиться с остальными, чтобы генерировать похожие картинки.

Resolution. Размер изображения. Чем больше, тем дольше будет длиться генерация. Stable Diffusion обучен на картинках 512 × 512, поэтому генерирует изображения такого разрешения лучше всего.

Sampler. Процессы, влияющие на результат генерации. Работают как своеобразные технические фильтры. Есть несколько видов сэмплеров, одни из самых популярных — The Old Reliable, The Speed Demon, The Chameleon, The Starving Artist. Например, The Old Reliable генерирует хорошие картинки за 50 шагов, а The Speed Demon всего за восемь. Сэмплеры получится менять в настройках Stable Diffusion. Принцип работы на сгенерированных картинках можно посмотреть здесь.

Ищем вдохновение

Нет ничего зазорного в том, чтобы подсматривать запросы у других пользователей. И искать в чужих работах вдохновление или нужные вам стилизации. Совмещайте детали из разных запросов, удаляйте ненужное, добавляйте свое — так результаты будут получаться более разнообразными.

Промпт-буки состоят из сотен картинок с соответствующими им подробными запросами. Такие существуют, например, для Stable Diffusion и Midjourney. В них есть десятки похожих примеров, но с немного разными параметрами. Это поможет увидеть, как одно слово в запросе изменяет всю картинку.

Промпт-бук от сообщества OpenArt — 105 страниц с принципами и стилями генерации.
Промпт-бук от сообщества OpenArt — 105 страниц с принципами и стилями генерации.

Галереи генеративного искусства представляют картинки с описаниями, которые придумывали другие пользователи. В них можно подсматривать чужие запросы и гуглить картинки по выбранным стилистикам. Популярнейшие галереи — Lexica Art и OpenArt.

Промптеры — небольшие сервисы, помогающие сформулировать запрос. Работают они примерно одинаково: пользователь сам составляет базовое описание, что должна нарисовать нейросеть, а дополнительные параметры выбирает уже из готового списка. Попробуйте PrompterPromptomania или Phraser.

Собираем все в один запрос

Все эти параметры необходимо правильно расположить. Слова в начале запроса имеют больший вес, чем те, что находятся в конце. В сообществе авторов нейрокартинок пришли примерно к одной последовательности запроса:

  1. Главный параметр картинки: фото, кадр из фильма, иллюстрация, картинка-референс.
  2. Объект.
  3. Детали объекта: описание, действие.
  4. Стилистика: эстетика, цветовая палитра, автор.
  5. Дополнительные параметры: настройки камеры, освещения, погоды, времени суток, графика.
  6. Надстройки самого сервиса: пропорции картинки, стилизация, разрешение, параметр хаоса и сид.

Помните: это не единственная схема — экспериментируйте с порядком слов и параметров. Получилось недостаточно мрачно? Переместите слово «мрачный» в начало запроса. Слишком мрачно? Переместите его в самый конец.

Не забывайте про правило конкретики из предыдущих шагов. Иногда нейросеть не понимает связи между объектами. Например, по запросу «начальник смотрит через плечо своей подчиненной» ИИ может сгенерировать просто двух стоящих коллег. В таком случае стоит переформулировать запрос: «начальник смотрит через плечо своей подчиненной, работающей за столом».

Если изображение все равно выглядит плохо или не соответствует задумке, добавляйте или убирайте слова и фразы. Опытным путем попытайтесь понять, почему ИИ делает такой выбор, какой получается на изображении. Всегда присутствует логика того, почему объекты расположены на картинке именно так, хотя она может быть непостижимой для человека.

Памятка: как составить идеальный запрос

  1. Придумайте краткое описание того, что вы хотите видеть на своей картинке. Указывайте конкретный объект или абстрактную концепцию, но не задавайте запрос, над которым нужно размышлять. Нейросеть не сможет думать за вас. Вам нужно быть как можно более конкретным.
  2. Дополните простой запрос деталями: придумайте композицию, расставьте объекты в кадре, опишите настроение, цветовую палитру и атмосферу через прилагательные.
  3. Наберитесь терпения. Если нейросеть вас не понимает и генерирует что-то не то, повторяйтесь, используйте синонимы, меняйте порядок слов, переформулируйте запросы.
  4. Подберите вид изображения и используйте разные стили как своеобразные фильтры. Не бойтесь смешивать разные эстетики, но не используйте взаимоисключающие параметры.
  5. Прописывайте вместо стилистик имена художников и фотографов. Смешивайте их имена, чтобы добиться уникальной стилистики.
  6. Меняйте настройки, чтобы изменять картинку не через слова в запросе, а через краткие внутренние параметры нейросети.
  7. Ищите вдохновения у других: изучайте библиотеки сгенерированных изображений, копируйте параметры из чужих генераций, смотрите на то, как составлена структура запроса.

Комментарии закрыты.