Москва+7 499 653-84-54
Как работает поиск SearchBooster: от опечатки до покупки

Как работает поиск SearchBooster: от опечатки до покупки

21 октября 2026

14 мин

Иван Красников

Иван Красников

Технический директор SearchBooster. Отвечает за поисковый движок, рекомендации и инфраструктуру платформы: от исправления опечаток до того, какой товар покупатель увидит первым.

Покупатель набирает «rhjccjdrb ve;crbt», нажимает Enter и через мгновение видит мужские кроссовки. Он не замечает, что забыл переключить раскладку. Не замечает и того, что за эти доли секунды поиск успел исправить запрос, перебрать несколько стратегий и выстроить товары так, чтобы первым оказался тот, который он скорее всего купит.

И не должен замечать: хороший поиск незаметен. Зато его хорошо видно в выручке. Покупатели, которые пользуются поиском, уже знают, чего хотят, и покупают заметно чаще остальных. Каждый пустой или неточный ответ — это клиент, ушедший к конкуренту.

В этой статье покажем, что происходит внутри SearchBooster, — на схемах, примерах и цифрах из наших замеров.

Путь одного запроса

  1. Подготовка

    Подхватываем настройки магазина и его правила для этого запроса

    rhjccjdrb ve;crbt
  2. Исправление

    Раскладка, опечатки и слипшиеся слова — по словарю каталога магазина

    кроссовки мужские
  3. Готовый ответ

    Такой запрос недавно уже искали — отвечаем мгновенно

    нового нет → ищем
  4. Каскад шагов

    От точного совпадения к примерному, пока не найдутся товары

    шаг 1: найдено 248
  5. Ранжирование

    Наличие, популярность, приоритеты магазина

    в наличии — выше
  6. Ответ

    Товары, фильтры, категории, подсказки, правила выдачи

    товары и фильтры
Пример: покупатель набрал «кроссовки мужские», забыв переключить раскладку. Запрос исправляется ещё до поиска, а покупатель видит, что именно мы искали.

Понимаем покупателя с ошибками

Люди ищут на ходу, с телефона, одним пальцем. Опечатки, неверная раскладка, слипшиеся слова, недописанные окончания — это не исключение, а норма. Если поиск отвечает на такой запрос пустой страницей, покупатель решает, что товара нет.

Учимся на каталоге магазина

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

Каждый раз, когда магазин обновляет каталог, мы собираем его собственный словарь: названия, бренды, модели, категории — и запоминаем, насколько часто встречается каждое слово. Добавляем синонимы, которые настроил магазин, словарь русского языка на 110 тысяч слов и знания о том, какие слова встречаются в каталогах других магазинов.

Забыли переключить раскладку

Самая частая «ошибка» — вовсе не ошибка в слове. Мы проверяем каждое слово запроса: если в другой раскладке оно есть в каталоге, значит, покупатель просто не переключил язык.

Ошибка раскладки: проверяем каждое слово отдельно

rкhрjоcсcсjоdвrкbи
кроссовкиесть в каталоге
nтhрbиvмvмtеhр
триммересть в каталоге
oщlдeуoщmьaфcс
oleomac«щдущьфс» нигде нет, а бренд есть в каталоге — оставляем
Слово переключаем, если в другой раскладке оно есть в каталоге магазина или его начало встречается хотя бы в 10 товарах. Если подтвердились два слова и больше, переводим весь запрос. Бренды, написанные латиницей правильно, не трогаем: «nhbvvth oleomac» станет «триммер oleomac».

Есть и косвенные признаки. Например, «ltdjkn» и «vbkdjrb» не похожи ни на одно настоящее слово, а в русской раскладке это «деволт» и «милвоки». А запятая внутри слова («yf,jh») почти наверняка означает, что покупатель хотел написать букву «б» — получается «набор».

Опечатки — с осторожностью

Неверное исправление хуже, чем никакого. Если вместо «симки» показать сумки, покупатель решит, что магазин его не понимает. Поэтому исправляем только тогда, когда уверены.

Где исправляем, а где нарочно оставляем как есть

Исправим

  • kfdbfnehfклавиатура

    раскладка, а потом опечатка «лавиатура»

  • yf,jhнабор

    знаки препинания на месте букв — верный признак раскладки

  • eukjikbajdfkmyfzуглошлифовальная

    весь запрос подтвердился другими словами

  • брюкимужскиебрюки мужские

    обе части часто встречаются в каталоге

