blog

Как мы учили поиск думать, пока страна доедала оливье

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

Именно в таком январе к нам пришёл запрос:
«Поиск есть, но он не понимает пользователей. Совсем.»

Когда поиск вроде работает, но ничего не находит

Каталог большой, ассортимент сложный, запросы — человеческие.
А поиск был… компьютерным. Слишком буквальным.

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

Добавим сюда январский фактор:
  • трафик скачкообразный;
  • часть команды в отпуске;
  • обновлять ядро системы «прямо сейчас» нельзя.

Весело? Немного. Управляемо? Уже не очень.

Решение: научить поиск понимать, а не угадывать

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

В основе — гибридный подход:
  • классический текстовый поиск для точных совпадений;
  • векторный поиск для смысла и контекста;
  • NLP для обработки языка, синонимов и сущностей.

Звучит красиво. На практике — куча нюансов.

Техническое осложнение №1: инфраструктура «на январских оборотах»

Любые серьёзные изменения в поиске — это:
  • пересборка индексов,
  • нагрузка на Elasticsearch,
  • тестирование под реальный трафик.

А январь не очень любит резкие движения.

Что сделали:
  • разворачивали систему параллельно существующему поиску;
  • тестировали на реальных логах, но без влияния на пользователей;
  • включали новый поиск постепенно, сегментами.

Никто ничего не заметил. Значит, всё прошло правильно.

Техническое осложнение №2: опечатки, которые ломают мозг

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

Решение:
  • многоуровневая система исправления опечаток;
  • fallback-поиск, если первый запрос не дал результатов;
  • автокомплит, который действительно помогает, а не просто «дописывает буквы».

Поиск перестал обижаться на пользователей. И это сильно улучшило отношения.

Техническое осложнение №3: система должна думать быстро

Интеллектуальный поиск — это круто, пока он не начинает думать слишком долго.

Мы оптимизировали:
  • векторные индексы (HNSW);
  • кеширование популярных запросов;
  • асинхронную обработку сложных сценариев.

В итоге поиск стал умнее, но не медленнее — что обычно самое сложное сочетание.

Что получилось в итоге

Через несколько недель:
  • количество пустых запросов резко сократилось;
  • пользователи начали находить товары даже по неточным формулировкам;
  • снизилась нагрузка на поддержку;
  • поиск стал основой для будущего AI-ассистента.

И главное — система перестала быть «фильтром», она стала помощником.

Главный вывод

Интеллектуальный поиск — это не про технологии.Это про уважение к пользователю.

Даже если он:
  • печатает с ошибками,
  • формулирует запрос «на глазок»,
  • делает это в январе, одной рукой, второй — держа мандарин.

Если поиск его понимает — бизнес выигрывает. А мы в очередной раз убедились: лучшие AI-проекты начинаются с простого вопроса «А почему людям сейчас неудобно?»
Подробнее с нашими кейсами можно ознакомиться тут

У Вас есть вопрос?

AI / ИИ