Маркетинг·2026 — сейчас
AdPilot
Автономное управление Google Ads: система сама строит кампании, считает конверсии с поправкой на задержку атрибуции и двигает бюджеты — но ни одна ставка не меняется без детерминированного правила.
Схема системы · внутренний контур, доступ по NDA
01
Что это
Большинство «AI-платформ для рекламы» делают одну и ту же ошибку: просят модель решить, сколько поставить за клик. AdPilot построен на обратном принципе. Мы не пишем свой аукционный бидер — мы строим тонкий детерминированный слой контроля и защиты поверх Smart Bidding самого Google. Вся денежная математика и предохранители — обычный код, который можно протестировать и объяснить аудитору.
LLM в системе есть, но у неё чёткая роль: писать тексты объявлений и человеческие пояснения к решениям.
Она никогда не вызывает операцию изменения. Это не идеология — это то, что позволяет спать ночью, когда на счету живой бюджет.
02
возможности
Что оно умеет
01
Построение кампаний
Автоматическая сборка кампаний, групп и объявлений с исследованием ключей — от структуры до финального креатива.
02
Двухтемповый сбор статистики
Медленный контур для полных данных и быстрый для критичных метрик расхода. Перерасход замечается за минуты, а не за сутки.
03
Конверсии с поправкой на лаг
Атрибуция приходит с задержкой, и наивный подсчёт всегда недооценивает свежие дни. Модель лага встроена в расчёт.
04
Предохранители и бюджет
Детерминированные лимиты на расход, отдельный watchdog-процесс как независимый выключатель — он работает, даже если основной воркер завис.
05
Реконсиляция
Каждый день сверяем, что система думает о расходе, с тем, что говорит Google. Расхождение — инцидент, а не строка в логах.
06
Дашборд и роли
React-панель с разграничением прав, журнал решений: у каждого изменения есть причина, автор и человеческое объяснение.
03
архитектура
Как устроено
01
Сбор статистики из Google Ads
02
Расчёт конверсий и бюджета
03
Детерминированные правила и гейты
04
Исполнение изменений
05
Реконсиляция и отчёт
Под капотом
- Python 3.12 + FastAPI, SQLAlchemy 2.0; PostgreSQL 16 с TimescaleDB для временных рядов метрик.
- Celery-воркер, отдельный beat-планировщик на два темпа и независимый watchdog как kill-switch.
- Домены разделены по назначению: guardrails, budget, decision_engine, fsm, rbac, ingestion, reconciliation, policy, executor.
- Детерминированные тесты на денежную математику — отдельный обязательный набор.
- Жизненный цикл токенов и секреты вынесены из кода; четыре systemd-юнита на проде.
- Принцип №1 зафиксирован письменно: LLM не вызывает mutate. Никогда.
04
масштаб
Цифры
0
ставок, которые ставит LLM
2
темпа сбора статистики
4
процесса на проде
100%
решений с журналом причин