Не тронем

  • симки

    есть в словаре русского языка — это не опечатка в «сумки»

  • сврные

    одинаково похоже на «свиные» и «сырные» — не угадываем

  • вода минираль

    последнее слово ещё дописывают — не превращаем его в «мистраль»

  • дорадо

    часто встречается в каталогах других магазинов — значит, это настоящее слово

Правила строгие: в коротком слове исправляем не больше одной буквы, в длинном — две, и только в сторону слов, которые реально есть в товарах магазина. Бренды и модели на латинице не трогаем.

На чём держится точность:

  • Бренды и модели не трогаем. Латиница в запросе — почти всегда название бренда или модели, «исправлять» их опасно.
  • Настоящее слово — не опечатка. Даже если такого товара в магазине нет.
  • Не угадываем. Если исправить можно двумя разными способами, оставляем как есть.
  • Ждём, пока допишут. «Вода минираль» — это начало «минеральной», а не ошибка в «мистраль».
  • Честно показываем. Над выдачей видно, какой запрос мы искали на самом деле.

Четыре уровня защиты

Словарь каталога — первый, но не единственный рубеж.

Четыре слоя исправления ошибок

  1. 1. До поискаСловарь каталога

    Раскладка, опечатки и слипшиеся слова — только в сторону слов, которые реально есть в товарах магазина

    брюкимужскиебрюки мужские
  2. 2. До поискаРаскладка целиком

    Отдельный алгоритм переводит весь запрос в другую раскладку — этот вариант ищут отдельные шаги каскада

    cfvjrfnсамокат
  3. 3. Во время поискаПрощаем ошибки при поиске

    Одна-две ошибки в слове не мешают найти товар — даже если ошиблись в первой букве

    подвиснаяподвесной
  4. 4. После поискаВторая попытка

    Если нашлось мало или ничего, а исправление очевидно и единственное, — повторяем поиск с ним

    makittamakita
Каждый следующий слой ловит то, что пропустил предыдущий. Первые два работают с текстом запроса, третий — во время поиска, четвёртый — по его результатам.

А чтобы товар находили даже без исправлений, его название заранее записывается ещё и латиницей, и «в неправильной раскладке». Запрос «girlyanda» найдёт гирлянду.

Сначала — точное совпадение

Найти «все товары, где есть хоть одно слово из запроса» легко. Сложно найти именно то, что искали, и не утопить это среди «примерно похожего».

Поэтому поиск устроен как лестница: от самого точного совпадения к самому мягкому. Как только на ступеньке нашлись товары, поиск останавливается — покупатель видит точные ответы, а не мешанину. Выберите запрос и посмотрите, где он найдётся:

Лестница поиска: от точного к примерному

  1. 1

    Все слова, точная фраза выше

    Каждое слово запроса должно найтись: в исходной форме, через синонимы или как начало слова

    найдено 214 → стоп
  2. 2

    Все слова, ранжирование по доле совпадения

    Та же строгость, но выше товары, где совпала бо́льшая часть запроса

    не понадобился
  3. 3

    Все слова с допуском опечаток

    Прощаем одну-две ошибки в слове; артикулы — только точно

    не понадобился
  4. 4

    Мягкий поиск

    Достаточно 100%, 75% или 50% слов — смотря по длине запроса

    не понадобился
  5. 5

    Все слова в другой раскладке

    Строгий шаг для запроса, переведённого из другой раскладки

    не понадобился
  6. 6

    Мягкий поиск в другой раскладке

    То же, но достаточно части слов

    не понадобился
  7. 7

    Разбиение слипшегося слова

    Длинное слово без пробелов делим на части

    не понадобился
  8. 8

    Подстрока в названии и артикуле

    Последний шанс: ищем запрос как кусок текста

    не понадобился

Обычный запрос: всё нашлось на первой ступеньке, остальные даже не понадобились.

Поиск останавливается на первой ступеньке, где нашлись товары, поэтому точные совпадения никогда не смешиваются с «примерно похожими». Количество найденного в примерах условное.

