ML System Design: секретная формула

Строительство 01.11.2026 · 👁 919 просмотров
ML System Design: секретная формула В эпоху, когда ИИ уже спокойно пишет код и выполняет рутинные задачи, на собесах лайвкодинг уходит на второй план, а на первый выходит широта и глубина знаний — на собесах стали больше спрашивать System Design, какие-то элементы спрашивают даже на младших грейдах. Также сейчас все говорят про строительство инфраструктур ИИ агентов, которые будут решать целые кластеры задач. Короче, System Design сейчас получает второе дыхание. В этом посте обсудим формулу решения кейсов на собесе и продемонстрируем ее на конкретном примере. Почти любая задача разбирается по одним и тем же семи этапам. Разберем их на примере задачи «спроектируйте блок "Вам может понравиться" на главной маркетплейса». 1. Уточнение требований Самая частая ошибка начать рисовать нейросети на доске в первые пять минут. Не делайте так. Сначала выясните бизнес-цель, масштаб, ограничения по задержке и то, что уже есть. От этих ответов зависит вся архитектура. Если интервьюер скажет, что блок "Вам может понравиться" нужен только ради кликов, стоит переспросить. Маркетплейс зарабатывает на заказах, значит, реальной целью будет GMV. А когда он скажет: «Ну, у нас 30 млн DAU, 100 млн товаров и 8 тысяч RPS», до вас дойдет, что перебрать каталог в лоб не выйдет. 2. Постановка и метрики Цель нужно перевести в то, что модель умеет предсказывать, а метрики разложить на три слоя: онлайн для A/B-теста, оффлайн для сравнения моделей и guardrails, которые нельзя просадить. Ранжирование только по кликам вытолкнет наверх дешёвые носки и кликбейт. Поэтому модель учат предсказывать клик, корзину и заказ, а скор собирают как произведение вероятности клика, вероятности заказа и цены. Онлайн смотрят GMV на пользователя, оффлайн — Recall@K и NDCG, а следят за задержкой, разнообразием и тем, не каннибализирует ли блок поиск. 3. Данные Здесь сыпется 80% кандидатов. Именно тут видно, знаете ли вы вообще как работает реальный прод. Проговорите, откуда метки, что такое негатив, как избежать утечек и почему делим данные по времени, а не случайно. Негативами берут товары, которые показали, а человек проигнорировал. Проверяют модель на неделе, которая идет после обучающей. Позицию на экране логируют и подают как признак, иначе модель решит, что первое место хорошо само по себе. 4. Признаки Перечисляйте их по группам: пользователь, объект, контекст и их пересечения. Сразу отмечайте, что считается раз в день, а что обновляется в реальном времени. У пользователя — интересы и ценовой сегмент, у товара — категория, цена, CTR и эмбеддинги, у контекста — время и устройство. А действия в текущей сессии падают в feature store за секунды. 5. Модель Всегда начинайте с бейзлайна и усложняйте, только объясняя, что выигрываете и чем платите. На таком масштабе система почти всегда многостадийная. Не надо сразу тащить трансформеры. Сначала «популярное» и «с этим покупают». Дальше two-tower модель отбирает пару тысяч кандидатов, их ранжирует CatBoost (да, бустинг все еще решает), а в выдаче остается 20 товаров без купленных и десяти одинаковых кроссовок подряд. 6. Сервинг и развёртывание Покажите, что считается заранее, а что на каждом запросе. Распишите бюджет задержки и обязательно скажите, что будет при падении сервиса. Эмбеддинги пересчитываются по ночам, ранкер — ежедневно, а онлайн остаются отбор и ранжирование по 30–50 мс на этап. При сбое юзер видит кэш или популярное, а не пустой экран. 7. Запуск и мониторинг Интервьюер точно спросит, как вы поймете, что всё работает. Продумайте A/B, мониторинг дрейфа, переобучение и cold start. A/B идет 1-2 недели со сплитом по юзерам, мониторят дрейф признаков. Новичкам показывают популярное, а новым товарам строят эмбеддинги по фото и описанию. Конечно много здесь упирается не столько в знания и кругозор, сколько в умение вести диалог, презентовать и защищать свое решение, чему мы уделяем особое внимание на нашем курсе ML System Design за счет живых семинаров, мок собеседований, защиты пет-проектов. После такой комплексной подготовки
Откликнуться в Telegram →

⚠️ Никогда не платите «за оформление» или «гарантию трудоустройства» — это признак мошенников. Работа ТРУ не несёт ответственности за содержание вакансии.

📬 Присылать похожие вакансии в Telegram? Раз в день — только новые и под ваши условия Подписаться 🇮🇱 Не нашли подходящую зарплату? В Израиле платят от $3000 Без языка и опыта · жильё и легализация под ключ · официально Смотреть вакансии →