Кнопка шедевр. Ультимативный гид Пражской медиашколы по Midjourney

Злата Понировская
7/28/2022
Нравится? Поддержите нас!
Будем рады вашим донатам на любую сумму
Злата Понировская
AI Adoption Facilitator. Главный специалист по связям с AI в Пражской медиашколе, опытный продюсер и руководитель образовательных программ.

Домик на Discord

Чтобы начать генерировать изображения из текста c нейросетью Midjourney, вам нужен аккаунт на Discord. Создатели выбрали его в качестве фронтэнд решения (а не стали пилить апп). Впрочем сайт с пользовательскими аккаунтами и фидом у них тоже есть. Про Discord мы уже рассказывали, он классный: что-то среднее между мессенджером и площадкой для аппов (дискорд-ботов). Здесь все заточено не для продвижения отдельных каналов, а во имя взаимодействия и сотрудничества пользователей. Конечно, главные площадки для экспериментов с нейросетями и в т.ч text-to-image, это ноутбуки в Google Collab  и репозитории Github.  Но давайте оставим это на продвинутый уровень и курс, а пока сосредоточимся на Midjourney и ее возможностях.

Регистрация

Пользователю предлагается путешествовать между ботом на Discord, в котором вы будете создавать изображения, и многопользовательским web-интерфейсом, в котором хранится его архив,  а так же доступен поиск по архивам и профилям других юзеров. 

1. Логин с регистрационными данными  Discord в web-интерфейс — midjourney.com

2. Вход в канал Discord — discord.gg/midjourney

Web-версия midjourney ( июль 2022). В ней пока нельзя общаться с нейросетью, но можно смотреть на свои и чужие работы и делать поиск по картинкам и промптам:

Prompt

Наш мем "Кнопка шедевр”  больше не мем. Она существует! Только не кнопка, а скорее волшебные слова: prompt, которыми автор описывает для AI идею изображения. 

Структуру prompt мы опишем так: 

Объект :: Оптика :: Рендер*  

Или еще короче: 

Объект :: Параметры

Новички, для которых в канале mj на Discord есть отдельные комнаты (rooms), начинают просто с описания объекта, и тоже норм получается. 

*У других участников процесса, включая собственно искусственный интеллект, может быть совсем иное мнение о структуре промпта.

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

Ввод задания:   /imagine prompt:

Итак, вы в канале midjourney и вы знаете как описать объект, его положение и окружение:  “На диване лежит Маша, одетая, как обычно, в черное”  (Здесь и далее “Три сестры”, А.П. Чехов)

On the sofa Masha is lying, dressed as usual in black
В строке ввода сообщения напишите  /Imagine prompt: 
Строка ввода. Для диалога с ботом поставьте "/" в начале сообщения. Результат через некоторое время появится в Inbox

Маша одета по всем правилам сообщества, это хорошо. И вы сообщили цвет — это тоже хорошо. А вот “как обычно/as usual” и всякие темпоральности — это странный запрос для AI, генерирующего статичное изображение. Мы попробуем и с ним и без него, для этого обратимся к боту дважды: 

Пишем в строке для ввода:
/Imagine prompt: On the sofa Masha is lying dressed  as usual in black

нажимаем ввод, изображение улетает боту. И во второй раз: 

/Imagine prompt: On the sofa Masha is lying, dressed in black

Желтой стрелочкой на картинке выше показано, где у вас в Discord вся личная переписка с ботом. Берите обязательно! Пригодится, чтоб не крутить ленту бесконечно, ведь в канале вы создаете изображения параллельно с другими пользователями и их результаты вам тоже видны. Засекретить свои результаты можно, но это стоит отдельных денег. Здорово то, что вы можете видеть, как работают другие, как устроены их промпты, и даже лучше — можете брать сделанные ими изображения и докручивать их самостоятельно; 

Первые результаты

Из Inbox,  можно перейти к изображению (кнопочка Jump).

Перед вами 4 варианта будущего изображения c набором команд. Можно масштабировать( U — upscale) избранные, или запросить новых версий (V — versions). Мы попросили увеличить первое и сделать варианты 4-го (U1 и V4).

U -upscale; V - генерация четырех новых версий из данной.

Результат Upscale: 

U1

Новые версии Маши: 

V4

Формат

Формат изображений по умолчанию 1:1, если нужно поменять aspect ratio, то в самом конце промпта нужно добавить _две коротких черточки без пробела_ и отношение сторон "--ar 3:4"