Для особых случаев есть отдельные сценарии:

  • Ссылка на товар. Покупатель вставил в строку поиска адрес страницы — сразу показываем этот товар.
  • Артикул. Оптовики и профессионалы ищут по кодам. При точном совпадении покупатель попадает прямо в карточку товара.
  • «Что для чего». По запросу «масло для генератора» покупатель хочет масло, а не генератор, в описании которого упомянуто масло. Такие запросы мы разбираем отдельно.
  • Нейросеть для сложных запросов. Длинный описательный запрос можно переформулировать с помощью нейросети, чтобы найти подходящие товары.

Порядок ступенек настраивается под каждый магазин.

Быстро — даже под нагрузкой

Скорость поиска напрямую влияет на продажи: чем дольше ожидание, тем больше покупателей уходят, не дождавшись ответа.

Не ждём, а работаем параллельно

Лестница из ступенек хороша для точности, но если на точной ступеньке ничего не нашлось, время следующей прибавляется к ожиданию. На длинных запросах каждая из «тяжёлых» ступенек может занимать больше секунды. Поэтому следующую мы запускаем заранее, не дожидаясь предыдущей.

Два дорогих шага — одновременно, а не по очереди

Было: по очереди≈ 2,4 с
строгий → 0
мягкий → 37
Стало: параллельно≈ 1,2 с
строгий → 0
мягкий → 37
Если строгий шаг нашёл товарыфон отменён
строгий → 52
мягкий: отменён

строгий — все слова с допуском опечаток мягкий — достаточно части слов; число — сколько товаров нашлось

На длинных запросах каждый из двух шагов с опечатками может занимать 1–1,5 секунды. Раньше, если строгий шаг ничего не находил, его время складывалось со временем мягкого. Теперь мягкий шаг стартует заранее, в фоне. Если строгий что-то нашёл, фоновый поиск отменяется — выдача не меняется ни на один товар, меняется только время ответа.

Запускать всё сразу «на всякий случай» тоже неправильно — это лишняя нагрузка. Мы посмотрели на реальные запросы и включили параллельный режим только там, где он действительно помогает:

Как часто строгий шаг с опечатками справляется сам

1 слово
67%
2 слова
50%
3 слова
31%
5 и больше
9%

фоновый запуск включён не нужен

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

Тот же подход — замерять и оставлять только полезное — мы применяем везде. Например, проверка раскладки раньше добавляла 60–130 мс к каждому запросу с опечаткой, а помогала лишь в 0,07% случаев. Мы перенесли её позже — ответ стал быстрее, а качество не изменилось.

Фильтры за доли секунды

В магазинах электроники или стройматериалов у товаров сотни характеристик, и для каждой выдачи нужно посчитать, сколько товаров попадёт под каждый фильтр.

Фильтры в два прохода

Проход 1

Ищем товары

и собираем только список их характеристик

мощностьнапряжениепатрон

Проход 2

Считаем фильтры

3 характеристики вместо сотен по всему каталогу

цвет плафонаобъём бака…

Типичное время поиска

348 мс
140 мс
Сначала узнаём, какие характеристики вообще есть у найденных товаров, и считаем только их. На шести каталогах с 500+ фильтрами типичное время поиска сократилось с 348 до 140 мс.

Страницы каталога без поискового запроса тоже ускорились: на большом магазине ответ сократился с 3,9 до 0,23 секунды, а объём данных — в пять раз.

Наплыв покупателей

Наплыв покупателей не замедляет поиск

300 покупателей
ищут «кондиционер» в первый жаркий день

Готовые ответы

один запрос считает ответ, остальные ждут его и получают готовый

Поиск

выполняется один раз, а не 300

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

Поиск по смыслу и по фото

Поиск по словам незаменим, когда покупатель точно знает, что ищет: «перфоратор makita hr2470». Но запросы «что подарить рыбаку» или «платье на свадьбу летом» описывают задачу, а не товар. Таких слов в карточке может вовсе не быть.

Здесь помогает нейросеть: она понимает смысл запроса и находит товары, которые подходят по сути, даже если слова не совпадают.

Нейросеть читает карточку товара по частям

Текст карточки

названиехарактеристикиописаниесценарии использованиякакие проблемы решаетсовместимостьчто берут в комплектописание фото, сделанное нейросетью

