Ранее мы рассказывали о своих впечатлениях и результатах тестирования приложений на основе нейросети. В работе над платформой «РСХБ в цифре» мы активно используем Midjourney. В новой статье хотим поделиться своими наработками, которые помогут с нуля разобраться в основных функциях и командах (версия Midjourney 5.1), чтобы приступить к созданию интересных изображений с помощью этого приложения.

Сейчас использовать Midjourney можно только через Discord, где создается учетная запись. Midjourney отображается в Discord отдельным общим сервером, где разные пользователи генерируют изображения в общих чатах. Ещё бота можно добавить на свой личный сервер и взаимодействовать без посторонних людей.
На изображении отмечены общий сервер Midjourney с различными каналами для генерации изображений, и личный, в который можно добавить чат-бот.

Как работают команды Midjourney в Discord
Взаимодействие с ботом Midjourney в Discord происходит с помощью команд. Команды используются для создания изображений, изменения настроек по умолчанию, отслеживания информации о пользователе и выполнения других полезных задач.
Основные команды
/imagine
— генерирует уникальное изображение из короткого текстового описания.
/settings
— открывает поле с упрощенными настройками генерации, качества, приватности и т. д.

В окне быстрых настроек можно выбрать:
версию Midjourney;
режим рисования в анимационном стиле (Niji);
параметр «Style» (по умолчанию стоит 100 или «Style med», но для придания изображению большей художественной выразительности его можно увеличить);
«Public mode» включен по умолчанию; возможность сделать фотографии недоступными для публичного просмотра другими участниками есть только в самом дорогом тарифе , команда также активируется через
/private
;«Fast mode» или скорость генерации (по умолчанию стоит быстрая или «Fast mode» — если убрать данный режим, то не будет тратиться машиновремя подписки, но генерация изображения может длиться довольно долго, команда также активируется через
/relax
);-
«Remix mode» дает возможность вносить изменения в запрос при использовании параметра «Make Variations» после увеличения изображения (об этом чуть ниже);
/info
— вызывает окно с информацией по подписке.
/subscribe
— вызывает окно с возможностью перехода к тарифным планам.

/blend
— помогает скрещивать изображения, когда мы хотим из нескольких получить нечто общее. Без этой команды тоже можно создать смешанное изображение, но подгружая несколько ссылок и описывая результат.

/prefer option set
— позволяет сохранить часто используемые настройки: вводим команду, далее указываем название для настройки, а после сам параметр через элемент «--».
Пример:
/prefer option set
mine
--hd --ar 16:9
промт создает опцию под названием « mine
», при вводе которой в строку запроса как --mine
Midjourney будет считывать ее как --hd --ar 16:9
Все созданные настройки можно посмотреть через команду /prefer option list.
/help
— показывает полезную информацию и советы о боте Midjourney.
Подробнее про генерацию изображений с /imagine prompt
1. Введите /imagine prompt:
или выберите /imagine
команду во всплывающем окне команд с косой чертой.
2. Введите описание изображения, которое вы хотите создать, в prompt
поле.
3. Отправьте свое сообщение.

Midjourney Bot лучше всего работает с простыми короткими предложениями. Длинные запросы могут ломать логику на сгенерированном изображении или приводить к некачественным результатам.
После завершения генерации появляются изображения и несколько дополнительных командных кнопок:

U1
U2
U3
U4
Кнопки U масштабируют изображение, создавая увеличенную версию выбранного изображения (увеличенное изображение будет немного отличаться от оригинала).
V1
V2
V3
V4
Кнопки V создают небольшие вариации выбранного изображения сетки. При создании варианта создается новая сетка изображения, аналогичная общему стилю и композиции выбранного изображения.

Кнопка «Обновить» генерирует новые изображения под текущий запрос.
После использования масштабирования изображения (Кнопки U) появится новый набор параметров:


«Make Variations» создает новый набор из четырех вариантов на основе текущего.
«Web» открывает изображение в своей галерее на Midjourney.com.
«Favorite» помогает отметить лучшие изображения, чтобы их было легко найти на веб-сайте Midjourney.
Недавно была добавлена новая функция «Remaster», не просто генерирует варианты по запросу, а дорабатывает уже сформированный вариант.
Чем крупнее объект на изображении, тем больше шансов, что «Remaster» сработает хорошо. Чем мельче детали, тем сложнее Midjourney заметить и переосмыслить их.
Сейчас функцию «Remaster» убрали, появится ли она снова — ответа нет.

Для получения результата, максимально приближенного к желаемому, запросы в Midjourney лучше писать, придерживаясь определенной структуры после /imagine prompt
:
1. сюжет изображения;
2. стиль изображения;
3. информация о размере, освещение и т.д.
Для разделения запроса на составляющие необходимо использовать запятые или двоеточие (при необходимости строгого разграничения).
Пример:
beautiful happy cow in a meadow with flowers in perfect hair to spike, high wool detail, warm sunny day: : illustration style: : --ar 16:9

Дополнительные установки в запросах
Важно! Midjourney одинаково воспринимает два коротких дефиса «--» и длинное тире «—»
--ar
— устанавливает четкое соотношение сторон.
--q
— устанавливает качество изображения; по умолчанию качество равно 1 (--q 2 – увеличивает детализацию, но тратит больше машиновремени, --q 0.5, --q 0.25 соответственно, уменьшает качество, но тратит меньше машиновремени; --q 5 – экспериментальная настройка)
--no
— исключает детали, например «--no cow»
будет означать отсутствие коров на изображении (во всяком случае Midjourney попытается их не делать).
--uplight
— позволяет при масштабировании изображения (кнопка U) уменьшить отличие от оригинала (при увеличении изображения всегда есть небольшая разница, особенно в небольших деталях).
::<число>
— если добавить значение от -1 до 2 к любому слову в запросе (в данном случае без пробелов), можно распределить условный вес запроса, то есть важность той или иной подсказки перед другими. По умолчанию значение 1. -1 -0.5 равно команде –no.
Пример:
по запросу «/imagine prompt: hot dog::1.5 food::-1»
будет создана «горячая собака», не еда; а по промту «hot dog»
будет создана сосиска. Если использовать просто «/imagine prompt: hot:: dog»
разделение будет аналогичное.

Когда двойное двоеточие «::»
используется для разделения подсказки на разные части, можно добавить число сразу после двойного двоеточия, чтобы назначить относительную важность этой части подсказки.
Пример:
hot:: dog
сгенерировал горячую собаку. Изменение подсказки на hot:: 3 dog
делает слово «горячий» в два раза важнее слова «собака».

--iw <число>
— устанавливает вес изображения относительно веса текста.
--chaos <число>
— вносит разнообразие в результаты. Диапазон значений от 0 до 100. Чем выше значение, тем необычнее будет композиция, но в ущерб самому запросу.
Пример:
beautiful happy cow in a meadow with flowers in perfect hair to spike, high wool detail, warm sunny day, illustration, wallpaper --ar 16:9 --chaos 100

Пример:
beautiful happy cow in a meadow with flowers in perfect hair to spike, high wool detail, warm sunny day, illustration, wallpaper --ar 16:9 --chaos 0

На втором изображении в запросе мы лишь изменились число, написав «0» вместо «100», а результат получили совершенно иной.
--seed
— применяется при необходимости создавать максимально похожие изображения; диапазон значений от 0 до 4294967295. Если параметр не указан, автоматически выбирается случайное число.
Пример:
beautiful happy cow in a meadow with flowers in perfect hair to spike, high wool detail, warm sunny day, illustration, wallpaper --ar 16:9 --seed 1234567

--s <число>
— стилизация изображения: чем выше значение, тем выше стилизация.
Например, «--s 500»
.

