Как мы за 54 дня собрали ИИ-хаб в мессенджере MAX. Часть 1 — обзор цикла

в 11:56, , рубрики: 54-ФЗ, agentic, fastapi, llm, max, n8n, rag, recurring, ЮКасса

TL;DR

54 дня назад у нас была идея — единый чат‑бот, через который можно работать с разными моделями ИИ. Сегодня в проде: бот в мессенджере MAX, 5903 пользователя, ~300 DAU, премиум‑подписка через ЮКассу с автоплатежами, 10+ моделей ИИ под одним интерфейсом, 6 модальностей ввода. Платежи запустили 5 мая 2026.

Команда: нас двое плюс AI‑ассистент в роли парного программиста. IT‑ бэкграунд есть, но в коммерческой разработке мы не работали. С n8n до этого знакомились на уровне «10 нод поковырять». Сейчас в проекте около 20 связанных воркфлоу, в одном только Main — 271 нода.

Это первая статья из цикла. Здесь общая картина: что придумали, зачем, из чего собрали, на чём работает. Без глубоких разборов — каждый блок раскроем в отдельной статье. Оглавление в конце.

Все цифры — срез на 8 мая 2026, 54-й день проекта. К моменту публикации они уже будут другими: продукт активный, аудитория растёт.


Спойлер: хотели один бот, получили три

Замышляли один — ИИ‑хаб с подпиской. По ходу появились ещё два:

  • Скачивалка видео из соцсетей. Изначально была лидмагнитом для основного бота. Отделилась в самостоятельный продукт со своей аудиторией.

  • Админ‑бот. Внутренний инструмент для нас самих: аналитика, управление пользователями, запуск рекламных кампаний прямо из мессенджера.

Каждый живёт на своём наборе воркфлоу. БД у основного бота и админ‑бота общая (админка пишет туда же, куда читает основной). У скачивалки — отдельная.

Это не было планом. Так получилось из архитектуры: когда модули достаточно изолированы, отдельные функции сами превращаются в самостоятельные продукты.


Что мы придумали и зачем

Идея. ИИ‑хаб в одном чате. Пишешь в мессенджер — получаешь доступ к 10+ моделям. Текст, картинки, видео, поиск, скачивание из соцсетей, анализ фото и документов, голосовые. Без переключения между сервисами, без отдельных подписок на каждый ИИ, без VPN.

Почему MAX. Платформа новая, активно развивается, конкуренция в нише ИИ‑ботов ещё низкая. На фоне перегретого Telegram это окно: те же продуктовые механики, но дешевле привлечение и меньше драки за внимание. В MAX можно занять нишу в момент её формирования; на зрелой площадке пришлось бы биться с десятками устоявшихся ботов.

Почему сейчас. Стек ИИ‑моделей в 2026 — зрелый, дешёвый, стабильный. Можно собирать продукт‑агрегатор без R&D на каждую модальность.


Что бот умеет

6 модальностей ввода: текст, голосовое, фото, документ (PDF), deep link, callback‑кнопка.

4 типа генерации: текст (10 моделей), картинки, видео (8-секундные ролики со звуком на Veo 3.1), апскейл картинок.

Так выглядит главное меню бота
Так выглядит главное меню бота

Дополнительно: веб‑поиск (RAG), скачивание видео из соцсетей (YouTube, TikTok, Instagram, X и др.), память диалога, реферальная программа в обоих пользовательских ботах.

Маркетинговая воронка: deep links с зашитым контекстом генерации, авто‑бонусы на первом контакте, аналитика по этапам.

Тарифы: 3 подписки premium (1, 3, 12 месяцев) + 11 пакетов отдельных генераций. Бесплатные лимиты — три уровня: демо, подписка на канал, рефералка.

Подробный разбор каждого блока — в отдельных статьях цикла.


Архитектура верхнего уровня

┌──────────────┐  ┌──────────────┐  ┌──────────────┐
│ Юзер:        │  │ Юзер:        │  │ Мы:          │
│ ИИ-хаб       │  │ скачивалка   │  │ админ-бот    │
└──────┬───────┘  └──────┬───────┘  └──────┬───────┘
       │ событие         │ событие         │ событие
       ▼ из MAX          ▼ из MAX          ▼ из MAX
