Найти тему

Pika, нейросеть для создания видео: ожидания и реальность

Оглавление
Пока что вы даже не представляете, сколько всего пришлось пережить этому медвежонку.
Пока что вы даже не представляете, сколько всего пришлось пережить этому медвежонку.

Пару дней назад у меня вышел короткий видеопост-затравка к сегодняшней статье, в котором исключительно из спортивного интереса сравнивались способности нейросети "Кандинский" в той части, которая касается генерации видео, со способностями новой нейросети Pika.

Я так уверенно пишу "новой" потому, что лично мне для получения права зарегистрироваться пришлось оставить заявку и подождать целую неделю, а уже сейчас Pika позволяет сразу залогиниться каждому, у кого есть аккаунт в Google или Discord, и ждать больше не нужно. По всему выходит, что за неделю моего ожидания платформу запустили уже официально.

Так или иначе, после того как вы увидели, что она умеет, пора рассмотреть её поближе и поизучать её возможности.

Часть 1. Ожидания

Pika — разработка компании Mellis Inc., зарегистрированной в Калифорнии. А ещё в Калифорнии находится Кремниевая долина и всё, что из этого вытекает. Поэтому любая технология оттуда родом неизбежно вызывает высокие ожидания.

В случае с Pika ожидания подкрепляются промо-роликом, размещённым на странице регистрации, в котором потенциал нейросети расписывается ну очень красочно. Помимо убедительно выглядящих видео в разных жанрах, Pika хвастается фантастическими возможностями редактирования. Вы можете, например, выделить объект на видео и заменить его другим, или добавить новый объект туда, где его раньше не было.

Можете прямо сейчас перейти на pika.art и посмотреть этот ролик сами.

Приветственная страница Pika.art
Приветственная страница Pika.art

Впечатляет? Ещё бы.

Но прежде чем мы радостно начнём свой путь к "Оскару", зайдём на сайт и осмотримся.

На главной странице всех входящих ожидаемо встречает галерея работ. В верхней левой части окна расположен переключатель между этой общей галереей (Explore — "исследуйте") и вашей персональной (My library — "моя библиотека"), которая начнёт создаваться после первой же генерации.

В нижней части окна — поле для ввода текста, кнопка-скрепка "прикрепить" (здесь можно загрузить своё изображение или видео в качестве исходного материала для генерации) и три комплекта инструментов.

-3

Первый комплект, который скрывается за кнопкой-рамкой, включает шесть вариантов пропорций кадра (Aspect ratio) и ползунок, регулирующий количество кадров в секунду (Frames per second). В отличие от Stable Video Diffusion, этот параметр никак не связан с продолжительностью будущего ролика: при любой частоте кадров хронометраж составит 3 секунды.

Pika, панель настроек пропорций кадра. Окно браузера увеличено
Pika, панель настроек пропорций кадра. Окно браузера увеличено

Второй комплект инструментов открывается по щелчку на кнопке с изображением камеры и содержит настройки направления её движения (Pan, Tilt, Rotate и Zoom), а также ползунок, регулирующий степень анимации (Strength of motion). По умолчанию ползунок установлен в положение 1, но я подвину его на одно деление вправо, до 2.

Pika, панель настроек камеры. Окно браузера увеличено
Pika, панель настроек камеры. Окно браузера увеличено

Третья кнопка открывает три стандартные настройки модели Stable Diffusion: Negative prompt (отрицательный запрос), Seed (зерно) и Consistency with the text — то же, что Guidance scale или CFG, соответствие запросу. Если вы не знаете, что всё это значит и как оно работает, подробно об этом можно почитать в отдельной статье.

Pika, панель настроек Stable Diffusion. Окно браузера увеличено
Pika, панель настроек Stable Diffusion. Окно браузера увеличено

С настройками всё понятно, пора приступать к практике. Пусть на видео будет что-нибудь милое и доброе, например, плюшевый мультяшный медвежонок в жёлтом плаще-дождевике, который счастливо топает под дождём.

