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