┌─────────────────────────────────────────────────────┐
│  Сервер n8n (оркестратор)                           │
│   - Main (271 н.)  - downloader (43)  - admin (67)  │
│   - 7 воркеров через Execute Workflow               │
│   - 5 cron-задач, 5 ручных операций                 │
└────┬────────────────────────────────────────────────┘
     │
     ▼
┌──────────────┐  ┌──────────────┐  ┌──────────────────┐
│ Postgres VPS │  │ FastAPI VPS  │  │ Сервер           │
│ - таблицы    │◄─┤ - 8 эндпоин- │  │ мониторинга      │
│ - бэкапы 1/д │  │   тов ЮКассы │  │ - все остальные  │
└──────────────┘  └──────┬───────┘  └──────────────────┘
                         ▼
                    ┌──────────┐
                    │ ЮКасса   │
                    └──────────┘

+ Self-hosted MeTube + Cobalt + RapidAPI
+ Cloudflare + nginx перед всеми внешними адресами проекта

У каждого бота — свой воркфлоу с триггером на события из MAX: основной ИИ‑хаб, скачивалка и наш внутренний админ‑бот. Все они через Execute Workflow дёргают общий пул из 7 воркеров (текст, фото, видео, апскейл, downloader × 2, premium_router). Плюс отдельно крутятся 5 cron‑задач (от каждых 5 минут до раз в 6 часов) и несколько ручных рассылок.

По факту три бота

  • ИИ‑хаб. Основной пользовательский бот с подпиской и платежами.

  • Скачивалка видео из соцсетей. Изолированный пользовательский бот, 2000+ юзеров. Своя БД, свой воркфлоу. Бесплатный, но с той же трёхуровневой механикой, что и в основном: демо‑лимит на старте, расширенный недельный лимит по подписке на канал, бонусы за рефералку.

  • Админ‑бот. Внутренний, для нас самих. Отдельный воркфлоу, общая БД с основным ботом. Через него — аналитика, запуск рекламных кампаний, генерация деплинков с заранее установленным промптом. Параллельно есть админ‑панель на HTML/JS/CSS — самостоятельное web‑приложение для тех же задач, но в браузере.

    Скрин от утра 9 мая, график - это приток новых пользователей. Графы и запросы постоянно меняем, ищем компромисс, поэтому в вебе цифры пока не всегда корректны

    Скрин от утра 9 мая, график - это приток новых пользователей. Графы и запросы постоянно меняем, ищем компромисс, поэтому в вебе цифры пока не всегда корректны

    Реферальная программа есть в обоих пользовательских ботах (ИИ‑хаб и скачивалка), но у каждого своя — свои правила начисления, свой пул бонусов, своя экономика. В админ‑боте рефералки нет — он не для пользователей.

Три канала в MAX вокруг этого

К каждому направлению — свой канал в MAX. Не для красоты, а как часть продуктовой инфраструктуры: подписка на канал расширяет недельный лимит, и через канал гонятся рекламные деплинки.

  • Канал ИИ‑хаба — появился 15 марта 2026, в день идеи. Сейчас 3778 подписчиков.

  • Канал скачивалки — появился 10 апреля 2026. Сейчас 1430 подписчиков.

  • Канал по ИИ‑промптам — появился тогда же, 10 апреля. Сейчас 1234 подписчика. Это полигон, на котором мы тестируем deep links с механикой ad_prompt: юзер видит готовый результат в рекламном посте → жмёт кнопку → попадает в бота → прикрепляет своё фото → получает аналог. Подробнее — в Части 4 цикла.

Получается, главный канал живёт ровно столько же, сколько проект (54 дня), а два дополнительных — по 28 дней каждый.


Стек и технологии

4 VPS

  • Сервер n8n. Оркестрация всех бизнес‑процессов. Развёрнут в Docker с обязательным Redis — без него очереди и устойчивость n8n на нашем масштабе работают плохо. Изолированно, без посторонней нагрузки.

  • Сервер PostgreSQL. БД вынесена отдельно для устойчивости. Наружу не выставлена, доступ только через SSH‑туннель. Бэкапы ежедневные.

  • Сервер FastAPI. Только под платёжное API. Python, async, asyncpg, nginx, Let's Encrypt с автообновлением. Туннель к БД — autossh с автозапуском в systemd.

  • Сервер мониторинга. Наблюдает за состоянием всех остальных и одновременно служит управляющим контуром. На нём:

    • доступность и нагрузка серверов;

    • количество пользователей в реальном времени;

    • стадии воронки — на каком шаге сколько юзеров;

    • стата по рекламным кампаниям;

    • управление пользователями и их пакетами.

    То есть это и dashboard, и панель оператора одновременно.

Дополнительные сервисы

  • Self‑hosted MeTube + Cobalt + RapidAPI — для скачивания медиа из соцсетей.

  • Все внешние адреса проекта закрыты Cloudflare + nginx. nginx терминирует TLS, балансирует, закрывает прямой доступ к контейнерам. Cloudflare сверху — кеширование, базовая защита, скрытые origin‑адреса. Это касается всего: публичных страниц (оферта, политика), платёжного API, MeTube/Cobalt, любых HTTP‑эндпоинтов.

  • Несколько собственных доменов под разные задачи. TLS на собственном домене — требование ЮКассы для одобрения recurring. Держать всё на одном домене было бы рискованно с точки зрения изоляции — поэтому платёжное API, публичные страницы и медиа‑сервисы живут на разных.

Платежи

  • ЮКасса с одобренным recurring. Это отдельная заявка с ручной модерацией, не «нажми кнопку».

  • 54-ФЗ‑фискализация через «Чеки от ЮКассы».

  • Идемпотентность на нескольких уровнях — и БД, и приложение. Подробности в Части 3.

ИИ

  • Несколько API‑агрегаторов одновременно — разные провайдеры под разные задачи.

  • Свой пул платных прокси для обхода региональных ограничений и стабильности.

Модели

  • Текст: GPT-5, GPT-5-mini, Claude Sonnet 4.6, Claude 4.6 Thinking, Gemini 3 Pro, Gemini 3 Flash, DeepSeek v3.2, DeepSeek R1 Thinking, GPT-4o, GPT-4o‑mini.

  • Картинки: Nano Banana, Nano Banana 2, Nano Banana Pro, GPT Image 1.5.

  • Видео: Veo 3.1 от Google.

  • Голос: Whisper.

  • Видео из соцсетей: Cobalt + MeTube + RapidAPI.

База данных

Несколько таблиц под разные задачи: профили пользователей, кошельки и квоты, лог платежей, тарифная сетка, история диалогов (для памяти бота), реферальная программа, рекламные кампании, ачивки. Каждая отвечает за одно понятие и расширяется независимо.


Не особо компактно

Не особо компактно

Цифры

  • 54 дня от идеи до боевых платежей в проде (52 дня от первой строки кода).

  • 5903 пользователя основного бота, ~300 DAU.

  • 3 канала в MAX: 3778 подписчиков (ИИ‑хаб, с 15 марта в день идеи) / 1430 (скачивалка, с 10 апреля) / 1234 (промпты‑полигон для деплинков, с 10 апреля). Скачивалка‑бот — 2000+ пользователей.

  • VPS + изолированные службы.

  • 20 воркфлоу в n8n: 3 точки входа в мессенджер (Main, скачивалка, админ‑бот), 7 воркеров на Execute Workflow, 5 cron‑задач, 5 ручных запусков. Несколько сотен нод суммарно.

  • 271 нода в одном Main, 89 веток обработки кнопочных команд внутри него.

  • 8 эндпоинтов платёжного API на ~660 строк FastAPI.

  • 10+ моделей ИИ под единым интерфейсом.

  • 6 модальностей ввода, 3 сценария бесплатных лимитов, 14 платных позиций в тарифной сетке.

  • 3 уровня защиты от двойных списаний.

  • 10–14 дней из 54 ушло на аналитику и SQL — четверть проекта.

  • Лимит масштабирования в текущей архитектуре — ~50 000 пользователей при 4000–7000 DAU.

  • 2 человека + AI‑ассистент в роли парного программиста.


Один из воркеров

Один из воркеров

План цикла

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

Часть 2. n8n как оркестратор: 3 точки входа, 7 воркеров и подводные камни

Почему n8n оказался правильным выбором при нашем стартовом уровне и горизонте роста. Как устроены три бота на уровне воркфлоу: кто принимает события из мессенджера, кто делает тяжёлую работу, как они связаны между собой. Чем заняты семь воркеров и пять фоновых задач, и почему такое разделение себя оправдало. Отдельный большой блок — реальные подводные камни n8n, на которые мы наступали в продакшене: каждый стоил нам бага. Закончим прогнозом: на каком этапе и какие куски будем переписывать в чистый код.

Часть 3. Платежи: ЮКасса с recurring, 54-ФЗ и идемпотентность

FastAPI‑биллинг от и до. Полный цикл платежа от тапа кнопки в боте до апгрейда юзера. Как устроены автоплатежи по сохранённой карте. Что такое 54-ФЗ и почему без фискального чека первый боевой платёж падает с малопонятной ошибкой. Три уровня защиты от двойных списаний — почему трёх, а не двух. Страховка на случай потерянных webhook‑ов от платёжного провайдера. И самое неочевидное — как получить одобрение recurring у ЮКассы: это не «нажми кнопку», это отдельный процесс с ручной модерацией, который ожидался на на несколько недель, а прошел за несколько суток.

Часть 4. Маркетинговая воронка через deep links

ad_rek и ad_prompt — две механики, которые превращают рекламный пост в законченную воронку. Юзер видит готовый результат в посте → жмёт кнопку → попадает в бот в нужном состоянии → прикрепляет фото → получает результат. Внутри: state‑машина при онбординге, авто‑начисление бонусов в кошелёк, прокидывание UTM в аналитику, интеграция с биллингом. Три сценария бесплатных лимитов как маркетинговый рычаг: демо, подписка на канал, рефералка.

Часть 5. RAG‑поиск в чат‑боте

Как мы устроили веб‑поиск. Это не «агентский tool‑use», это классический RAG: один запрос в сторонний поисковый агрегатор, готовые сниппеты, инструктивный промпт для LLM. Разберём механику от и до, обсудим, где это работает, где упирается в потолок и какие напрашиваются улучшения.

Часть 6. Документация в команде из двоих + AI‑ассистент

Bus factor как реальный риск, а не модное слово. Ежедневные журналы — изменений, тех.долга, планов. Handoff'ы для подключения новой AI‑сессии. Принципы: «технический долг лучше документировать, чем помнить», «UX‑тексты слово в слово», «никакого wholesale rewrite», «бэкап перед инвазивной операцией». Как это работает на практике и сколько часов экономит.

Часть 7 (возможно). Аналитика как четверть проекта

Почему 10–14 дней из 54 ушло на SQL и схему БД, а не на фичи. Как unit‑экономика влияет на тарифную сетку. Что мы уже видим в админке (аудитория, конверсия по этапам), и что пока не считаем (денежная атрибуция кампаний — следующий шаг).


Что мы уже точно вынесли

  • AI‑ассистент не пишет за тебя — он усиливает дисциплину. Точечные правки и документация дают рабочий продукт; wholesale rewrite даёт хаос.

  • Аналитика идёт параллельно с фичами, не «потом».

  • Платить за премиум у конкурентов — это product research, а не расход.

  • Выбор платформы — часть продуктовой стратегии. MAX дал нам окно.

  • Стек выбирается по горизонту планирования. n8n покрывает наш потолок ~50 000 пользователей при 4000–7000 DAU; раньше переходить в чистый код — преждевременная оптимизация.

  • Bus factor закладывается с первого дня. Команда из двоих + AI — это всегда риск; журналы и handoff'ы это страховка.


Что в ближайших планах

  • Контент‑завод для канала скачивалки. Автогенерация постов с ИИ‑роутингом по тематикам и форматам. Первая версия уже собрана, но пока не внедрена. После запуска должно сильно сократить ручной труд при ведении канала и поднять регулярность публикаций.


Если зашло — следующая часть про n8n‑оркестрацию выйдет следом. По ходу цикла буду собирать вопросы из комментариев и встраивать ответы в соответствующие статьи.

Автор: simonovv

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js