Ввожу текст и жму на кнопку со звёздочкой (которая здесь тоже, как и в Dream, подозрительно напоминает логотип Дзена). Начинается генерация, при этом прогресс отображается в карточке видео — очень хорошая, с заботой о пользователях, деталь UX. Процесс занимает около минуты.

Кот уже что-то подозревает.
Кот уже что-то подозревает.

По моим ожиданиям, на выходе должно было получиться что-то вроде этого...

Спасибо, Leonardo, теперь можешь быть свободен.
Спасибо, Leonardo, теперь можешь быть свободен.

...но Pika приготовила мне сюрприз.

Часть 2. Реальность

Поскольку Дзен не позволяет встраивать анимацию в статьи, мне придётся обходиться раскадровками. В каждом из следующих примеров из роликов взято по четыре кадра: по одному из начала и конца, и два наиболее выразительных из середины.

Итак, плюшевый медвежонок в жёлтом дождевике, весело шагающий под дождём. Дубль первый:

-9

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

1. Retry — попробовать ещё раз

Ладно, не получилось с первого раза, с кем не бывает. Попробую снова: для этого в Pika предусмотрена кнопка Retry.

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

-10

Результат попытки номер два:

-11

В этой версии медведь большую часть времени стоит столбом с ошалелой мордой, затем внезапно срывается с места, прыгает в лужу и исчезает за кадром. О жёлтом дождевике напоминает только непонятный лоскут на медвежьем боку, который в конце отваливается. Атмосфера по-прежнему гнетущая.

Возможно, мне не следовало увеличивать значение параметра Strength of motion? Попробую вернуть его к значению по умолчанию (1) и сгенерировать ролик ещё раз.

-12

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

2. Reprompt — переписать подсказку

Пытаясь хоть как-то исправить положение, я решаю избавиться от уточнения про мультяшный стиль. Ну, может, мультики — не самая сильная сторона Pika.

Рядом с кнопкой Retry прямо под видео находится кнопка Reprompt. Очевидно, она здесь для того, чтобы можно было корректировать описание, не выходя из текущей генерации. Жму на неё , и вокруг превью ролика появляется рамка:

-13

Собственно, это всё. Текст под видео остаётся нередактируемым. Никаких указаний на то, как именно я могу его изменить. Единственное место, где можно переписать текст, — основное поле внизу. В нём я и удаляю слова про мультяшный стиль, жму кнопку со звёздочкой, и генерация начинается в новой карточке. Назначение кнопки Reprompt осталось для меня непонятным.

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

-14

Но ничего, меня это не остановит. Ещё не все возможности Pika опробованы, так что продолжу опыты. Разверну видео во весь экран (всплывающая кнопка-рамка в правом нижнем углу кадра), чтобы было сразу видно все доступные инструменты:

Карточка сгенерированного видео, развёрнутая на весь экран, Pika
Карточка сгенерированного видео, развёрнутая на весь экран, Pika

(Три точки в правой части панели инструментов на самом деле — результат плохой вёрстки и ничего за собой не скрывают: всё, что может предложить Pika, уже перед вами.)

3. Edit: Modify region — изменить область

Если верить промо-видео на странице приветствия, Modify region — это волшебный инструмент, который позволяет изменить или добавить в кадр любой объект. Раз с жёлтым дождевиком ничего не вышло, попробую надеть на медведя хотя бы красную бейсболку.

Жму на кнопку Edit, и появляется всплывающее окно с редактируемым роликом, полем для ввода текста и двумя вложенными инструментами: Modify region и Expand canvas. Выбираю Modify region, и поверх видео появляется подсвеченный прямоугольник, положение и размеры которого можно изменять.

Подгоняю прямоугольник под нужные размеры и ввожу в текстовое поле описание red baseball cap (красная бейсболка). Опять же, если верить промо, на голове медведя должен появиться идеально сидящий головной убор.

Рабочее окно Modify region, Pika
Рабочее окно Modify region, Pika

