Чат-бот-визажист. Сможет ли нейросеть менять лицо или наносить макияж? Какие проблемы могут возникнуть при создании бота с нейросетью, и как с ними справиться?
Недавно мы сделали бота-нейровизажиста для бренда косметики, который позиционирует себя как футуристичный.
Для запуска новой коллекции им хотелось сделать что-то необычное. Выделиться среди конкурентов, и при этом спецпроект должен был отражать идею бренда, давать пользователю возможность “пощупать” продукт с экрана телефона.
На собственном опыте мы поняли, что нейросети помогают делать крутые спецпроекты. Они всегда получаются необычными, помогают интереснее доносить до людей новую информацию, а самое главное, тепло воспринимаются аудиторией.
После брифа решили, что будем делать бота на основе нейронки. Нам нужно настроить ИИ-модель так, чтобы девушка отправляла свое фото, а нейросеть “наносила” на лицо макияж из новой линейки косметики.
Мы подобные проекты с фейссвапом делали, поэтому сразу согласились. Для размещения модельки, естественно, выбрали Replicate.
Replicate как платформа для подобных проектов - настоящее спасение. Мы получаем сервер с видеокартой и открытым API, не поднимая своих собственных серверов. Это сильно упрощает жизнь и снижает стоимость таких проектов.
Прибавим к этому относительно не высокую стоимость за генерацию, и получим почти идеальный инструмент для спецпроектов с нейросетями.
У нас есть моделька, которая прямо под фейссвап и заточена. Мы пишем промт, подгружаем фотографию, а нейронка генерирует на основе лица новое изображение с учетом промта. Подробнее рассказали об этом тут.
Для тестов промта, взяли фото случайной девочки из интернета.
В процессе подготовки промта выяснился один интересный факт. Наша моделька хорошо делает людей в разных локациях, на фоне разных объектов и т.п. Однако, наносить мейкап у нее получается не очень.
По сути, это был первый тест, а сможет ли нейронка в оттенки и тому подобное? Может, но очень туго.
Посовещались с знакомыми, которые шарят в этой теме и поняли следующее:
- MJ делает неплохо, но не даст нам доступ к их API
- Делать новую модельку - дорого, а также займет много времени
- Можно поискать другие сервисы и нейронки, но как итог, там все еще хуже оказалось.
Ну, тут уже ничего не поделаешь, решили остаться на нашей модельке и шаманить с промтом.
Через несколько часов мы добились таких результатов:
Довольные, скидываем заказчику. Иии… нет
Фото получаются слишком милые и нежные, что не соответствует футуристичной идее бренда
Учли все нюансы и возвращаемся к работе.
Вообще, нейросеть (если ее этому не учить) не понимает, что такое филлер, консиллер и т.п. Поэтому, мы начали чуть ли не на пальцах показывать куда, что и как наносить.
Допустим, “rosy cheeks”, для нейросети звучит не как “розовые щеки”, а как призыв к действию. Рисует розы в руке, розы на заднем фоне, но не оттенок на щеках. Добавьте сюда “peachy shine” и получите еще несколько персиков в разных уголках фото.
И все бы ничего, мы бы с радостью писали простые цвета, по типу “pink cheeks”, “red lips” и т.д., но заказчику то нужны конкретные оттенки, в конкретных местах и с конкретной текстурой.
Еще сутки перебора разных вариантов и мы получаем такой результат:
Произвели некоторые доработки. Скидываем. Победа.
Заказчику нравится, нам тоже, а значит можно проверить, как все будет работать на сервере.
Подключаемся по API, фотки генерируются, все ОК. Опираясь на старый опыт, мы посчитали, что одна генерация нам будет обходиться в диапазоне от 2 до 5 рублей. По сути, заложенных бюджетов нам бы вполне хватило.
Но и тут всплыло несколько неожиданных моментов.
Во-первых, цена на генерацию на репликейте выросла. Совсем чуть-чуть, всего в 2,5 раза (+микроинсульт).
Во-вторых, чтобы держать серверы “разогретыми”, надо один из них поддерживать постоянно включенным, как если бы у нас все время кто-то генерил фотку. По итогу, это ежедневный расход в 6300 р/сутки. Проект длился чуть больше месяца. Если посчитать, то это не совсем то, на что мы рассчитывали.
В-третьих, перед генерацией, модельке надо бутаться (совершать загрузку модели на сервер). Бут занимает 2-3 минуты, а соответственно и за это время мы платим. То есть, картинка генерируется 30 секунд, а бут накидывает кеша еще за 2-3 минуты. соответственно стоимость одной генерации возрастает еще в 4-6 раз.
Ноооо, все обошлось. Чуть-чуть увеличили ориентировочное время генерации и попросили пользователей потерпеть.
Поэтому, мы остались в рамках бюджета, все обошлось.
Конечно, с нейронкой можно было поиграться и просто так, но также была возможность поучаствовать в конкурсе.
Условия для участия были совсем простые. Нужно было всего лишь отправить в комментарии группы сгенерированное фото, а это в свою очередь неплохо увеличило актив в группе.
Каждую неделю рандомно выбирали победителя, а тот получал приятный подарок от бренда.
Помимо генераций, в боте мы рассказывали про каждый элемент коллекции бренда, а также давали поговорить с тем самым нейровизажистом.
Ну и для тех, кому интересно посмотреть на цифры, вот:
- 6441 людей запустило бота
- 8716 изображений было сгенерировано
- Среднее количество генераций: 1.35
- Сколько раз прошли опрос: 1835
- Сколько людей не прошли опрос: 4813
Хотите сделать интересный и запоминающийся спецпроект? Просто напишите нам, и вы останетесь довольны. 😉
Шаталов Богдан, CEO Shataloff DIS. Разработка цифровых имиджевых решений.
Email: ShataloffDIS@gmail.com
Наш сайт:
Мой ТГ: