Журнал · Rit.work

ZooWork-ShopRanker: как разметить предпочтения без ручного корпуса

ZooWork обучила переранжировщик для интернет-магазинов на оценках нескольких LLM, нейтрализовала позиционное смещение и перенесла результат в меньшие модели.

Rit.work
Студия разработки
28 сентября 2026 г.4 мин чтения

Материал подготовлен автоматически по первоисточникам: ссылки на них — в конце статьи.

Открытый переранжировщик для интернет-магазинов научили учитывать не только совпадение текста, но и бюджет, тип товара и контекст покупки. В нерецензированном препринте ZooWork Team, где все числа получили сами авторы, ZooWork-ShopRanker обошёл сильнейший из проверенных открытых базовых вариантов. Поисковой команде предлагают практическую схему: разметить пары несколькими LLM, обучить крупную модель и перенести её оценки в более дешёвые.

Как несколько LLM превратили трафик в обучающие пары

Переранжировщик работает после основного поиска: получает несколько подходящих товаров и решает, какие поставить выше. Обычная модель хорошо замечает тематическое совпадение, но может предпочесть товар с похожими словами, даже если он нарушает указанное ограничение.

Например, по запросу о богемном комбинезоне дешевле заданной суммы открытые базовые модели выбирали более дорогой товар со словом «bohemian». ZooWork-ShopRanker ставил выше комбинезон, который укладывался в бюджет. Такой выбор требует сначала проверить жёсткие условия запроса и лишь затем сравнивать стиль, цвет или предполагаемое качество.

Обучающие примеры собрали из соседних товаров в действующей поисковой выдаче Gensmo. Эти кандидаты уже близки по оценке поисковой системы, поэтому модели приходится различать действительно спорные варианты, а не отделять случайный товар от очевидно подходящего.

Каждую пару независимо проверяли модели-оценщики из семейств Qwen, Gemma и DeepSeek. Они сначала выделяли ограничения запроса, затем сопоставляли с ними товары и только после этого выбирали победителя либо фиксировали ничью.

Чтобы ослабить позиционное смещение, каждой модели показывали пару в обоих порядках. Если после перестановки товаров ответ менялся, решение считали воздержанием. Метку сохраняли, только когда все определившиеся модели выбирали один товар и ни одна им не противоречила.

Из 23 000 спорных пар после фильтрации осталось 10 511 — меньше половины. Их разделили на уровни по силе согласия: от решения всех моделей до метки, которую поддержало только одно семейство при двух воздержаниях. Это позволяет не смешивать надёжные и неоднозначные примеры в одной итоговой оценке.

Крупная модель размечает оценки для компактных

Сначала по парным предпочтениям настроили флагманский ZooWork-ShopRanker. Затем он стал учителем для двух меньших вариантов: они воспроизводили его численные оценки товаров, после чего их дополнительно обучали на парах с прямыми метками. При обработке запроса отдельная LLM не нужна — переранжировщик выдаёт оценку за один проход.

На запросах с явными ограничениями открытые базовые модели отвечали на 14–20 процентных пунктов хуже, чем на запросах без таких условий. У ZooWork-ShopRanker такого разрыва почти не было. Сравнивались разные подмножества запросов, поэтому результат показывает связь с наличием ограничения, а не чистый эффект от добавления одной фразы.

Флагманская и средняя модели статистически значимо обошли сильнейший открытый базовый вариант, а компактная — модель сопоставимого размера. На структурированном описании товара компактный вариант сравнялся с базовой моделью среднего размера и обработал пары в 2,8 раза быстрее. На описаниях обычным текстом преимущество осталось у более крупной базовой модели.

Общая настройка предпочтений не решила все формализуемые условия. Отдельная компактная модель, которую обучили на автоматически проверяемом правиле бюджета, достигла 94,7% верных выборов и превзошла более крупные варианты. Масштаб модели здесь оказался менее полезен, чем точная разметка правила.

Проверка охватывает текстовые карточки из частного поискового трафика Gensmo: одежду, электронику, товары для дома, детей, красоты и повседневного потребления, с уклоном в одежду. Одни и те же пары представлены как структурированные атрибуты и как обычный текст, однако текстовая версия иногда опускает часть полей. Основная метрика — доля верных выборов между двумя товарами, поэтому работа измеряет качество порядка выдачи, а не влияние на продажи.

Менять поиск не нужно, но разметку стоит пересобрать

Работа не предлагает заменять первый этап поиска. Её схема подходит для уже существующего двухступенчатого контура: поиск быстро отбирает кандидатов, а доменный переранжировщик точнее расставляет верх выдачи.

Главное изменение касается обучающих данных. Вместо одной модели-оценщика стоит использовать несколько семейств, показывать товары в обоих порядках и сохранять силу согласия вместе с меткой. Слабые метки можно оставить для анализа или обучения с меньшим весом, не выдавая их за равные единогласным решениям.

Дистилляция также меняет план по инфраструктуре. Дорогую модель можно использовать как учителя вне рабочего контура, а в продукте обслуживать компактную версию без дополнительного вызова LLM. Но качество нужно проверять отдельно на том формате карточки, который реально поступает в поиск: результат на полном наборе атрибутов не гарантирует такого же порядка на сокращённом описании.

Формализуемые ограничения лучше вынести в отдельные проверочные наборы и при необходимости добавить целевое обучение. Эксперимент с бюджетом показывает, что общие предпочтения могут лишь сместить модель в сторону дешёвых товаров, не научив соблюдать конкретный порог. Для цены и других машинно проверяемых условий программная разметка выглядит надёжнее общей настройки на вкус моделей-оценщиков.

Источники

Пауза в чтении

Похоже на вашу задачу?

Расскажите, что собираете. За полчаса разложим на этапы и назовём сроки — это бесплатно и ни к чему не обязывает.

Rit.work

Студия разработки

Собираем мобильные приложения и помогаем командам получать от AI реальную пользу. Основатель и команда, работаем удалённо — с клиентами в России и за рубежом.

← Ко всем материалам
Понравилось? Обсудим вашу задачу