Описание проекта
Сам движок должен отдаваться через задокументированный API, к которому в реальном времени смогут обращаться наш фронтенд и бэкенд. Для заданного товара или сессии он обязан возвращать ранжированный список идентификаторов позиций со скорингом, укладываться в жёсткий бюджет по задержке и аккуратно откатываться к рекомендациям по популярности или категории, когда у модели нет уверенного прогноза. Мы ждём, что вы предложите и обоснуете подход к моделированию — коллаборативная фильтрация, контентные признаки или гибрид, — но выбор должен быть объяснимым и воспроизводимым, а не чёрным ящиком, который мы не сможем сопровождать. Важны и бизнес-правила: API должен исключать товары не в наличии, не рекомендовать то, что пользователь только что купил, и поддерживать простые фильтры вроде ценового диапазона и категории.
Не менее важна честная офлайн-оценка. До любого запуска мы хотим измерить качество рекомендаций на исторических данных с корректным разбиением на train/test по времени, с отчётом по стандартным метрикам ранжирования и понятным на словах выводом, что именно улучшилось относительно текущей базовой логики. В результаты входят обученная модель и сервис инференса, конвейер данных, отчёт об оценке с воспроизводимыми скриптами и понятная документация по переобучению по мере поступления новых данных.
— Конвейер данных из поведенческих событий и истории заказов в обучающий датасет
— Модель рекомендаций (коллаборативная, контентная или гибрид) с обработкой холодного старта
— API в реальном времени с ранжированными рекомендациями и скорингом для товара и сессии
— Бизнес-правила: наличие, цена, категория, исключение только что купленного
— Офлайн-оценка с разбиением по времени и метриками ранжирования против базовой логики
— Документация и воспроизводимые скрипты переобучения