Поиск по фото

  1. 1. Покупатель загружает снимок
  2. 2. Нейросеть «описывает», что на нём
  3. 3. Находим самые похожие фото товаров
  4. 4. Товары в наличии — выше: у отсутствующих оценка × 0,5
Если описать длинную карточку одним «смыслом», детали теряются. Поэтому нейросеть разбирает каждую часть отдельно, и запрос сравнивается сразу с несколькими из них. Фотографии понимает отдельная нейросеть — по ним можно искать и текстом, и снимком.

Лучшее из двух миров

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

Гибридный поиск: слова и смысл в одной выдаче

По словам

Падежи, синонимы, опечатки. Точен на «перфоратор makita hr2470».

По смыслу

Нейросеть понимает, о чём запрос. Сильнее на «что подарить рыбаку».

ТоварСлова × 0,7Смысл × 0,3Итог
Платье миди льняное, белое1.000.860.96
Костюм льняной с юбкой0.200.810.38
Платье вечернее, бархат0.450.180.37
Сарафан из хлопка, пудровый0.001.000.30
Запрос «платье на свадьбу летом». Поиск по словам находит то, где совпали слова; поиск по смыслу — то, что подходит по сути, даже без общих слов: сарафан из хлопка. Оценки складываются, по умолчанию с перевесом в пользу слов. Цифры в примере условные.

Соотношение настраивается под магазин. Новый режим можно сначала проверить «в тени»: покупатели видят прежнюю выдачу, а мы сравниваем, что изменилось бы. Наличие и популярность товаров учитываются в поиске по смыслу так же, как в обычном.

Говорим на языке покупателя

Магазин пишет «Ёлочная гирлянда LED-200, 10 м», покупатель — «гирлянды на елку led200». Чтобы они встретились, мы заранее превращаем каждое название в набор вариантов.

Что происходит с названием товара, когда мы загружаем каталог

  1. Название из каталога

    Как прислал магазин

    Ёлочная гирлянда LED-200, 10 м
  2. Регистр, «ё», разделители

    Точки, слэши, запятые и плюсы превращаются в пробелы

    елочнаягирляндаled-20010м
  3. Артикулы и модели

    Любое написание кода модели находит один и тот же товар

    led200led200
  4. Падежи и числа

    «Гирлянды», «гирлянду», «гирляндой» — всё сводится к одному слову

    елочныйгирлянда
  5. Синонимы магазина

    Магазин сам решает, какие слова считать равнозначными

    электрогирляндановогодняя
  6. Транслит и раскладка

    Для покупателей, которые не переключили язык

    girlyandaubhkzylf
  7. Начала слов

    Чтобы товар находился, пока слово ещё набирают

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

Поиск понимает русский, английский, узбекский, польский и другие языки. А магазин может дополнить его своими словарями: синонимами, исключениями и словами, которые не нужно учитывать.

Несколько словарных хитростей

  • духи≠дух

    Формально «духи» — это множественное число от «дух». Чтобы покупатель парфюма не получил что-то странное, для таких слов есть список исключений.

  • балона→баллон

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

  • чехолдлятелефона

    Предлоги и союзы не обязательны для совпадения: «чехол телефон» найдёт то же самое. Свой список у каждого языка и при желании у магазина.

Синонимы не обязательно придумывать вручную: мы предлагаем их автоматически на основе каталога.

Главное слово в запросе

По запросу «чехол для iphone 15» покупателю нужен чехол. Но защитное стекло для iPhone 15 совпадает с запросом почти так же хорошо: «iphone» и «15» в нём есть. А держатель «для чехла» содержит вообще все слова.

Поэтому поиск определяет главное слово — то, что называет тип товара, — и поднимает товары, которые им и являются.

Главное слово запроса

чехолглавное слово
дляграница
iphoneуточнение
15уточнение

Только совпадение слов

  1. 1Защитное стекло для iPhone 15
  2. 2Держатель для чехла iPhone 15 на руль
  3. 3Чехол-книжка для iPhone 15, чёрный×10
  4. 4Чехол силиконовый iPhone 15 Pro×10

С учётом главного слова

  1. 1Чехол-книжка для iPhone 15, чёрный×10
  2. 2Чехол силиконовый iPhone 15 Pro×10
  3. 3Защитное стекло для iPhone 15
  4. 4Держатель для чехла iPhone 15 на руль
Главное слово — первое русское слово от трёх букв до первого предлога, которое не похоже на прилагательное. Товар получает буст ×10, если слово с той же основой стоит в первых трёх словах названия и не после «для» или «на». Поэтому «держатель для чехла» не поднимается, хотя слово «чехол» в нём есть. Набор найденных товаров не меняется — меняется только порядок.

Запросы часто не дописаны, а ответ нужен мгновенно. Поэтому главное слово мы определяем по окончаниям и по словам каталога:

Как отличить главное слово, не зная части речи

  • серебрянне главноев каталоге за этим началом почти всегда идут прилагательные: «серебряные»
  • пылесглавноенедописанное «пылесос» — за ним в каталоге существительные
  • сокглавноеслова до четырёх букв считаем существительными
  • напылениеглавноеокончание «-ние» похоже на прилагательное, но это исключение

Мы проверили это правило на 19 магазинах. В тех запросах, где выдача изменилась, она стала лучше почти в половине случаев и хуже — лишь в 7–10%.

Первыми — те товары, которые купят

Найти подходящие товары — половина дела. Вторая половина — показать их в правильном порядке: большинство покупателей не листает дальше первого экрана.

Где совпало слово — так же важно, как что совпало

Артикул
×30
Тип товара
×15
Бренд
×10
Категория
×7
Модель
×6
Важные слова
×2
Прочий текст
×1
Веса полей по умолчанию для первого шага каскада. Совпадение всей фразы в названии весит ×60, начало фразы — ×40. Веса меняются для каждого магазина и даже для отдельного шага.

К оценке совпадения добавляются коммерческие факторы:

Итоговая оценка товара — произведение множителей

РелевантностьНаличиеПопулярностьКликабельностьБусты

Релевантность:
совпадение слов с учётом полей и главного слова
Наличие:
1 — в наличии, 0,1 — нет; по региону покупателя
Популярность:
логарифм кликов: хит не задавит новинку
Кликабельность:
как часто товар выбирают в выдаче — отдельно на телефонах и компьютерах
Бусты:
бренды, категории, значения характеристик

Затем — правила магазина

Закрепить товары на позициях, добавить или убрать товары и категории, заменить запрос, показать подборку при пустой выдаче, отправить на страницу акции.

Множители, а не слагаемые: товар не в наличии теряет в 10 раз при любой релевантности. Формулу можно настроить под магазин и проверить разные варианты в A/B-тесте, а поверх неё подключить машинное обучение на поведении покупателей.

Что это значит на практике:

  • Учитываем регион. Если товар есть на складе в Москве, но не в Казани, покупатель из Казани увидит его ниже.
  • Новинки не теряются. Популярность учитывается, но хиты не заслоняют всё остальное: у нового товара есть шанс подняться наверх.
  • Телефон и компьютер — разные сценарии. Покупатели ведут себя по-разному на разных устройствах, и поиск это учитывает.
  • Приоритеты магазина. Можно поднять свой бренд, опустить уценку или продвинуть нужную категорию.
  • Проверка цифрами. Разные настройки можно сравнить в A/B-тесте и выбрать ту, что приносит больше выручки.

И последнее слово всегда за магазином. Правила мерчандайзинга позволяют закрепить товары на нужных позициях, добавить подборку, заменить запрос («циркулярка» → «циркулярная пила»), показать альтернативы вместо пустой выдачи или отправить покупателя на страницу акции. Правила срабатывают даже на запросы с ошибками: «циркулярки» сначала превратится в «циркулярку», а затем сработает правило.

Коротко в цифрах

×2,5
быстрее работают фильтры на больших каталогах
×17
быстрее открываются страницы каталога
до ×2
быстрее ответ на длинные и сложные запросы
в 4–6 раз
чаще главное слово улучшает выдачу, чем ухудшает
4
уровня защиты от опечаток и неверной раскладки
19
магазинов, на которых мы проверяли новые правила ранжирования

Хороший поиск — это не одна «умная» технология, а сотни небольших решений, каждое из которых проверено на реальных запросах реальных покупателей. Мы продолжаем замерять и улучшать каждое из них.

Хотите проверить, как SearchBooster справится с вашим каталогом? Оставьте заявку — подключим тестовый проект и покажем разницу на ваших запросах.

Узнавайте первыми
о полезных материалах и новостях

Другие материалы