Горизонтальный/вертикальный снимок: --ar 16:9,  --ar 9:16

- - -

Так можно развлекаться довольно долго (проверено), но можно развивать свой словарь для общения с mj дальше. Вы еще с нами? Маша ждет.

Понравился материал? Вы можете поддержать нас любой суммой.

Image prompt

Если взять ссылку на изображение, .jpg или .png, и сделать ее частью текстового prompt, то можно получить любопытные результаты. Текстовый промпт не будет вести себя как фильтр по отношению к загружаемой картинке. Скорее он рассматривает такую картинку как источник стиля, а не наоборот. 

Синтаксис Image Prompt

Для теста Image Prompt мы добавили  к Маше вот эту розовую картинку, ее нейросеть создала нам днем ранее.

--iw (image weight) это насколько подгруженный .png или .jpg референс повлияет на результат. По умолчанию оно 0.25, мы берем больше. 

https://i.mj.run/a889b04c-8301-4c8c-85d4-c650a602218a/grid_0.png 

И вот что получилось:

*В этом промпте мы поменяли местами "маша" и "диван" — без этого Машу было не видно.

Нейросеть обучена понимать не только язык команд, но и обычный текст. Это называется NLP - Natural Language Processing. В нашем случае получилось, что диван, стоящий в промпте на первом месте буквально заслонил собой Машу. Поэтому мы поменяли их местами и уточнили prompt:

"Masha is lying on the sofa :: dressed in black" 

Дальше начинаются метания:  Может быть что диван Маши находится в лесу? Запросто. А можем мы представить, что он залит утренним светом? Конечно. И еще можем сообщить ему стиль, имя художника, эпоху. И это орая часть prompt-задания, которую пока умеет писать относительно небольшая группа людей, и вы сейчас войдете в число этих немногих. 

Синтаксис prompt

Как поскорее заговорить на языке ai, чтобы уболтать его делать то, что вам хочется? Очевидно, есть пути длинною в жизнь- разобраться в параметрах и операторах (об этом будет ниже, и да, длинно), пробовать, ошибаться, и подсматривать за тем, как формулируют свои промпты пользователи, работы которых вам нравятся (Это можно делать через фид).  Но есть еще один способ, который может вам пригодиться - начать с использования бесплатных сторонних ассистентов/переводчиков, чтобы побыстрее набрать словарный запас и привыкнуть к синтаксису. 

Пока работают два варианта -

1. Помощник на минималках Prompt helper - midjourney-prompt-helper.netlify.app. Сделан под первый релиз mj, не учитывает огромного количество возможностей, но зато меньше шансов в них запутаться. 

Интерфейс помощника Prompt Helper

