AI Generator — веб-платформа, которая превращает тему в готовый ролик и сама публикует его на YouTube по расписанию.
Задача: заменить ручное производство роликов для YouTube-каналов: сценарий, картинки, озвучку, монтаж и публикацию.
Что сделал:
• Конвейер ролика: сценарий пишет Gemini, картинки генерирует ИИ или подбирает из фотобанков, озвучка Gemini TTS, субтитры и музыка, монтаж через FFmpeg.
• Два формата: короткие вертикальные ролики и длинные горизонтальные видео, озвучка на 9 языках.
• Автопостинг по расписанию: загрузка на YouTube с обложкой и описанием, выпуски связаны в серию.
• Аналитика канала через YouTube Analytics API с советами, что поменять.
• Личные кабинеты, баланс и списания, админка.
• Стек: Python, FastAPI, Next.js, PostgreSQL, Redis, Docker.
Результат: с 4 августа через автопостинг опубликовано 224 ролика на трёх YouTube-каналах без ручной работы. Канал клиента о здоровье для аудитории 55+ выходит ежедневно. Один короткий ролик стоит примерно $0,10–0,30.
Работа строилась итерациями: от ядра генерации к автоматизации, затем — аналитика, музыка и биллинг.
Архитектура. Развернул монорепозиторий: FastAPI + PostgreSQL + Redis на бэкенде, Next.js на фронтенде, отдельный воркер для тяжёлых задач, nginx и Docker Compose в продакшене. Все долгие операции (сценарий, картинки, озвучка, рендер) вынесены в фоновые задачи с очередью — страница показывает живой прогресс, а прерванная генерация продолжается с места остановки.
Конвейер видео. Сценарий пишет Gemini по структурированной схеме: хук в первой фразе, сцены с визуальными промптами, призыв к действию и «обещание» следующего выпуска, которое система передаёт в следующий ролик серии. Картинки — либо ИИ-генерация, либо подбор реальных фотографий (Wikimedia, Pixabay, Pexels, Archive.org) с ранжированием кандидатов по релевантности кадру. Озвучка — Gemini TTS с эмоциональной подачей; реплики идут без пауз, финальная сцена не обрезается. Сборка — FFmpeg в один проход: эффект Ken Burns с суперсэмплингом (убрал дёргающийся зум), субтитры ASS, фоновая музыка с приглушением под голосом.
Форматы. Разделил платформу на два мира — шорты и длинные видео — с отдельными проектами, дашбордами и автоматизациями; добавил дублирование проекта между форматами. Миграции базы провёл без простоя.
Автопостинг. Планировщик по расписанию: генерация к назначенному часу, загрузка на YouTube с обложкой и описанием, открытый доступ. Диагностировал и починил типовые сбои: протухший refresh token, приватные публикации, «вечно генерирующиеся» ролики-сироты.
Лимиты провайдеров. Построил кольцо API-ключей: несколько проектов Google, автопереключение при квоте, ожидание ровно столько, сколько просит провайдер, раздельные пулы платных и бесплатных ключей, пейсинг под лимит запросов в минуту. Добавил выбор платной/бесплатной озвучки с показом цены до запуска.
Аналитика. Интеграция с YouTube Analytics API: сбор просмотров, досмотров, источников трафика; поиск закономерностей (лучший час, день, длина, темы) и перевод их в конкретные советы «что поменять и где» со ссылкой на настройку.
Музыка. Личные библиотеки треков с загрузкой, прослушиванием и поиском свободной музыки; затем ИИ-генератор на Lyria RealTime: биты, аранжированные композиции (вступление — грув — припев — финал) и треки с текстом — текст пишет языковая модель, озвучка читает его в рэп-подаче, запись режется по паузам на строки, темп бита вычисляется из темпа голоса, каждая строка ставится на такт, голос обрабатывается (компрессия, эквализация, дабл-трек) и сводится с битом в один файл.
Биллинг. Токены поверх долларового лимита: баланс, пакеты, заявки на пополнение с подтверждением администратором, история каждого списания с остатком после операции, оценка себестоимости ролика до генерации.
Безопасность и эксплуатация. После инцидента с криптомайнером в контейнере фронтенда перевёл контейнеры в read-only с noexec на /tmp, срезал capabilities, добавил ротацию логов, обновил Next.js. Настроил админ-панель с постраничной навигацией, управлением ключами и лимитами. Каждое изменение выкатывалось в продакшен и проверялось живым прогоном — от логина до опубликованного ролика.
Получилась работающая продакшен-платформа «AI генератор» (shorts.verite-x.com), которая превращает текстовую тему в опубликованный на YouTube ролик без участия человека.
Что умеет система сегодня:
— Полный цикл за один запуск: сценарий с хуком и призывом к действию, картинки (ИИ или реальные фото), эмоциональная озвучка на 9 языках, субтитры, музыка, монтаж с плавной анимацией — готовый вертикальный или горизонтальный ролик за несколько минут.
— Автономная работа канала: автопостинг генерирует и публикует по расписанию два и более роликов в день, связывает выпуски в серию («завтра расскажу про…» совпадает со следующей темой), сам переживает лимиты ИИ-провайдеров за счёт ротации ключей и продолжает прерванную генерацию с места остановки.
— Аналитика с выводами: платформа не просто показывает цифры канала, а называет конкретные изменения — какое время публикации, какая длина и какие темы дают кратный прирост просмотров, и где в настройках это поменять.
— Музыкальное производство: клиент генерирует собственные биты и полноценные композиции с аранжировкой, включая треки с автоматически написанным и зачитанным поверх бита текстом; вся музыка сразу доступна для роликов.
— Прозрачная экономика: себестоимость ролика видна до запуска, каждое списание токенов — в истории с остатком после операции. Один шорт из картинок обходится примерно в $0,10–0,30; длинное видео — в разы дешевле ручного производства, где только монтаж стоит от $20–50.
Как применяется на практике:
Клиент ведёт YouTube-канал о здоровье и долголетии для аудитории 55+: контент выходит ежедневно по расписанию 13:00/19:00 без ручной работы — система прошла путь от идеи до стабильного конвейера, который с 4 августа опубликовал через автопостинг 224 ролика на трёх YouTube-каналах, короткие и длинные. Владелец заходит в панель посмотреть аналитику, скорректировать тематику по рекомендациям и пополнить баланс — всё остальное происходит само.
Платформа мультиарендная: регистрация, личные библиотеки, изоляция данных и токен-биллинг позволяют подключать новых клиентов как SaaS — каждый со своими каналами, ключами и балансом. Это открывает три сценария развития: продажа подписки владельцам каналов, контент-агентство на одной инсталляции (десятки каналов под управлением одной команды) и white-label для студий, производящих контент на заказ.
Технически решение готово к масштабированию: очередь задач позволяет добавлять воркеры под рост нагрузки, новые ИИ-провайдеры (вокальные модели, другие генераторы видео) подключаются как альтернативные движки в уже существующие разделы, а контейнерная инфраструктура с усиленной безопасностью (read-only контейнеры, ограничение привилегий) выдерживает публичную эксплуатацию.