Всем привет! Мы — Unistory, студия разработки из Питера. Делаем веб-сервисы и мобильные приложения с AI / ML / web3 интеграциями на заказ. Часто творим что-то необычное и инновационное с нуля. В этот раз использовали готовые продукты от OpenAI: ChatGPT, DALL·E, Whisper AI. Но платформа из этого кейса — не пресловутая обложка для ChatGPT, а система, которая объединяет несколько разрозренных моделей искусственного интеллекта (хоть и разработанных одним производителем). Мы провели большую работу не только на уровне бэкенда, но и промпт-инжиринга. Чтобы узнать подробности, читайте кейс дальше. А еще — переходите в наш Телеграм-канал, там много интересного про IT-стартапы и мир нейросетей.
Заказчик из Румынии пришел к нам с идеей создать сервис генерации детских сказок. Текст, иллюстрации, аудио-прочтение сказки — все это можно генерировать через искусственный интеллект. Главное — правильно скоординировать работу нескольких нейросетей, «подружить» их между собой, чтобы получить целостный иллюстрированный текст. Мы провели взаимную интеграцию моделей и полностью разработали бэкенд новой платформы.
Пользователь заходит на платформу, регистрируется, выбирает тарифный план и оплачивает его. Далее он может создать сказку, указав несколько параметров:
Истории, которые создает пользователь, будут сохраняться в разделе «Библиотека». Здесь вы можете:
Подписчик платформы всегда может отредактировать текст сказки или перегенерировать главу. Мы понимаем, что результаты работы нейросетей до сих пор могут требовать небольшой корректуры.
За генерацию текста в нашем проекта отвечает GPT4 Turbo, для создания иллюстраций используем DALL·E 3. Чтобы генерировать сказки из 10 глав, в каждой из которых 5000 символов, мы делаем для каждой главы несколько запросов в GPT. Это было необходимым шагом, так как данная LLM имеет ограничение — до 4000 символов на одно сообщение.
Перед генерацией отдельных глав мы запрашиваем базовое описание сказки и ее сюжета, главных героев и ключевых событий. После этого запрашиваем отдельное краткое описание для каждой главы.
Только после этого мы просим GPT создать для нас отдельные главы. Здесь разделяем процесс еще сильнее, чтобы увеличить скорость генерации: по очереди запрашиваем каждый параграф главы. Нейросеть создает абзацы и главы поэтапно, с учетом полного текста, который был сгенерирован ранее. Также GPT учитывает общее описание сказки и отдельные описания всех глав, в том числе — еще не сгенерированных.
Чтобы сгенерировать релевантные изображения, мы координируем запросы в GPT и DALL·E через бэкенд. В каждой главе есть одна иллюстрация, и она должна соответствовать тексту сказки, не выпадать из общего нарратива. Запросы в DALL·E также учитывают все наши переменные: заданные пользователем параметры, общее описание сказки, описания отдельных глав, тексты и картинки уже сгенерированных глав. Пользователь имеет возможность перегенерировать любую картинку, если остался недоволен результатом.
После того, как иллюстрированная сказка полностью готова, ее можно превратить в аудиокнигу, не покидая платформу. Для реализации этой возможности мы провели интеграцию с инструментом Google — Cloud Text-to-Speech API. Затем оплатили подписку на этот сервис, благодаря чему смогли предоставить пользователям возможность переключаться между разными голосами. Женский, мужской, милый, строгий, низкий, высокий — выбирайте, какой чтец больше понравится вашим детям.
Схема монетизации этого веб-сервиса — подписка, сервис оплаты — Stripe. Пользователям будет доступно несколько видов подписки: на месяц, на полгода, на год. В зависимости от тарифного плана пользователи смогут генерировать разное количество сказок. Создание аудиокниги на основе сгенерированной сказки будет оформлено как отдельная платная опция.
Монетизация и платная подписка была необходима, так как AI-инструменты, создающие текст, картинку и аудио, являются платными. Мы обсуждали с клиентом возможность использования более доступных инструментов, но решили, что не будем жертвовать качеством ради бесплатного доступа.
Сразу после запуска платформа будет доступна на английском языке, позже клиент планирует подключить два дополнительных языка, испанский и румынский.
***
Наши студия разработки встретила этого клиента на бирже фриланса Upwork. Мы решили поделиться опытом со всеми желающими — раздаем в своем Телеграм-канале подробный гайд о том, как начать работать на этой международной бирже. Все, что надо сделать — подписаться и попросить гайд в комменте к публикации.
В ответ наш пиарщик вышлет вам в личку подробную инструкцию по Upwork, где вы узнаете, как:
Документ пригодится как студиям, так и фрилансерам. Будет полезно директорам агентств, дизайнерам и разработчикам.