0. TL;DR
Что это и зачем
Исследование Amazon решает проблему поисковых запросов с суперлативами ("лучший”, “самый популярный") в e-commerce. Авторы показывают, что LLM могут разложить абстрактные суперлативы на конкретные атрибуты товаров (hints), которые затем используются для улучшения ранжирования. Метод улучшает поиск на 10.9 MAP и ранжирование на 5.9 MRR.
Какую проблему решает
Когда пользователь ищет “лучшие шарики для дня рождения”, он делегирует оценку поисковику, не зная, что важно: цветовое разнообразие, прочность, материал, возрастная категория. Метод позволяет автоматически извлечь эти критерии из суперлатива и использовать для ранжирования — улучшение на 10.9 MAP для поиска и 5.9 MRR для ранжирования.
Барьер входа
Средний: Готовых промптов нет для прямого применения. Нужно:
- Адаптировать промпты генерации hints под свой домен
- Собрать данные для файнтюнинга маленькой модели (если нужна скорость)
- Интегрировать в пайплайн поиска
Для экспериментов можно использовать только генерацию hints через API (Claude/GPT-4) без файнтюнинга.
Ключевой концепт
Суперлативы требуют декомпозиции на конкретные критерии.
LLM обучены на экспертных текстах, где “лучший” всегда означает конкретные характеристики. Когда пользователь пишет “best balloons”, он не знает критериев — но LLM знает, что для детского праздника важны: безопасность материала, яркость цветов, время удержания воздуха, цена за штуку.
Проблема: прямое использование LLM для ранжирования слишком медленное (28k токенов на 50 товаров).
Решение: извлечь знания LLM один раз (offline) в виде hints, затем использовать их для обучения быстрой маленькой модели или улучшения BM25.
Рамочная структура метода
[ЗАПРОС С СУПЕРЛАТИВОМ] → "best balloons for birthday"
↓
[ГЕНЕРАЦИЯ HINTS ЧЕРЕЗ LLM] (offline, параллельно с поиском)
• Reasoning: что означает "best" для шариков
• Brands: известные бренды (Qualatex, Anagram)
• Features: материал (латекс/фольга), размер, цвета, безопасность
• Queries: альтернативные формулировки без суперлатива
↓
[ПРИМЕНЕНИЕ HINTS]
• Вариант 1: Query Enhanced BM25 (используем сгенерированные запросы)
• Вариант 2: Файнтюн маленькой модели (0.5B-3B) с hints в контексте
↓
[РЕЗУЛЬТАТ] Ранжирование учитывает конкретные критерии, а не абстрактное "лучший"
Готовый промпт для генерации hints
Важно: Это промпт для извлечения hints из суперлатива. Для применения нужен второй этап (BM25 или файнтюн модели).
Ты — эксперт по e-commerce поиску. Твоя задача — разложить суперлатив в запросе на конкретные критерии.
Запрос: {query}
Категория товара: {category}
Выполни анализ:
1. REASONING (2-3 предложения)
Что означает суперлатив "{superlative}" в контексте {category}?
Какие конкретные характеристики определяют "лучший" товар в этой категории?
2. BRANDS (5-10 брендов с оценкой уверенности 0-100)
Какие бренды известны качеством в категории {category}?
Формат: [{"name": "Brand", "confidence": 95}, ...]
3. FEATURES (5-10 ключевых характеристик)
Какие атрибуты товара критичны для оценки по суперлативу?
Для каждой характеристики:
- name: название характеристики
- synonyms: [список синонимов и альтернативных формулировок]
- category: тип (physical/performance/convenience/aesthetic)
- importance: важность 1-10
- brands_known_for: [бренды, известные этой характеристикой]
Пример для "best noise cancelling headphones":
{
"name": "Active Noise Cancellation",
"synonyms": ["ANC", "noise blocking", "ambient sound reduction", "adaptive noise control"],
"category": "performance",
"importance": 10,
"brands_known_for": ["Sony", "Bose", "Apple"]
}
4. GENERATED QUERIES (10 альтернативных запросов)
Перефразируй запрос БЕЗ суперлатива, используя конкретные характеристики.
Каждый запрос должен включать ВСЕ ключевые features, но с разными синонимами.
Пример для "best balloons for birthday":
- "latex balloons bright colors helium-grade party decoration"
- "foil balloons multicolor long-lasting birthday celebration"
- "high-quality party balloons vibrant shades air-retention kids safe"
Формат вывода: валидный Python dict, который можно распарсить через ast.literal_eval.
Пример заполнения:
# Запрос: "best wireless earbuds for running"
# Категория: "Electronics > Headphones"
{
"domain": "Wireless Earbuds",
"ranking_intent": "User seeks earbuds optimized for sports: secure fit, sweat resistance, stable connection during movement",
"brands": [
{"name": "Jabra", "confidence": 95},
{"name": "Beats", "confidence": 90},
{"name": "Sony", "confidence": 85},
{"name": "Bose", "confidence": 80}
],
"features": [
{
"name": "Water Resistance",
"synonyms": ["IPX rating", "sweat proof", "waterproof", "moisture protection"],
"category": "physical",
"importance": 10,
"brands_known_for": ["Jabra", "Sony"]
},
{
"name": "Secure Fit",
"synonyms": ["ear hooks", "wing tips", "stability", "won't fall out"],
"category": "physical",
"importance": 9,
"brands_known_for": ["Beats", "Jabra"]
}
],
"generated_queries": [
"wireless earbuds IPX7 waterproof ear hooks stable connection running",
"sweat proof earbuds wing tips secure fit sports workout",
...
]
}
1. Суть исследования
Amazon исследовала проблему поисковых запросов с суперлативами ("best”, “top”, “most popular") в e-commerce. Такие запросы составляют значительную долю поискового трафика, но традиционные поисковые системы плохо их обрабатывают — они не понимают, что “лучший” означает конкретные критерии качества, которые зависят от категории товара.
Авторы создали датасет из 21,407 суперлативных запросов и 1,070,350 пар запрос-товар с разметкой на три категории: RELEVANT AND BEST (товар соответствует требованиям И превосходит по критериям суперлатива), RELEVANT BUT NOT BEST (соответствует, но не выделяется), IRRELEVANT (не соответствует базовым требованиям).
Ключевая идея: использовать LLM для декомпозиции суперлативов в структурированные hints (бренды, характеристики, альтернативные запросы), которые генерируются offline и затем используются двумя способами: (1) для улучшения BM25 через расширение запроса, (2) для обучения маленьких моделей (0.5B-3B параметров), которые превосходят большие LLM (72B) при скорости в 14 раз выше.
Это важно для практиков, потому что показывает путь от медленного LLM-ранжирования к production-ready решению: извлечь знания один раз, применять быстро.
2. Что работает
Что работает:
Query Enhanced BM25 (QE-BM25): 25.93 P@1
- Использует 10 сгенерированных LLM альтернативных запросов
- Каждый запрос раскладывает суперлатив на конкретные атрибуты
- BM25 считается для каждого запроса отдельно, затем скоры усредняются
- +10.5 точек над обычным query expansion (doc2query: 15.41 P@1)
Pointwise файнтюн с hints (3B модель): 64.39 P@1
- Маленькая модель (3B) обучена на парах запрос-товар с добавлением hints
- Hints включают: топ-3 бренда, ключевые features из LLM-анализа
- +6.2 точки над той же моделью без hints (58.15 P@1)
- Превосходит DeepSeek-R1 reasoning модель (47.06 P@1) при скорости в 14 раз выше
Pointwise файнтюн с hints (0.5B модель): 56.71 P@1
- Даже модель 0.5B с hints обходит Qwen2.5-72B listwise (35.31 P@1)
- +4.2 точки над версией без hints (52.47 P@1)
- Латентность 4.364s vs 3.688s для чистого поиска (overhead 18%)
Что НЕ работает:
Vanilla BM25: 14.91 P@1
- Не понимает суперлативы — ищет буквально слово “best”
- Не раскладывает на конкретные критерии
Generic Query Expansion (doc2query): 15.73 P@1
- Улучшение минимальное (+0.82 над BM25)
- Не специфичен для суперлативов — расширяет запрос общими синонимами
Listwise LLM ранжирование (Qwen2.5-72B): 35.31 P@1
- Проблема “lost in the middle” — 50 товаров = 28k токенов
- Даже с chunking (по 10 товаров) результат хуже маленьких моделей
- Латентность неприемлема для production
Dense retriever без ре-ранжирования: 20.14 P@1
- Лучше BM25, но хуже QE-BM25
- Эмбеддинги не учитывают специфику суперлативов
Главный вывод:
Суперлативы требуют явной декомпозиции на конкретные атрибуты. Generic методы (doc2query, dense retrieval) дают минимальный прирост. Специфичная для суперлативов декомпозиция через LLM (QE-BM25) даёт +10.5 точек. Перенос этих знаний в маленькую модель через файнтюн даёт ещё +38 точек (64.39 vs 25.93) при сохранении скорости.
Детальный разбор ключевых элементов
1. Hints: структурированная декомпозиция суперлатива
Что: LLM генерирует 4 блока информации для каждого суперлативного запроса:
- Reasoning — объяснение, что означает суперлатив в контексте категории
- Brands — 5-10 брендов с confidence score (0-100)
- Features — 5-10 ключевых характеристик с синонимами, важностью (1-10), категорией (physical/performance/convenience/aesthetic)
- Generated Queries — 10 альтернативных запросов без суперлатива, каждый включает ВСЕ features с разными синонимами
Почему работает: Суперлатив “best” — это абстракция. Для шариков “best” = безопасный материал + яркие цвета + долго держат воздух. Для наушников “best” = шумоподавление + время работы + комфорт. LLM знает эти критерии из обучающих данных (обзоры, экспертные статьи). Hints делают неявное знание явным.
Пример для “best balloons for birthday":
{
"reasoning": "For birthday balloons, 'best' means: vibrant colors for festive atmosphere, durable latex/foil material that holds helium 8+ hours, variety pack for decoration flexibility, child-safe non-toxic materials.",
"brands": [
{"name": "Qualatex", "confidence": 95}, # известен качеством латекса
{"name": "Anagram", "confidence": 90}, # лидер фольгированных шаров
{"name": "Party City", "confidence": 75}
],
"features": [
{
"name": "Material Quality",
"synonyms": ["latex thickness", "foil durability", "burst resistance"],
"importance": 10,
"brands_known_for": ["Qualatex"]
},
{
"name": "Color Variety",
"synonyms": ["multicolor pack", "vibrant shades", "assorted colors"],
"importance": 9
}
],
"generated_queries": [
"latex balloons multicolor pack helium-grade party decoration",
"foil balloons vibrant shades long-lasting birthday celebration"
]
}
Цифры: Hints улучшают 3B модель с 58.15 до 64.39 P@1 (+6.2), 0.5B модель с 52.47 до 56.71 P@1 (+4.2).
2. Query Enhanced BM25: параллельный поиск по декомпозированным запросам
Что:
- Генерируем 10 альтернативных запросов через hints (offline)
- Для каждого запроса считаем BM25 по топ-50,000 товаров
- Усредняем скоры по всем запросам
- Ранжируем по среднему скору
Почему работает: BM25 — лексический поиск, он ищет точные совпадения слов. Запрос “best balloons” найдёт товары со словом “best” в описании, но не найдёт товары с “premium quality latex”. Генерация 10 запросов с разными синонимами features покрывает разные формулировки в описаниях товаров.
Пример:
Исходный запрос: "best noise cancelling headphones"
Сгенерированные запросы:
1. "active noise cancellation headphones premium audio quality"
2. "ANC headphones ambient sound blocking long battery life"
3. "noise blocking headphones adaptive sound control comfortable fit"
...
BM25 для запроса 1: товар A (score 8.5), товар B (score 3.2)
BM25 для запроса 2: товар A (score 2.1), товар B (score 9.7)
...
Средний score: товар A (5.8), товар B (6.1) → товар B выше
Цифры: QE-BM25 достигает 25.93 P@1 vs 14.91 для vanilla BM25 (+11 точек), 15.73 для doc2query (+10.2 точки). MAP улучшается с 24.79 до 35.74 (+10.95).
3. Pointwise файнтюн с hints: перенос знаний в маленькую модель
Что:
- Обучаем модель 0.5B-3B на парах (запрос + товар) → релевантность (3 класса)
- В контекст добавляем: топ-3 бренда из hints, ключевые features
- Формат:
relevance query: {query} {brand_info} product: {product_details}
Почему работает: Маленькая модель не знает, что “Qualatex” — премиум бренд шариков. Добавление брендов из hints создаёт связь: запрос “best balloons” + бренд “Qualatex” в контексте → модель учится, что товары Qualatex релевантны для “best”. Features работают аналогично: модель учится связывать “best” с конкретными атрибутами ("latex thickness”, “helium retention").
Пример входа для модели:
relevance query: best balloons for birthday
brands: Qualatex, Anagram, Party City
features: latex thickness, multicolor variety, helium retention, child-safe material
product: Qualatex 11" Latex Balloons, Assorted Colors, 100-Pack. Premium latex, holds helium 12+ hours, vibrant colors, biodegradable.
Цифры:
- 3B модель: 58.15 P@1 без hints → 64.39 P@1 с hints (+6.24)
- 0.5B модель: 52.47 P@1 без hints → 56.71 P@1 с hints (+4.24)
- Обе модели с hints превосходят Qwen2.5-72B listwise (35.31 P@1)
4. Параллельная генерация hints: нулевой overhead
Что: Hints генерируются offline или параллельно с первым этапом поиска (dense retrieval). К моменту, когда нужно ре-ранжировать топ-50 товаров, hints уже готовы.
Почему работает: Dense retrieval (FAISS ANN search) занимает 3.688s. Генерация hints через LLM API занимает ~4s, но выполняется параллельно. Итоговая латентность = max(3.688s, 4s) = 4s, а не 3.688s + 4s = 7.688s.
Добавление hints в контекст модели увеличивает длину входа → +149ms для 0.5B (overhead 3.5%), +473ms для 3B (overhead 6.8%).
Пример пайплайна:
t=0s: Запрос "best balloons" → запускаем параллельно:
[Thread 1] Dense retrieval (FAISS)
[Thread 2] Генерация hints (LLM API)
t=3.7s: Dense retrieval завершён → топ-50 товаров
t=4.0s: Hints готовы
t=4.0s: Ре-ранжирование 0.5B модели с hints
t=4.364s: Финальный результат
Overhead hints: 4.364s - 3.688s = 0.676s (18%)
Цифры:
- 0.5B+hints: 4.364s end-to-end (overhead 18% vs чистый поиск 3.688s)
- 3B+hints: 7.385s end-to-end (overhead 100%)
- Вычислительная эффективность: 0.122-0.224 PFlops vs 1.200-1.720 PFlops для listwise LLM (экономия 14x)
5. Синонимы features: покрытие разных формулировок
Что: Для каждой характеристики генерируем 3-5 синонимов. Пример для “noise cancellation":
- “ANC” (аббревиатура)
- “ambient sound blocking” (описательная фраза)
- “adaptive noise control” (техническая формулировка)
- “active noise reduction” (альтернативный термин)
Почему работает: Описания товаров используют разную терминологию. Один производитель пишет “ANC technology”, другой “advanced noise blocking system”. Без синонимов BM25 найдёт только первый. С синонимами — оба.
Пример:
Feature: Water Resistance
Synonyms: ["IPX rating", "sweat proof", "waterproof", "moisture protection"]
Товар A: "IPX7 certified for water resistance"
Товар B: "Sweat proof design for intense workouts"
Запрос без синонимов: "water resistance headphones" → найдёт только товар A
Запрос с синонимами: генерируем 10 запросов, включая:
- "IPX rating headphones secure fit"
- "sweat proof earbuds stable connection"
→ найдёт оба товара
Цифры: QE-BM25 с синонимами достигает 100% average coverage при 50k кандидатов (vs 99.35% при 5k).
3. Чего избегать
| Антипаттерн | Почему вредит | Что делать вместо |
|---|---|---|
| Listwise ранжирование 50 товаров | “Lost in the middle” — модель теряет релевантность в середине длинного контекста. Qwen2.5-72B: 35.31 P@1 | Pointwise с hints: 64.39 P@1 при скорости в 14 раз выше |
| Generic query expansion (doc2query) | Не учитывает специфику суперлативов. Прирост +0.82 P@1 над BM25 | Query Enhanced BM25 с декомпозицией суперлатива: +11 P@1 над BM25 |
| Использование reasoning моделей на inference | DeepSeek-R1 даёт 47.06 P@1, но латентность неприемлема для production | Извлечь знания в hints offline, использовать маленькую модель: 64.39 P@1 при 7.385s |
| Игнорирование брендов в hints | Модель не знает, что “Qualatex” = премиум бренд шариков | Добавлять топ-3 бренда в контекст: +6.2 P@1 для 3B модели |
4. Промпты
Рамочный промпт для генерации hints
[БЛОК 1: Роль и задача]
Ты — эксперт по e-commerce поиску. Твоя задача — разложить суперлатив в запросе
на конкретные критерии, которые можно использовать для ранжирования товаров.
← Зачем: задаёт экспертный режим, фокус на практическое применение
[БЛОК 2: Входные данные]
Запрос: {query}
Категория товара: {category}
← Зачем: контекст для интерпретации суперлатива
[БЛОК 3: Структура анализа]
Выполни анализ по 4 блокам:
1. REASONING (2-3 предложения)
Что означает суперлатив "{superlative}" в контексте {category}?
Какие конкретные характеристики определяют "лучший" товар?
Пример для "best noise cancelling headphones":
"Best" означает: активное шумоподавление (ANC) с адаптивным алгоритмом,
время работы 20+ часов, комфортная посадка для длительного ношения,
премиум качество звука с поддержкой Hi-Res Audio.
← Зачем: объясняет логику декомпозиции
2. BRANDS (5-10 брендов с confidence 0-100)
Какие бренды известны качеством в категории {category}?
Формат: [{"name": "Brand", "confidence": 95}, ...]
Пример для наушников:
[
{"name": "Sony", "confidence": 95},
{"name": "Bose", "confidence": 90},
{"name": "Apple", "confidence": 85}
]
← Зачем: связывает суперлатив с конкретными брендами
3. FEATURES (5-10 характеристик)
Для каждой характеристики укажи:
- name: название
- synonyms: [3-5 синонимов и альтернативных формулировок]
- category: physical/performance/convenience/aesthetic
- importance: 1-10 (насколько критична для суперлатива)
- brands_known_for: [бренды, известные этой характеристикой]
Пример для "best wireless earbuds for running":
{
"name": "Water Resistance",
"synonyms": ["IPX rating", "sweat proof", "waterproof", "moisture protection"],
"category": "physical",
"importance": 10,
"brands_known_for": ["Jabra", "Sony"]
}
← Зачем: раскладывает суперлатив на измеримые атрибуты с синонимами
4. GENERATED QUERIES (10 альтернативных запросов)
Перефразируй запрос БЕЗ суперлатива, используя конкретные характеристики.
ТРЕБОВАНИЯ:
- Каждый запрос включает ВСЕ ключевые features
- Каждый запрос использует РАЗНЫЕ синонимы
- Запросы звучат естественно (как реальный поисковый запрос)
Пример для "best balloons for birthday":
1. "latex balloons bright colors helium-grade party decoration"
2. "foil balloons multicolor long-lasting birthday celebration"
3. "premium party balloons vibrant shades air-retention kids safe"
...
← Зачем: создаёт запросы для Query Enhanced BM25
[БЛОК 4: Формат вывода]
Верни валидный Python dict, который можно распарсить через ast.literal_eval.
Структура:
{
"domain": "категория товара",
"ranking_intent": "анализ критериев ранжирования",
"brands": [...],
"features": [...],
"generated_queries": [...]
}
← Зачем: структурированный формат для автоматической обработки
Готовый промпт для генерации hints
"""
Ты — эксперт по e-commerce поиску. Разложи суперлатив в запросе на конкретные критерии для ранжирования.
Запрос: {query}
Категория: {category}
Выполни анализ:
1. REASONING (2-3 предложения)
Что означает суперлатив в контексте категории? Какие характеристики определяют "лучший" товар?
2. BRANDS (5-10 брендов)
Формат: [{"name": "Brand", "confidence": 0-100}, ...]
Какие бренды известны качеством в этой категории?
3. FEATURES (5-10 характеристик)
Для каждой:
- name: название характеристики
- synonyms: [3-5 синонимов для лексического поиска]
- category: physical/performance/convenience/aesthetic
- importance: 1-10 (критичность для суперлатива)
- brands_known_for: [бренды, известные этой характеристикой]
Пример для "best wireless earbuds for running":
{
"name": "Water Resistance",
"synonyms": ["IPX rating", "sweat proof", "waterproof", "moisture protection"],
"category": "physical",
"importance": 10,
"brands_known_for": ["Jabra", "Sony"]
}
4. GENERATED QUERIES (10 запросов)
Перефразируй БЕЗ суперлатива, используя конкретные features.
КАЖДЫЙ запрос включает ВСЕ ключевые features, но с РАЗНЫМИ синонимами.
Пример для "best balloons for birthday":
- "latex balloons bright colors helium-grade party decoration"
- "foil balloons multicolor long-lasting birthday celebration"
- "premium party balloons vibrant shades air-retention kids safe"
Формат вывода: валидный Python dict для ast.literal_eval
{
"domain": "...",
"ranking_intent": "...",
"brands": [...],
"features": [...],
"generated_queries": [...]
}
"""
Ключевые элементы:
- "Разложи суперлатив на конкретные критерии" — фокусирует модель на декомпозиции абстракции
- "synonyms: [3-5 синонимов для лексического поиска]" — явно указывает цель синонимов (BM25)
- "КАЖДЫЙ запрос включает ВСЕ ключевые features" — обеспечивает полноту покрытия
- "brandsknownfor" — связывает бренды с конкретными характеристиками
- "importance: 1-10" — позволяет взвешивать features при ранжировании
5. Оригинальные материалы из исследования
Оригинальный промпт: генерация hints для суперлативного запроса
"""
# Brand and Feature Extraction from Superlative Queries with Synonyms
You are tasked with extracting relevant brands and features from user queries
containing superlative terms (like "best," "top," "greatest," "most popular," etc.)
to improve search result ranking for recommendation-seeking queries.
## Process
When presented with a superlative query, please:
1. Identify the product/service domain and specific category
2. Analyze what the superlative terms imply about user preferences
(e.g., "best" might imply quality, "most popular" implies social proof)
3. Extract 5-10 most relevant brands, with confidence scores for each
4. Extract 5-10 most relevant features that would determine excellence in this category
5. Identify which brands are particularly known for excelling in these key features
6. For each feature, generate a list of synonyms and alternative phrasings
to enable lexical matching
## Output Format
<analysis>
{
"domain": "Product/service category",
"ranking_intent": "Analysis of what the superlative qualifiers suggest about ranking criteria",
"query_clarification": "Any ambiguities that might benefit from clarification"
}
</analysis>
<brands>
[
{"name": "Brand 1", "confidence": 95},
{"name": "Brand 2", "confidence": 90},
# Include 5-10 brands total
]
</brands>
<features>
[
{
"name": "Feature 1",
"synonyms": ["alternative term 1", "alternative term 2", "similar phrase", "related concept"],
"category": "physical|performance|convenience|aesthetic|...",
"importance": 10,
"brands_known_for": ["Brand X", "Brand Y"]
},
# Include 5-10 features total, importance scale 1-10
]
</features>
<feature_coverage_queries>
[
"Query incorporating ALL features using synonym set 1 for each feature",
"Query incorporating ALL features using synonym set 2 for each feature",
# Include 10 queries total
]
</feature_coverage_queries>
## Guidelines
- Focus specifically on superlative queries seeking "best," "top," "highest rated," "most popular" items
- Provide 5-10 brands and 5-10 features (more for common queries, fewer for niche ones)
- Assign confidence scores (0-100) to brands based on their relevance to the superlative query
- Categorize features and assign importance weights (1-10) based on how critical they are
to achieving excellence in this category
- Generate exactly 10 feature coverage queries where:
- EACH query includes ALL identified features
- Each query uses DIFFERENT synonyms for expressing the same features
- Each query is phrased as a complete search query a user might type
- Each query includes the core product/category concept from the original query
- Include common variations, industry-specific terminology, and consumer language in the synonyms
- For highly specialized queries, include closely related brands/alternatives
- Identify which brands are particularly known for excellence in which key features
- Format must be valid Python literal that can be parsed by ast.literal_eval
## Query
<query>
"""
Результат: Этот промпт генерирует hints, которые улучшают QE-BM25 с 14.91 до 25.93 P@1 (+11 точек) и позволяют маленькой модели 3B достичь 64.39 P@1 (превосходит 72B модель на 29 точек).
Описание конкретных механик:
- Confidence scores для брендов — позволяют взвешивать бренды при ранжировании (топ-3 бренда добавляются в контекст модели)
- Importance weights для features — приоритизируют критичные характеристики (features с importance 9-10 обязательны в generated queries)
- Synonyms для каждой feature — обеспечивают покрытие разных формулировок в BM25 (каждый из 10 generated queries использует разные синонимы)
- brandsknownfor — связывает бренды с конкретными характеристиками (помогает модели понять, что Sony известна ANC, Jabra — water resistance)
6. Пример (было/стало)
Пример: Поиск роскошных женских сандалий
Контекст: Запрос “best women’s luxury sandals” — пользователь ищет премиум сандалии, но не указывает конкретные критерии роскоши.
Было (baseline модель 3B без hints):
Топ-3 результата:
1. OluKai Kaekae Women's Beach Sandals
Full-Grain & Metallic Leather Flip-Flop Slides with Wet Grip Soles
2. OluKai Ho'opio Leather Women's Beach Sandals
Full-Grain Leather Flip-Flop Slides, Modern Low Profile Design
3. Tory Burch Women's Emmy Flat Sandals
Ambra, Tan, 7 Medium US
Стало (модель 3B с hints):
Топ-3 результата:
1. Tory Burch Women's Emmy Flat Sandals
Ambra, Tan, 7 Medium US
2. Tory Burch Women's Double T Sport Slides
Spark Gold/New Cream/Gold, 6 Medium US
3. M by Bruno Magli Womens Jade Sandal
9 B US, Beige
Что изменилось и почему сработало:
Hints: brands — модель получила список luxury брендов:
[{"name": "Tory Burch", "confidence": 95}, {"name": "Bruno Magli", "confidence": 90}, {"name": "Stuart Weitzman", "confidence": 85}]Как проявилось: Baseline модель ранжировала OluKai (mid-tier бренд, известный комфортом, но не luxury) выше Tory Burch. С hints модель научилась связывать “luxury” с конкретными брендами → Tory Burch поднялся на 1-2 места.
Hints: features — модель получила критерии luxury:
[{"name": "Premium Materials", "synonyms": ["full-grain leather", "Italian leather", "suede"], "importance": 10}, {"name": "Designer Brand", "importance": 9}, {"name": "Craftsmanship", "synonyms": ["handmade", "artisan", "hand-stitched"], "importance": 8}]Как проявилось: OluKai описывается как “beach sandals” с фокусом на “wet grip” (функциональность), а Tory Burch — “designer sandals” с “premium leather” (luxury атрибуты). Hints научили модель приоритизировать luxury атрибуты над функциональными.
Hints: generated queries — модель обучалась на запросах типа:
"designer leather sandals premium craftsmanship women","luxury brand sandals Italian leather handmade"→ научилась связывать “luxury” с конкретными формулировками в описаниях товаров.
Результат: Human evaluation показала, что hint-augmented система выигрывает в 51 из 78 случаев (win rate 65.38%) при исключении ties. Для luxury запросов улучшение особенно заметно — baseline часто ранжировал mid-tier бренды выше из-за более детальных описаний функциональности.
7. Ограничения
На чём тестировалось:
- Только английский язык (US рынок)
- Только e-commerce домен (Amazon товары)
- 56 категорий товаров, но неравномерное распределение (25.87% запросов в Clothing, только 0.58% в Baby Care)
- LLM-generated labels (Claude 3.5 Sonnet v2), валидированные на 153 запросах людьми (Cohen’s kappa 0.74)
Когда метод может не работать:
- Другие языки — суперлативы работают по-разному в разных языках (грамматика, культурные коннотации)
- Нишевые категории — если категория не представлена в обучающих данных LLM, hints могут быть неточными
- Динамичные рынки — hints генерируются offline, не учитывают изменения трендов (новый бренд стал популярным, но не попал в hints)
- Неоднозначные суперлативы — “best value” может означать “дешёвый” или “оптимальное соотношение цена/качество”
Важные оговорки авторов:
- Эксперименты только с Qwen семейством моделей для pointwise — не тестировали Phi-4, Llama и другие архитектуры
- Listwise эксперименты только с Qwen2.5-72B и DeepSeek-R1 — не тестировали OpenAI o1, Claude 3.7 Sonnet
- Hints генерируются через дорогую модель (Claude 3.5 Sonnet v2) — в production нужна более дешёвая альтернатива или кэширование для частых запросов
- Метод не тестировался на conversational search, question suggestion и других смежных задачах
8. Оценка
| Критерий | Макс. | Баллы | Обоснование |
|---|---|---|---|
| Новизна | 35 | 30 | Первое исследование явной декомпозиции суперлативов для e-commerce поиска; новый датасет 21k запросов |
| Практичность | 35 | 22 | Метод работает, но требует файнтюнинга модели для лучших результатов; QE-BM25 можно применить через API |
| Воспроизводимость | 25 | 20 | Код и данные опубликованы; детальные промпты; но нужна адаптация под свой домен |
| Доказательства | 20 | 18 | Большой датасет, human evaluation (Cohen’s kappa 0.74), ablation studies, но только Amazon домен |
| Штраф за барьер | -25 | Высокий: Для полного применения нужен файнтюн модели (GPU, обучающие данные); QE-BM25 проще, но даёт меньший прирост | |
| ИТОГО | 65/100 |
Барьер входа: Высокий
Что нужно для применения результатов:
Для QE-BM25 (средний барьер, -15):
- Доступ к LLM API (Claude/GPT-4) для генерации hints
- Адаптация промпта генерации hints под свой домен
- Интеграция в существующий BM25 пайплайн
- Результат: +11 P@1 над vanilla BM25
Для pointwise файнтюна (высокий барьер, -25):
- Сбор обучающих данных (пары запрос-товар с релевантностью)
- GPU для обучения (3-4 часа на L40s для 3B модели)
- Генерация hints для обучающих запросов
- Файнтюн модели 0.5B-3B
- Результат: 64.39 P@1 (лучший результат)
Что НЕ нужно (не считается барьером):
- Доступ к весам модели — используются публичные модели через HuggingFace
- Сложная инфраструктура — можно запустить на одной GPU
- Обучение с нуля — используется файнтюн готовых моделей
Интерпретация
Категория: Полезное (65/100)
Главная ценность: Первое систематическое исследование декомпозиции суперлативов в e-commerce поиске с практическим методом переноса знаний LLM в быстрые модели.
Кому полезно:
- E-commerce платформам с большим объёмом суперлативных запросов
- ML-инженерам, готовым файнтюнить модели для ранжирования
- Исследователям query understanding и semantic search
Кому НЕ полезно:
- Практикам без GPU и обучающих данных (QE-BM25 даёт только +11 P@1)
- Проектам вне e-commerce (метод специфичен для товарного поиска)
- Командам без ресурсов на адаптацию под свой домен
Ресурсы:
- Код и данные: https://github.com/yilunzhu/superhints/
- Amazon Shopping Queries Dataset (KDD 2022): https://github.com/amazon-science/esci-data
- Статья: Hint-Augmented Re-ranking (2025)
