ВопросMediumproduction-mlРеальный собес
Online serving архитектура реранкера
Как встроить ML-реранкер в существующий поиск, если candidate generation уже возвращает itemIds?
Короткий ответ
Добавить reranking service: принять userId/query/itemIds, достать фичи, batch-score моделью, отсортировать и вернуть top-N.
Полный разбор
Сервис лучше держать отдельным при ясном API и latency budget. Он должен score-ить кандидатов batch-wise, иметь feature store/cache, fallback на baseline, мониторинг качества/скорости и версионирование моделей. Для популярных товаров часть item features и scores можно precompute.
Если кандидатов много, перед реранкером нужен дешевый pre-ranking/top-K cap, иначе тяжелая модель попадет в request path на слишком большом множестве объектов.
Теория
Реранкер обычно стоит после retrieval/pre-ranking и должен обрабатывать ограниченный top-K.
Типичные ошибки
- Скорить по одному item.
- Передавать тяжелые признаки через API.
- Не иметь fallback и p95/p99 latency.
Как отвечать на собеседовании
- Нарисуй data flow.
- Назови границы сервисов и budget на scoring.