(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; m[i].l=1*new Date(); for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }} k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); ym(93790508, "init", { defer: true, clickmap:true, trackLinks:true, accurateTrackBounce:true }); ym(93790508, 'hit', window.location.href);

Новая документация, генерация фрагментов и тюнер стилей — делимся обновлениями в Midjourney V5

В тексте наш backend-разработчик Вова рассказывает о нововведениях и различиях между релиз- и альфа-версией пятой Midjourney. Спойлер: разработчики уделили внимание не только процессу генерации, но и UX.

Привет! Меня зовут Вова, я backend-разработчик в Selectel. В прошлом году Midjourney перешел на пятую версию, а недавно объявил об альфе шестой. Мне захотелось запечатлеть хронологию нейронки, поэтому начал с актуальной версии — 5.2. Если формат покажется интересным, то протестирую шестую Midjourney и поделюсь результатами с вами.

Используйте навигацию, чтобы выбрать интересующий блок:

Генерации

Хаос и странности

Запрос: woman portrait soft sunset light --seed 2131932819, --chaos 0 (слева), --chaos 100 (справа).

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

  • --chaos или --c. Принимает значение от 0 до 100. По умолчанию равен 0. Чем больше значение, тем более непохожими могут быть изображения в сгенерированной сетке.
  • Экспериментальный параметр --weird. Принимает значение от 0 до 3000. По умолчанию равен 0. Чем больше, тем более странной будет генерация.
Запрос: woman portrait soft sunset light --seed 2131932819 --weird 3000 (слева, справа).

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

Стоимость подписки на месяц не изменилась и составляет $30. Этот тарифный план включает 15 часов генерации в приоритетном режиме и безлимит в пониженном приоритете. Параллельно можно запускать до трех генераций.

Частичная генерация

Запрос: cat --seed 1123391209 (слева, справа).

В Midjourney существенно расширили функциональность для обработки изображений после первичной генерации. Сегодня доступны такие опции:

  • Vary (Strong) — генерирует новое изображение с опорой на текущее;
  • Vary (Subtle) — генерирует новое изображение, схожее по композиции и стилю, но более детализированное;
  • Vary (Region) — исправляет фрагменты;
  • Upscale (2x) / Upscale (4x) — увеличивают ширину и высоту изображения в указанное количество раз. Исходное изображение (1024x1024) можно увеличить до 2048x2048 или 4096x4096 соответственно;
  • Zoom Out (2x, 1.5x, Custom) — генерирует «рамку» вокруг исходного изображения, будто мы удаляемся назад;
  • Pan (⬅➡⬆⬇) — «продлевает» изображение в указанную сторону.
Пример: изменение фона.

Ура — в списке доступна самая желаемая функция: теперь можно перерисовать отдельные фрагменты изображений. При нажатии на кнопку Vary (Region) открывается редактор, в котором можно выделить прямоугольную или произвольную область и отредактировать запрос. Правда, текущий редактор не самый удобный.

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

Однако функция перерисовки уже есть — этого пока достаточно. Уверен, в будущем редактор станет более удобным. Главное, что это не единственная функция, которой может похвастаться пятая версия.

Отличия Subtle и Strong. Источник.

По умолчанию кнопки Vary (Strong) и Vary (Subtle) изменяют изображение по своему усмотрению, но через команду /settings можно включить режим Remix. Это позволит уточнить запрос для перегенерации.

Видео

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

Кроме того, в Midjourney v5 создавать видео можно не только для первичных генераций, но и вариаций. Если изначальный запрос содержит параметр --video, все перегенерации будут с видео.

Массовые генерации

Массовые операции — это еще одна функция, за которую хвалили Stable Diffusion. Теперь она доступна в Midjourney.

Дисклеймер: команды ниже запускают множество параллельных запросов, каждый из которых тарифицируется по отдельности.

Комбинации

Midjourney реализует синтаксис для создания комбинаций при запросе.

Что важно учитывать:

  • В фигурных скобках через запятую перечисляются варианты;
  • Запятая в варианте экранируется обратным слэшем;
  • Вариант может быть вложенным списком вариантов;
  • Если в запросе несколько списков, используется их декартово произведение;
  • Варьировать можно все: ссылки на изображения, части запроса или параметры.

Например, запрос /imagine A {sculpture, painting} of a {seagull {on a pier, on a beach}, poodle {on a sofa, in a truck}} превратится в следующие команды:

/imagine A sculpture of a seagull on a pier. /imagine A sculpture of a seagull on a beach. /imagine A sculpture of a poodle on a sofa. /imagine A sculpture of a poodle in a truck. /imagine A painting of a seagull on a pier. /imagine A painting of a seagull on a beach. /imagine A painting of a poodle on a sofa. /imagine A painting of a poodle in a truck.

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

Тюнер стилей

Тюнер стилей (style tuner) — это необычный и дорогой инструмент для создания визуального стиля на основе опроса.

Алгоритм работы:

  • Пользователь вводит команду /tune с желаемым запросом;
  • Midjourney уточняет количество стилей: 16, 32, 64 или 128 — генерация одного стиля занимает примерно 0.01 час на GPU;
  • В течение двух минут будет сгенерирована ссылка на тюнер — например, такая;
  • Пользователь выбирает один стиль из пары изображений или в случайном порядке. При этом можно не выбирать, если в первом варианте оба изображения не понравились.
  • Тюнер генерирует уникальный код, который можно использовать в запросах. Например, так: /imagine cat --style wi1MSMe3ruIbeSp0L8bt6T.
Пример тюнера в режиме «все изображения в случайном порядке».

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

Тюнер стилей доступен только для fast-генерации, так что это дорогое удовольствие. Как можно бюджетно воспользоваться этой функциональностью?

  • Используйте случайные стили. Например, параметр --style random-X-Y, где X — это количество стилей (16, 32, 64 или 128), а Y — это процент выбранных стилей (если не указать, то по умолчанию 75%).
  • Выполните команду /tune. Если кто-то уже создавал тюнер с таким же запросом, бот предложит ссылки.
  • Подглядите коды стилей у других пользователей. Код стиля можно подставить в ссылку https://tuner.midjourney.com/code/<код стиля>. Однако этот способ не работает для кодов, которые сгенерированы случайным образом.

Тюнер стилей совместим с параметром chaos, но не работает с параметром weird.

Работа с текстом

img2txt

Один из интересных подходов для генерации схожих изображений — конвертация изображения в текст с последующей генерацией на основе последнего.

Арты Culpeo Fox, гном из Half-Life и Джонни Сильверхенд.

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

Токенайзер

Ранее я затрагивал тему значимости определенных слов при генерации изображений. Тогда это было скорее наблюдение, а сейчас для этого есть отдельная команда — /shorten. Она возвращает список важных токенов, которые повлияют на генерацию, а также сокращенные варианты пользовательских запросов.

Кнопка Show Details позволяет посмотреть веса токенов.

Интересное наблюдение: в запросе portrait of beautiful woman токенайзер считает лишним слово woman. И если запрос состоит исключительно из portrait, то Midjourney в 100% случаев сгенерирует портрет девушки.

Изменение на сайте

Сайт midjourney.com — это галерея пользовательских изображений. Раньше она частично решала вопрос доступа к своим генерациям и сохраняла лишь таблицы изображений, а одиночные картинки загружались только после апскейлинга. Так что «вырезать» четвертинку все равно нужно было вручную. Сейчас эту проблему исправили: все изображения, в том числе со старых версий Midjourney, в галерее доступны раздельно.

На скриншоте выше видно интригующую заглушку. Кажется, интерфейс генерации изображений появится в веб-интерфейсе! Документация разделилась на две ветки: Current и Legacy. При этом Legacy — это новая краткая документация по моделям ранних версий, а не просто «свалка» прошлогодней документации. Что из этого получится — увидим в будущем.

Интересуетесь искусственным интеллектом и нейросетями? Подписывайтесь на блог Selectel, чтобы не пропустить новые материалы по этим темам.

Читайте также:

0
5 комментариев
Дарья Голубева

неплохая нейросеть, пока нет равных, но это пока

Ответить
Развернуть ветку
Selectel
Автор

Дарья, как думаете, за какими функциями будущее?

Ответить
Развернуть ветку
Дарья Голубева

Сора уже показала от чего у людей сносит крышу

Ответить
Развернуть ветку
Дмитрий Симаков

Увлекательно, что теперь можно перерисовывать фрагменты изображений, прикольно в общем

Ответить
Развернуть ветку
Selectel
Автор

Дмитрий, вы уже успели протестировать?

Ответить
Развернуть ветку
2 комментария
Раскрывать всегда