После нажатия на кнопку со звёздочкой снова приходится подождать минуту, пока завершится генерация ещё одного видео. Результат выглядит точно так же, как и оригинал, за исключением одной новой детали:

А может, это пакет от дождя.
А может, это пакет от дождя.

Если хотите узнать моё мнение, это не красная бейсболка, а белая ермолка. Или вообще полотенце. Реальность снова нанесла уверенный удар по ожиданиям.

4. Edit: Expand canvas — расширить холст

Вторым подпунктом в меню Edit числится Expand canvas. Жму на него, и Pika предлагает выбрать новые пропорции кадра из шести вариантов. Выбираю квадрат, 1:1. Здесь можно подвигать исходный кадр по холсту или даже изменить его размеры, чтобы указать, с какой стороны или сторон и насколько нейросеть должна будет дорисовать сцену. Я оставлю всё как есть по умолчанию: по центру.

Рабочее окно Expand canvas, Pika
Рабочее окно Expand canvas, Pika

После минутного ожидания кадр расширен до квадрата, и медведь внезапно оказывается сидящим в луже. Вот это сюрприз!

-19

Но в целом функция сработала как обещано.

5. Add 4s — добавить 4 секунды

В отличие от "Кандинского", в Pika нельзя сразу задать описания нескольких сцен, которые могли бы быть объединены в один общий ролик. Зато вы можете увеличивать хронометраж уже сгенерированного видео при помощи кнопки Add 4s. В компактном виде эта кнопка скрывается за тремя точками в правой части панели инструментов, расположенной под видео.

После того как вы нажмёте на Add 4s, вам будет предложено отредактировать описание:

-20

В принципе, этого можно и не делать: Pika просто увеличит хронометраж существующего ролика на 4 секунды, ничего в нём не меняя. В таком виде это выглядит довольно скучно, поэтому я добавлю в кадр новый элемент. Например, проезжающую мимо машину. Результат:

-21

Движение камеры не изменяется, но во второй части ролика, то есть начиная с четвёртой секунды, за спиной медвежонка действительно проезжает автомобиль.

К удлинённому ролику можно добавить ещё 4 секунды, а потом ещё 4. На этом всё: максимальное количество прибавлений — три, максимальный хронометраж — 15 секунд.

Спойлер: добавление объектов работает не всегда. Вот прямо совсем не всегда. Больше половины моих попыток закончилось ничем: новые объекты просто не были добавлены. Или же нейросеть попыталась добавить объект, но что-то пошло не так. Вот что получилось у меня вместо безобидного лягушонка, прыгающего в лужу, который должен был по задумке появиться в третьей части видео при повторном добавлении 4 секунд (и снова здравствуй, ночной кошмар):

Не смотрите на это перед сном.
Не смотрите на это перед сном.

6. Upscale — увеличить

Кнопка Upscale увеличивает линейные размеры видео вдвое, то есть площадь кадра — в 4 раза. Для наглядности вот кадр из оригинального ролика, помещённый поверх кадра после увеличения:

Оригинальный кадр — 1280х720 px, увеличенный — 2560х1440 px.
Оригинальный кадр — 1280х720 px, увеличенный — 2560х1440 px.

После увеличения видео все прочие инструменты становятся недоступны. Поэтому увеличение — финальный шаг обработки.

Круто или нет?

И что у нас в итоге? Если оценивать чисто номинально, то заявленных функций Pika работает больше, чем не работает. Но не работают, увы, самые интересные. Или работают, но не всегда и не совсем так, как хотелось бы.

С другой стороны, это совсем новая платформа, и её усовершенствование гарантированно продолжается. Поэтому стоит немного подождать и посмотреть, что будет, скажем, через месяц. Да и уже сейчас Pika генерирует намного более стабильную и реалистичную анимацию, чем даже Stable Video Diffusion, не говоря уже о "Кандинском" (прости, друг).

Вот только с рекламой они поторопились.

***

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