2. Навороченная Promptomania - promptomania.com/prompt-builder Огромный выбор настроек, есть визуализации свойств и слов. (Но у нас почему-то с ним такая ерунда получается, что простенький Helper хочется рекомендовать даже больше, чем этот маниакальный комбайн.

Интерфейс promptomania c визуализацией слов в привычные иконки фильтров (2022)

Постарайтесь не выбирать слишком много параметров, и оставлять себе и Маше пространство для итераций. Мы вот набрали, да еще от жадности добавили второе событие (пожар) и Маша с диваном исчезли. Хотя красиво конечно: 

Тест promptomania

Вариант 2. Разобраться в Параметрах

Стили, Оптика и Рендер.  

Кто придумал дурацкие названия вроде “octane render” или “v-ray” сказать невозможно — просто разный софт создавался, развивался, а потом по изображениям, созданным с его помощью, и их мета-данным учили нейросети. В итоге вышло так, что AI понимает многие слова, которых живой человек не знает или не помнит. Например, параметры хранящиеся в exif. Посмотрите на этот величайший из читсетов, — он показывает как реагируют на разные волшебные слова нейросетевые модели CLIP и VQGAN. 

Фрагмент читсета. CLIP + VQGAN keyword comparison by @kingdomakrillic

Если пользоваться этими словами, можно получить что-нибудь удивительное. Здесь мы попросили mj включить параметры рендера из 3d редактора Maya: 

Rendering in Maya
Рендер в стиле 3d редактора Maya

Результат: 

Upscale, Render Maya, 16x9

Следующий эксперимент, — рендер 3d редактора Z-brush, но добавив к этому Прерафаэлитов, чтобы изображение наверняка получилось цветным: 

Pre-Raphaelite Brotherhood Art Movement. Screenshot from Google

Рендер Z-Brush и Прерафаэлиты

Сохранять картинки из профиля одним кликом поможет сценарий к браузерному расширению Tampermonkey. Соответственно работает он не в дискорде, а в браузерной части - midjourney.com/app

Ключевые слова

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

Библиотека стилей

Оптика

Если вы фотографируете, то попробуйте говорить с mj на языке фотографии. Марки фотоаппаратов и параметры пленки, настройки камеры и объектива, - mj во всем разбирается, хоть и своеобразно;

Позиции камеры mj понимает лучше, чем фокусное расстояние. Используйте extreme close up / close up / medium shot / long shot / extreme long shot / bird view  || Фокусное расстояние:   focal length  --14mm (wide angle), --500 mm (narrow angle), лучшие кадры, все же -- 35mm || Zoom out:  --q 0.25 Zoom in: --q 1.25 . Если не нужно зерно, не нужно идти выше, чем --ISO200 . А здесь - исследование влияния скорости затвора.

Коллекция тестов фотографических параметров на GitHub - github.com/Midjourney-Photography и ее Tips and tricks (eng) 

Фокусное расстояние 120mm

 

Фокусное расстояние 24mm

Разговорный минимум

На языке mj вам нужно запомнить всего два знака, это двойное двоеточие  

 ::

и двойное короткое тире без пробела

-- 

::  Двоеточия

У частей промпта есть веса, — сила с которой слово или несколько слов будут влиять на результат. Записывать их можно поставив :: в конце логической части и сразу за ним, без пробела, числовое значение веса. Если число не добавлять, то :: будет прочитан как смысловой разделитель, и вес распределится поровну, как на первой картинке.  

Weights :: Вес

--  Тире и тире

После него встречаются разные числовые параметры: 

--ar 9:16 — уже знакомый вам aspect ratio;

--h и --w (высота и ширина, можно использовать один параметр) 

--iw5 (image weight) вес фотографии референса, который по умолчанию 0.25. К фотографии нельзя добавить обычный значок веса :: - тк тогда сломается ссылка на фотографию; 

--120mm (фокусное расстояние) 

--s - стилизация и -q -качество. По умолчанию --s2000, предельные значения до 60000 , а качество --q1 и до пяти. Наглядно тут и тут (фотоаппарат Kodak) 

Фрагмент таблицы из GitHub репозитория. Полностью здесь.

Но иногда его используют и вместо разделителя с весом*, например в --no (например --no people = people::-0.5 ) поди пойми   --no dof — запретить глубину (depth of field); -- no blur попросить не блюрить;

Как разобраться в устройстве черного ящика mj на чайниках. 

Классное исследование начатое художником и инженером Рексом Вонгом (Rex Wang), вклад в которое внесли уже многие энтузиасты. На очень простом примере — деревянном чайнике — Рекс и компания испытывают разные свойства промптов. Если нет времени всему научиться на собственных ошибках, вам точно сюда:  https://rexwang8.github.io/resource/ai/teapot

(В частности,  здесь наглядно про weights, aspect ratio and seed )

На чайнике действительно гораздо понятнее, чем на нативных примерах со сферами: 

Utah Teapot, by Rex Wang (a screenshot from Rex's react-js portfolio)

Заметно, что если вы задали цвет объекта, то высока вероятность, что все окружение будет тоже подкрашено этим цветом. 

Но все изменится, если вместо этого взять флуоресцентные параметры фотосъемки: 

А можно без параметров? 

Да, считается, что тогда AI склоняется к фотореализму. Как по нам, так скорее к ранним фильтрам в Instagram и Hipstamatic: 

Объект :: Параметры (в последний раз!) 

Возвращаемся к структуре промпта.

Итак, параметры можно определять самыми разными художественными стилями и техниками, параметрами освещения, моделями камеры, названиями софта для рендера и графических редакторов и даже названия популярных ресурсов и библиотек (behance, art station, etc). И даже можно задавать им числовые значения с помощью операторов  -- и ::. В заключительной части еще несколько слов о том, как можно сотрудничать с Midjourney (Частично переведены с сайта разработчика и еще не проверены в бою).

  • Объект Что, Где, Как — лучше писать главное в начале. Хотя, стоит признать, что иногда в самом начале описывают время суток и погоду и прочий стиль и  свет и тоже нормально получается. 
  • Медиум — <a watercolor painting of a landscape> <a child's drawing of a home>, painting, drawing, sketch, pencil drawing, w, woodblock print, matte painting, child's drawing, charcoal drawing, an ink drawing, graffiti, watercolor painting, fresco, stone tablet, cave painting, sculpture, work on paper, needlepoint.
  • Материалы  — пластик, шерсть, или диктатор из червяков - все получается.
  • Стили — <Red sofa by Jeff Koons>//<..in style of> Библиотека художников с примерами изображений (их там реально тысячи, хотя многих  любимых нет).

- Exel-Список художников, которых знает нейросеть, с референсами по стилю.

- Wiki-Названия художественных жанров и стилей.

Не только художники 

  • Хорошо работают упоминания литературных и киножанров и их героев, а художников вполне можно заменить именами режиссеров или названиями известных фильмов и сериалов. Вот, например, лошади в сериале Stranger Things:

Верхний ряд  1.-3.</imagine prompt:  pink horse in stranger things, dark sky, lightning, octane render, 8k, extreme detail> 4. </imagine prompt: upside down trailer from stranger things, slimy vines, dark sky, lightning, octane render, 8k, extreme detail>

Нижний ряд 1.-4</imagine prompt: pink horse in stranger things>

Вдогонку: 

  • Вместо: “a hat that’s not red” Писать: “a blue hat”
  • Вместо: “a person but half robot”      Писать: “half person half robot” (возможно, нам не стоило заказывать ai рисовать лежащую на диване "Машу" а нормально попросить "молодая женщина в черном викторианском платье " 

  • AI плохо понимает или игнорирует частицы “но”, "не", "ни", "кроме", "без" ("not", "but", "except", "without")
  • Вместо: “monkeys doing business”     Писать: “three monkeys in business suits”
  • Если гугл хорошо знает объект, пусть и вымышленный — сеть будет знать что ей делать: Попробуйте: wizard, priest, angel, emperor, necromancer, rockstar, city, queen, zeus, house, temple, farm, car, landscape, mountain, river;
  • Если хотите, чтобы mj удивила вас, попробуйте: “a sense of awe”, “the will to endure”, “cognitive resonance”, “the shores of infinity”, “the birth of time”, “a desire for knowledge”, “the notion of self”. 

  • Промпты к этому гиду и другие эксперименты в mj аккаунте у Златы: здесь например, произошло невероятное: в какой-то момент AI решил локализовать Машу в Золотом Кольце, хотя никаких подсказок по локации мы ему не давали:
А. Чехов, "Три Сестры" , Третий акт // A.P. Chekhov, Three Sisters. Act Three

P.S.

  1. Мы проводим #Mashachallenge, с картинками сгенерированными на основе промпта о Маше — присоединяйтесь;  
  2. Подписывайтесь на наш дискорд (на всякий случай).
  3. Делитесь этим гидом с теми, кого вам бы хотелось нейтрализовать на пару-тройку дней.
  4. В конце августа - начале сентября у нас стартует курс по Midjourney для тех, кто работает в digital media. Следите за новостями в Телеграм-канале медиашколы.
  5. Небольшой donation школе - лучшая благодарность за этот гид, 

Подпишитесь на наш канал в Telegram!
И узнавайте первыми о новых курсах и стипендиях

Рекомендуемые курсы

Алексей Навальный во вселенной Рика и Морти: Евгений Никитин о работе над персонажами

Алексей Навальный во вселенной Рика и Морти: Евгений Никитин о работе над персонажами

1/4/2024

Новая команда /tune в Midjourney: показываем на яйцах

Новый инструмент Midjourney, который позволяет создавать свой стиль

24/11/2023

Stable Diffusion 2.0 новая версия нейросети

Команда stability.ai анонсировала выход Stable Diffusion 2.0. Рассказываем самое интересное.

25/11/2022
Мастерство Midjourney
Наш самый популярный курс, секреты которого ни за что не покажут в Youtube. Студенты и преподаватели Пражской медиашколы работают с самой красивой моделью современности с момента ее появления. Это сотни тысяч генераций, выставки, коммерчески успешные проекты, знания и инсайты. Мы всё сохраняем, структурируем, и передаем новому потоку. Чем бы вы не занимались в обычной жизни - искусством, квантовой физикой или расследованиями - вам понравится этот курс и будет полезен.
Узнать больше