Наблюдать за гонками графических нейросетей становится всё интереснее и интереснее.
Теперь, когда созданием изображений даже в HD-качестве уже никого не удивишь, различные платформы начинают привинчивать к себе всякие дополнительные примочки, и на этой почве зарождается настоящая конкурентная борьба: кто раньше всех представит новую фичу, у кого она мощнее, у кого какие прилагаются к ней бонусные плюшки, и так далее.
Прошлый год в моём блоге завершился под знамёнами KREA, представившей в своей бета-версии генерацию изображений в реальном времени: картинка создаётся на ваших глазах, пока вы печатаете. Только-только начался новый год, и вот уже Leonardo AI открывает ранний доступ к точно такой же функции под названием Realtime Gen.
NB: ранний доступ означает, что на момент выхода этой статьи генерация в реальном времени может быть доступна не всем пользователям платформы Leonardo AI (хотя я не могу сейчас это проверить). Обычно ранний доступ к новым функциям выдаётся тем, кто относительно давно и регулярно пользуется платформой. Если вы не находите у себя в меню такого пункта, не огорчайтесь. Рано или поздно разработчики откроют его для всех.
Сегодня посмотрим, чем, кроме названия, отличается Realtime Gen в Leonardo от Real-Time Generation в KREA, и есть ли у одного из них явные преимущества перед другим. Но для начала познакомимся с интерфейсом Realtime Gen.
Генерация в режиме реального времени: интерфейс Leonardo AI
Если вы не читали статью про генерацию в реальном времени на платформе KREA, то есть смысл прямо сейчас открыть её в новой вкладке, чтобы иметь возможность параллельно сравнивать два интерфейса и отмечать для себя сходства и различия в их функционале.
Так выглядит окно Realtime Gen на Leonardo. Собственно поле, в котором создаётся картинка, квадратное, как и в KREA. Других вариантов формата пока не предусмотрено. А дальше поехали по пунктам:
1 — первое, что бросается в глаза, хотя далеко не самое важное: Elements, или элементы, которые вы можете добавлять к стилю будущей картинки. О том, что такое элементы в Leonardo и как они работают, подробно можно почитать в отдельном материале, а здесь я останавливаться на этом не буду;
2 — поле для ввода текста;
3 — набор стилей Alchemy, которые также будут влиять на будущую картинку. Обычно они недоступны на бесплатном аккаунте, поэтому этот список для меня выглядит немного подозрительно: не удивлюсь, если через несколько дней он станет неактивным. Впрочем, эти стили могут оставаться доступными только в Realtime Gen. Подробнее о стилях Alchemy и о том, как каждый из них влияет на результат, у меня тоже есть отдельная статья.
4 — кнопка выбора случайного зерна. Действует так же, как кнопка с изображением ростка в KREA, то есть запускает генерацию заново. Есть одно отличие: если нажать на маленький треугольник в правой части кнопки, то появится всплывающее окно с числом зерна, которое можно скопировать либо заменить на своё. Кроме того, список чисел можно перематывать назад и вперёд, возвращаясь к тем зёрнам, которые дали наиболее удачные всходы генерации. Подробнее о зёрнах в графических нейросетях написано... правильно, в отдельной статье.
5 — кнопка окончательной обработки и увеличения изображения. Как и в KREA, в Leonardo картинки создаются сначала в грубом черновом варианте, маленького размера и без деталей. Чтобы получить изображение высокого качества, их нужно отправить на доработку. Она, в свою очередь, может заключаться в простом увеличении либо в увеличении с использованием дорисовки недостающих деталей.
Если нажать на маленький треугольник в правой части кнопки, то вы увидите выпадающее меню, состоящее всего из двух пунктов: Normal Upscale Mode и Creative Upscale Mode. Первый — аналог использования настройки Upscaling factor без AI Strength в KREA, то есть простое увеличение картинки без дорисовки. Второй — аналог использования AI Strength в KREA, то есть с дорисовкой деталей. Он установлен по умолчанию.
Малоприятное отличие состоит в том, что здесь доработка изображений стоит 8 токенов за штуку. Сами по себе токены, конечно, бесплатны и выдаются ежедневно, но дневной бюджет ограничен, поэтому бесконечно генерировать красивые картинки в Realtime Gen не получится.
6 — если вас вполне устраивает маленькое сырое недоделанное изображение, вы можете скачать его, нажав на эту кнопку. (А потом загрузить в KREA для бесплатной доработки, ха-ха).
С интерфейсом разобрались, теперь приступим к генерации.
KREA vs Leonardo: соответствие запросу
Сначала посмотрим, насколько хорошо нейросети понимают текстовое описание, что называется, "с лёту". Я попробую создать изображение изысканной серебряной чаши с вином, но начну с простого короткого запроса A silver chalice (серебряная чаша):
Пока оба участника идут ноздря в ноздрю. Обратите внимание, что в Leonardo стала активной кнопка Creative upscale.
Усложняю запрос, добавив к нему деталей: A silver chalice with emerald leaves (серебряная чаша с изумрудными листьями):
Обе картинки изменились, но по-разному: Leonardo инкрустировал сосуд требуемыми листьями, как он их видит; KREA просто добавила орнамента, изумрудами здесь и не пахнет.
Теперь пора налить вина. Ещё больше расширяю запрос, добавляя к нему ...filled with red wine (наполненная красным вином):
Картинки снова изменились: Leonardo сохранил изумруды, хотя они больше не похожи на листья, добавил на всякий случай настоящих листьев на столешницу и намазал край чаши чем-то красным. KREA просто отчеканила листья.
Впрочем, если несколько раз понажимать на кнопку Random Seed, ситуация может радикально измениться. Здесь Leonardo начинает заметно отклоняться от темы, в то время как KREA, напротив, понемногу догадывается, чего от неё хотят:
Как видно, исключительной понятливостью не может похвастаться ни одна, ни другая нейросеть. Leonardo кажется чуть более сообразительным, но эти проблески разума у него, к сожалению, пока тоже надолго не задерживаются.
KREA vs Leonardo: качество изображения
Теперь сравним качество генерируемых картинок, а для этого сменим тему. Пусть это будет тигр, крадущийся в бамбуковых джунглях.
Вот такой:
Если вы читаете эту статью на смартфоне, вы можете и не заметить, но картинка от KREA заметно меньше: всего 512х512 пикселов. У Leonardo черновой вариант создаётся в размере 672х672 пиксела. Уже на этом этапе резкость и контрастность у Leonardo намного выше, хотя обилие ошибок и грубых линий не позволяет назвать это изображение качественным.
Начинаем процесс улучшения. Для этого в Leonardo жмём на кнопку Creative Upscale, тратим 8 токенов и возвращаемся (самостоятельно, автоматической переадресации не будет) в персональную галерею, где собраны все картинки, сгенерированные в аккаунте. Там через небольшое время и появится итоговое изображение. В KREA жмём на кнопку Send to Enhance & Upscale и переходим (автоматически) в окно Enhance, где ещё раз жмём на кнопку Enhance.
Результат:
Напомню, что для того чтобы открыть картинки в полном размере, нужно сначала кликнуть на них левой кнопкой мыши, затем правой, выбрать "Открыть в новой вкладке", и, наконец, кликнуть левой кнопкой ещё раз.
Вот для сравнения фрагменты изображений в размере 100%:
Контрастность и резкость у Leonardo по-прежнему намного выше, но и грубые линии по-прежнему заметнее (посмотрите на тигриный глаз и поломавшийся зрачок). Изображение KREA в данном случае не отличается такой же чёткостью, зато при увеличении больше похоже на настоящую фотографию, а не на картинку от нейросети. Особенно если не обращать внимания на задние лапы.
KREA vs Leonardo: другие факторы
Которая из нейросетей лучше — я не стану утверждать, потому что всё, как обычно, зависит от ваших целей. И у одной, и у другой платформы есть свои преимущества и недостатки.
Leonardo AI предлагает более гибкую настройку стилей и управление зерном,
зато
KREA позволяет загружать сторонние изображения и не берёт с вас платы.
В KREA в качестве первого шага при обработке можно использовать инструмент Quick Enhance: он увеличивает изображение до 1024х1024 пиксела и прибавляет точности и детализации. На этом этапе вы можете определиться, стоит ли дошлифовывать картинку до конца. А в Leonardo случилась забавная вещь: пока готовились иллюстрации для этой статьи, там тоже существовала двухступенчатая система улучшения. Однако буквально на моих глазах в течение часа всё изменилось, и картинки стали сохраняться сразу в максимальном размере. И правда: зачем размениваться на мелочи?
Обе платформы пока находятся в стадии доработки, так что поживём — увидим, как они будут выглядеть хотя бы через пару месяцев. Но здоровая конкуренция существует, и для нас это очень хорошо: от гонки нейросетей в конечном счёте выигрывают пользователи.