Личный проект
Hypeoslav - AI-медиахолдинг

Технологии
Ссылки
Услуги
- →Архитектура и разработка ИИ-конвейера (Python)
- →Интерфейс управления конвейером на базе Telegram-бота
- →Интеграция множества ИИ-сервисов (изображения, текст, аудио)
- →Сборка постов и автоматизация публикации на нескольких платформах
- →Настройка монетизации YouTube и интеграция AdSense
Результаты
- ✓Децентрализованный конвейер генерации контента, запускаемый из Telegram
- ✓Интеграции: Midjourney, DALL·E, Recraft, ChatGPT, Gemini, ElevenLabs
- ✓Время производства: с 2 - 3 часов и затем до менее чем 5 минут на пост
- ✓Несколько монетизируемых каналов, работающих параллельно при одном операторе
Задача
Стал сооснователем Hypeoslav - медиахолдинга на базе AI, где несколько контент-каналов производят изображения, тексты и аудио в промышленных масштабах. Экономика сходится только при себестоимости поста, близкой к нулю. Ручные процессы в Midjourney, ChatGPT, ElevenLabs и инструментах публикации отнимали по 2 - 3 часа на пост. Это был не медиабизнес, а студия ручного производства.
Исследование
Разбор процесса производства контента показал, что каждый шаг механический: написать промпт и затем сгенерировать изображение, написать подпись, сгенерировать озвучку, собрать пост и затем опубликовать в канал. Ни один из этих шагов не требует творческого решения человека, как только сформулировано задание. Узким местом была не креативность, а оркестрация.
Рассмотренные варианты
- No-code инструменты автоматизации (Zapier, Make) - рассмотрены. Не справлялись с многошаговыми вызовами AI API, обработкой ошибок и условной маршрутизацией между сервисами генерации.
- Собственная веб-панель - отклонена. Редакторы не хотели ещё одну вкладку для управления; интерфейс должен был находиться там, где они уже работают.
- Telegram-бот как интерфейс управления + бэкенд-конвейер на Python - выбран. Редакторы уже пользовались Telegram; команды бота давали мгновенный доступ к конвейеру с любого устройства.
Решение
Оркестрирующий слой на Python подключается ко всем AI API. Интерфейсом служит Telegram Bot API: редактор отправляет контент-задание, конвейер параллельно распределяет его по нужным сервисам генерации, собирает результат и либо публикует автоматически, либо показывает превью на согласование. Каждый тип канала (с упором на изображения, на текст, на аудио) имеет собственный вариант конвейера.
Реализация
Интегрированы Midjourney (через автоматизацию Discord API), DALL·E и Recraft для генерации изображений, ChatGPT и Gemini для подписей и сценариев, а также ElevenLabs для озвучки. У каждого сервиса свой асинхронный обработчик с логикой повторов и резервной маршрутизацией - если Midjourney работает медленно, конвейер автоматически переключается на Recraft.
Сборка поста объединяет сгенерированные материалы в нативные для платформ форматы: каналы Telegram, YouTube Shorts и Instagram. Планирование публикаций реализовано через очередь, распределяющую посты по оптимальным окнам выхода. Монетизация YouTube AdSense настроена по всем видеоканалам.
Результат
Время производства контента упало с 2 - 3 часов до менее чем 5 минут на пост. Несколько каналов работают параллельно при одном операторе. Инфраструктура ведёт творческий конвейер от начала до конца - за человеком остаётся постановка задания и контроль качества, а не само производство.
Конвейер в Blender
Промежуточный этап конвейера, снятый в Blender. Сцена собирается автоматически: картинки расставлены и выровнены, поверх наложен аватар, добавлен эффект дыма (ранняя версия). Все картинки и сцены в ролике сгенерированы LLM. Субтитры накладывались отдельно, уже вне Blender.
Анимированные субтитры
Субтитры анимированные, в караоке-стиле: текущее слово подсвечивается по ходу озвучки. Blender нормально с субтитрами не работал, поэтому сшивка шла через ffmpeg - из Blender выходил чистый рендер, а дорожка с субтитрами накладывалась отдельным проходом. Позже стили доработали: добавили тень, а шрифт дорисовали недостающими глифами, чтобы он держал другие языки, в том числе корейский и японский. У исходной версии с ними были проблемы.
Интро на разных языках и виральные обложки
Сгенерированные интро на нескольких языках вместе с обложками, с которых начинаются видео. Дольше всего искали голос: прогнали кучу локальных моделей для озвучки, в том числе на базе Kokoro и решений от Facebook, а основным инструментом в итоге выбрали ElevenLabs.
Под обложки сделали отдельный набор промтов. Они описывают не картинку, а то, что уже сработало: разобрали референсные превью, которые залетели, и перенесли их приёмы в генерацию.
Файлы сценариев по языкам
Структура файлов, с которой работает конвейер: переписанные сценарии плюс мета, отдельный набор под каждый язык. Форму задало требование, чтобы видео получалось примерно одной длительности независимо от финального языка, поэтому сценарии адаптируются под хронометраж, а не переводятся построчно. Дословный перевод уплывает: при одинаковом количестве слов одни языки звучат заметно дольше других, и тайминг под картинку рассыпается.
Генерация аватаров
Аватары генерируются в ComfyUI на разных моделях, а конвейер забирает оттуда видео через интеграцию, а не обращается к платному сервису. Это заметно сэкономило деньги - внешняя генерация была самой дорогой статьёй - и заодно отдало качество генерации под прямой контроль: модель, настройки и число шагов подкручиваются под канал, вместо того чтобы принимать то, что отдаст чужой эндпоинт.
Телеграм-бот управления
Работа 24/7 означала, что конвейером надо рулить с телефона, на ходу, поэтому пультом стал телеграм-бот. Работа многопоточная: задачи кладутся в очередь, слейвы разбирают их по мере освобождения, а не одна задача держит всю очередь за собой.
Генерация видео идёт поэтапно, и этапы, которым нужен человеческий глаз, останавливаются на проверку. Бот рапортует, что этап выполнен, и переключается на другую работу, а не простаивает. Пользователь заходит, смотрит результат на Яндекс.Диске - поэтому проверка возможна даже с телефона - и отвечает «принять» или «переделать», причём перед повтором можно поменять промт. Итоговое видео уезжает на Google Drive.
На боте же висит и путь отказа: упавшая задача не тонет в очереди молча, а приходит с текстом ошибки, и перезапустить её можно прямо из чата.
Полный проход по шагам, с одобрением промежуточных результатов на каждом этапе.
Распределённые исполнители
Рабочая сторона той же очереди. К одному серверу задач подключается несколько исполнителей: берут очередную задачу - сгенерировать текст, транскрибировать аудио, сгенерировать картинки - и выполняют её. На пике одновременно работало до пяти устройств в моей локальной сети, включая Steam Deck: на каждом крутился клиент, который цеплялся к серверу, забирал задачи и выполнял их.
Десктоп-клиент для правки визуала
Править один неудачный кадр через чат-бота неудобно, поэтому под визуал сделали отдельный desktop-клиент. Он открывает проект, вычитывает его и раскладывает картинки всех сцен рядом с промтами, которыми они сгенерированы. Промт можно переписать и тут же перегенерировать конкретную сцену, не перезапуская конвейер и не выискивая нужный кадр в папке.
Мониторинг трендов
Чтобы решать, что делать дальше, нужны были данные, а не вкусовщина, поэтому отдельный микросервис на Go следит за списком добавленных каналов и собирает информацию о видео, которые там залетели. Эти ролики и образуют пул референсов, из которого потом строятся задания и промты для обложек - именно оттуда берутся виральные приёмы, о которых сказано выше.
Сам вотчер в работе, по отслеживаемым каналам.
Увеличение лимитов YouTube API
Мониторинг такого масштаба упирается в квоту YouTube API, поэтому обратились в Google за увеличением лимитов на граббинг статистики. Обращение прошло успешно. Вскоре после этого проект заморозили, так что поднятая квота в полную силу поработать не успела.
Открыт для работы по контракту
Я доступен для работы по контракту. Если у вас есть интересная идея проекта, запишитесь на звонок через Calendly.
Записаться на 30-минутный звонок