Как правильно писать промты для stable diffusion
Художники создают свои шедевры на бумаге с помощью кисти, дизайнеры используют стилус на графических планшетах, а мы с вами освоим искусство "рисования" словами в рамках нейросети. Для начала давайте разберемся, что такое промт для Stable Diffusion. Промт, или запрос для нейронной сети, подобен кисточке или стилусу, с помощью которых мы можем воплотить свои идеи. Умение пользоваться этим инструментом напрямую влияет на качество изображений, сгенерированных в Stable Diffusion. Именно для того, чтобы вы могли эффективно использовать возможности нейросети, я и написала эту статью.
Как писать промпты для Stable Diffusion
Мы рассмотрим, как правильно писать промты, чтобы достичь наилучших результатов. Вы узнаете, как составить правильный промт, чтобы нейросеть создала именно то, что вы задумали. Я также поделюсь примерами промтов, которые помогут вам избежать нежелательных результатов.
Промты, используемые для взаимодействия с нейросетями, такими как Stable Diffusion и GPT, имеют свои уникальные особенности. Каждая из этих нейросетей требует особого подхода к формулировке текстовых запросов. Например, в случае с DALLE нет строгих требований, и вы можете излагать свои мысли так, словно объясняете их человеку. Аналогичным образом составляются промты для Stable Diffusion XL. Однако даже в DALLE и SDXL пользователи иногда сталкиваются с ситуацией, когда нейросеть интерпретирует запрос не так, как ожидалось. Несмотря на кажущуюся простоту формулировки, важно, чтобы запрос был логичным и четким. Чем более детализированным будет ваш промт, тем ближе он окажется к вашей задумке.
Все примеры генерации изображений я буду демонстрировать на основе бота в Telegram, который включает в себя все упомянутые нейросети и различные модели для Stable Diffusion. Вы можете применять эти знания к тем сервисам, с которыми работаете, однако следует учитывать, что некоторые функции или модели могут отсутствовать.
Рассмотрим пример запроса: "дедушка сидит в комнате". Нейросеть может интерпретировать это как дедушку, сидящего на полу. Чтобы избежать недоразумений, лучше уточнить: "Дедушка сидит на стуле в комнате". Это подчеркивает важность правильного написания промтов для достижения желаемого результата.
Ещё пример: "Девушка сидит в комнате у стены, на улице идет дождь". За стеной дождя не увидеть. Лучше фразу в запросе прописать так: "Девушка сидит на стуле у окна, за окном идет дождь".
Важным аспектом при формулировании запросов для нейросети Stable Diffusion является корректное указание взаимосвязей между объектами. Следует избегать в промптах слов, которые нейросеть не сможет интерпретировать.
К примеру, если вы хотите изобразить майский дождь, помните: дождь на любой картине — это просто вода с неба. Чтобы передать атмосферу весеннего дождя, лучше использовать такие слова, как: «красивый пейзаж», «весна», «тепло», «идет дождь». Для создания пейзажей рекомендуется выбирать альбомный формат.
Вот еще один пример: бабушка, позирующая в стильном платье, и с браслетом в духе ретро. Описание этого браслета уже живет в вашем воображении. Нейросеть не умеет читать мысли, поэтому, чтобы получить желаемое изображение, напишите такой запрос: «Бабушка в модном платье с гранатовым браслетом на руке в стиле ретро».
Чем тщательнее вы стремитесь изобразить объект, тем более детально его следует описать. Некоторые аспекты нейросеть не в состоянии отобразить, однако она может продемонстрировать последствия определённых действий. К примеру: сильный ветер, громкий звук или яркий свет. В процессе генерации с помощью Stable Diffusion мы увидим, как эти явления воздействуют на окружающие предметы. Если вы ещё не пробовали самостоятельно составлять промты для Stable Diffusion 1.5, рекомендуется воспользоваться готовыми примерами от других пользователей, которые обеспечивают качественные изображения, и вносить изменения в объекты, описания и добавлять интересные для вас детали. Это поможет вам лучше понять, как правильно писать промты для Stable Diffusion. Давайте рассмотрим, как стихия влияет на генерацию изображений.
Возможности нейросети, такой как stable diffusion, открывают новые горизонты для творчества. Рассмотрим, к примеру, лаконичный запрос: "Белеет парус одинокий". Нейросеть с функцией «+GPT» сама доработает ваш промт, добавляя к нему необходимые элементы. На представленном скриншоте видно, как внизу запроса появился сгенерированный текст.
Создадим изображение, опираясь на тот промт, который предложил ChatGPT.
Учитывая перечисленные выше особенности, вы сможете самостоятельно формировать промты для Stable Diffusion. Начинайте с простых запросов, сосредоточившись на одном объекте. Разделяйте слова запятыми.
Например: Девушка, солнечный летний день, озеро, голубое небо, облака. В этом запросе ключевым будет именно объект, так как то, что указано в начале промта для нейросети, имеет наивысший приоритет, а окружающая обстановка следует за ним.
В последующем добавьте к промту с девушкой более детализированные описания и нюансы.
Можно при создании промтов использовать четверостишия.
Не удивительно что нейросеть не смогла создать строки о далекой стране и родном доме. Старайтесь в промты добавлять токены которые можно нарисовать. Допустим мы хотим нарисовать девушку. Можно взять лист бумаги и нарисовать. Точно так же и в нейросетях. Как бы мы на бумаге нарисовали парусник, страну далёкую и родной край одновременно, так чтобы это было понятно без текста?
Представим себе белоснежный парусник, величественно плывущий по морским просторам, где сильный ветер наполняет его паруса, а над парусником кружат чайки.
Как видно по картинке чаек на генерации нет. Если мы столкнулись с такой ситуацией - значит нужно поднять вес токена в промпте или нужный объект переместить в начало промпта.Теперь мы поместим чайку на первое место в запросе, и вот она уже видна на генерации.
Внесем в изображение с парусником элемент шторма.
Как правильно писать промты (prompt) для Stable Diffusion
Подведем итоги. Все слова и словосочетания, которые мы используем в запросе, именуются токенами. Эти токены взаимодействуют друг с другом, создавая уникальную картину, подобно тому, как шторм, молнии и парусник переплетаются в одном изображении. Чем ближе токен к началу запроса, тем выше его значимость и вероятность его появления в сгенерированном изображении. Именно поэтому на первое место выходят объекты, являющиеся центром композиции, или предметы, которые мы стремимся выделить как ключевые детали.
Когда мы намереваемся создать изображение, точно соответствующее нашей задумке, необходимо максимально четко описать его, избегая двусмысленностей. Важно исключить описания, содержащие противоположные характеристики, такие как «длинный и короткий одновременно». Чем более подробно мы описываем предмет, его характеристики и окружающую обстановку, тем длиннее становится наш промт. В модели stable diffusion 1.5 для достижения соответствия запросу необходимо расставлять весовые коэффициенты, чтобы повысить вероятность появления определенного токена в изображении. Для Telegram-ботов максимальное количество символов в запросе ограничено символами допустимыми для одного сообщения.
Предположим, вы хотите сгенерировать изображение белого парусника, написанного масляными красками на холсте в стиле Айвазовского. В этом случае, чтобы нейросеть более точно воспроизвела стиль художника, следует отключить принудительные стили. Увеличить значимость токена можно несколькими способами.
Например: Белеет парус одинокий на фоне моря голубом, (((в стиле Айвазовского))), так и Белеет парус одинокий на фоне моря голубом, (в стиле Айвазовского:1.3). 0.1 веса и две скобки окружающие слова или слово (в стиле Айвазовского) это +10% к важности токена.
При работе с нейросетью для генерации изображений, такой как Stable Diffusion, важно сразу не задавать слишком высокий вес, чтобы избежать искажений в итоговом изображении. Я обычно начинаю с коэффициента 1.3. Лишь в случае особенно длинного промта могу увеличить вес до 2, что позволяет поднять значение практически каждого токена в запросе. Однако это задача не из легких — необходимо соблюдать баланс, чтобы избежать деформации изображения. Иногда вес требуется поднять и в моделях SDXL.
Существует более простой подход. Рекомендую использовать базовые запросы и лоры с сайта Civitai.com, где также можно найти готовые промты для Stable Diffusion. О лорах я не буду углубляться, так как это требует отдельного обсуждения.
В промте можно применять квадратные скобки. Например, в запросе: "Девушка, парк, [деревья:0.4]", это не означает, что нейросеть должна исключить деревья из генерации. Это всего лишь просьба добавить их отрисовку на 40% после 60% отрисовки девушки, учитывая текущий сэмплинг. Более подробно о квадратных скобках рассказывается в обучающем курсе. Базовые уроки доступны совершенно бесплатно — просто нажмите на кнопку обучения внизу меню по той ссылке, что я указала выше.
Квадратные скобки чаще всего служат инструментом для создания химер в рамках генерации изображений с помощью нейросети. При использовании химеризации рекомендуется избегать сочетаний с птицами и змеями. Этот метод также позволяет формировать уникальные образы на базе Stable Diffusion. Например, в промте [Мона Лиза:Анжелина Джоли:0.3] нейросеть создаст изображение, в котором 30% будет составлять Мона Лиза, а 70% — Анжелина Джоли.
Чтобы исключить отображение определенного объекта или цвета в процессе генерации изображений с помощью нейросети Stable Diffusion, необходимо указать это в негативном промте. Такой промт добавляется после основного, используя конструкцию /np. Например: "Парус одинокий на фоне моря голубом /np (((белый цвет)))." Важно отметить, что в негативном промте можно также усилить значимость токена.
Нейросети, такие как stable diffusion, способны не только мастерски воспроизводить стили известных художников и техники рисования, как мы уже наблюдали в предыдущих примерах, но и кардинально изменять общую стилистику изображений. Теперь давайте обратим внимание на стиль, который иллюстрирует парусник в стиле оригами.
С помощью stable diffusion ai можно создавать уникальные изображения, используя готовые промты или разрабатывая свои собственные. Важно понимать, как правильно писать промт, чтобы добиться наилучшего результата. Нейросеть для генерации изображений, такая как stable diffusion XL, предлагает множество возможностей для творчества. Вы можете экспериментировать с различными моделями для stable diffusion и находить лучшие промты, которые соответствуют вашим задумкам.
Не забывайте, что написание промтов — это искусство, требующее внимания к деталям. Правильный промт может значительно улучшить качество создаваемых нейросетью картинок. Используйте мои примеры промтов и изучайте, как составить промт для достижения желаемого эффекта. Нейросеть рисует удивительные изображения, и с помощью stable diffusion вы можете легко создавать свои шедевры.
Искусственный интеллект
4.6K постов11.3K подписчика
Правила сообщества
ВНИМАНИЕ! В сообществе запрещена публикация генеративного контента без детального описания промтов и процесса получения публикуемого результата.
Разрешено:
- Делиться вопросами, мыслями, гипотезами, юмором на эту тему.
- Делиться статьями, понятными большинству аудитории Пикабу.
- Делиться опытом создания моделей машинного обучения.
- Рассказывать, как работает та или иная фиговина в анализе данных.
- Век жить, век учиться.
Запрещено:
I) Невостребованный контент
I.1) Создавать контент, сложный для понимания. Такие посты уйдут в минуса лишь потому, что большинству неинтересно пробрасывать градиенты в каждом тензоре реккурентной сетки с AdaGrad оптимизатором.
I.2) Создавать контент на "олбанском языке" / нарочно игнорируя правила РЯ даже в шутку. Это ведет к нечитаемости контента.
I.3) Добавлять посты, которые содержат лишь генеративный контент или нейросетевой Арт без какой-то дополнительной полезной или интересной информации по теме, без промтов или описания методик создания и т.д.
II) Нетематический контент
II.1) Создавать контент, несвязанный с Data Science, математикой, программированием.
II.2) Создавать контент, входящий в противоречие существующей базе теорем математики. Например, "Земля плоская" или "Любое действительное число представимо в виде дроби двух целых".
II.3) Создавать контент, входящий в противоречие с правилами Пикабу.
III) Непотребный контент
III.1) Эротика, порнография (даже с NSFW).
III.2) Жесть.
За нарушение I - предупреждение
За нарушение II - предупреждение и перемещение поста в общую ленту
За нарушение III - бан