Немного о дополнительных промтах
Ракурс, угол, план и освещение
Берем промт:
beautiful happy cow in a meadow with flowers in perfect hair to spike, high wool detail, wallpaper --ar 16:9
Изображениям в Midjourney можно задавать ракурс. Мы можем получить как портрет, так и вид с высоты птичьего полета. Сразу уточню, срабатывает не всегда на 100%, т.к. очень многое зависит от длины и сложности самого запроса, но, тем не менее, знать об этом стоит.
Когда необходимо получить изображение с прямой перспективой, то дополнительно следует указать «Looking into the camera»
или «full-face
». Однако Midjourney часто сам предлагает именно такие визуалы.
Если требуется вид сверху, то самые простые варианты «drone shot photo of»
или «birds-eye-view photo».
Варианты похожи, но также могут варьироваться в зависимости от запроса.
Пример:
Drone shot photo of Beautiful happy cow in a meadow with flowers in perfect hair to spike, high wool detail, wallpaper --ar 16:9

Пример:
birds-eye-view photo Beautiful happy cow in a meadow with flowers in perfect hair to spike, high wool detail, wallpaper --ar 16:9

Также можно немного приподнять угол обзора при помощи ввода указания «High- angle photo of» или опустить камеру через запрос «a hip/knee/ground level shot of» (срабатывает чаще) или «view from below».

Вид снизу и не очень (иногда и такое бывает). Иллюстрации ниже.


При необходимости получить определенный угол обзора, используем «in profile»
, «three quarter view»
, «back view
». Сразу уточню, что на людях данные настройки работают определенно лучше, но т.к. у нас корова, будем работать с ней.



Изображение можно сделать разного плана: портрет, средний план, в полный рост или издалека. Для этого к запросу добавляем «closeup photo»
или «closeup shot»
, «medium-full photo/shot»
, «full photo/shot»
или «full body photo/shot»
.
Соответственно, если хотим изобразить группу объектов, помещающихся на изображении целиком или видимые издалека, используем «long photo/shot»
, «a wide photo/shot»
и «view from afar»
. Попробуем также эффект рыбьего глаза или «GoPro».
Важно! Обратите внимание: использование в запросе противоречащих друг другу описаний не будет приводить к желаемым результатам, например, мы хотим получить вид издалека, но, при этом, указываем на довольную морду коровы или высокую детализацию шерсти.
Для примеров «long photo»
и «view from afar»
сделаем запрос чуть проще: cow in a meadow, --ar 16:9»





Эффект рыбьего глаза тоже выглядит довольно интересно, добавляем «GoPro»

По вариантам простого освещения все предельно легко. Необходимо просто указать в запросе тот временной интервал или источник света, который необходимо получить, например: «sunny afternoon»
, «daylight»
, «incandescent light»
, «backlighting»
и т.д.
В конце
Midjourney является отличным инструментом для дизайнеров, иллюстраторов и многих других людей творческих профессий. Этот инструмент позволяет воплощать в жизнь самые смелые идеи, создавать необычный и уникальный контент в различных стилях и вариациях. Желаемый результат не всегда получается с первого и даже с десятого раза, но, тем не менее, пробуйте и экспериментируйте.
Dmitry2019
А вот интересно, можно ли как-то трансформировать промпт Midjourney, с овсеми флагами и ключами, в аналогичный для Stable Diffusion?
MountainGoat
Не "можно", а "год назад сделано и везде есть". Документация.
Есть модель, которая рисует точно как MidJourney, у меня её просто нет.
SystemXFiles
А какая модель, подскажите, пожалуйста?
MountainGoat
https://huggingface.co/prompthero/openjourney
SystemXFiles
Спасибо! Пробовал ее и к сожалению до MidJourney в плане простоты получения хороших результатов ей далеко
MountainGoat
А про просто никто и не говорил. Midjourney сходу выдаёт хорошие результаты, но они как книги Терри Прачетта - сначала восхищают, а после третьей-пятой совсем не интересно, потому что они все одинаковые.
Если вы хотите результат, который нужен вам, а не ему - то Midjourney вам не поможет. У него просто нет таких возможностей контроля за результатом.
HiLander
Это вы мало книг Пратчетта читали просто... Или сконцентрировались только на основном сюжете "Плоского мира"...