Как сделать умный поиск на сайте, если каталог уже есть
Пошаговый план внедрения умного поиска на готовый сайт: выгрузка каталога, индексация, проверка на своих запросах, встраивание и наблюдение.
Каталог у вас уже есть, значит, половина работы сделана. Осталось научить сайт понимать запросы клиентов. Разберём внедрение по шагам — с реальными сроками и местами, где обычно застревают.
Шаг 1. Соберите двадцать честных запросов
До любых технических работ. Возьмите настоящие формулировки клиентов из почты, чата, звонков — вместе с кривыми и разговорными. Это ваш эталон: по нему вы будете проверять и текущий поиск, и новый.
Проверьте на них то, что стоит сейчас. Результат обычно отрезвляет и заодно даёт точку отсчёта.
Шаг 2. Выгрузите каталог
Минимальный набор полей на карточку:
- уникальный идентификатор;
- название человеческим языком;
- описание хотя бы в одно-два предложения, лучше с назначением;
- категория;
- цена и наличие;
- ссылка на страницу товара;
- картинка;
- характеристики отдельными полями.
Форматы обычно принимаются любые: CSV, JSON, YML. Важнее не формат, а заполненность.
Шаг 3. Почините описания там, где их нет
Это единственный шаг, который может занять больше дня. Правило простое: если по карточке нельзя понять, для чего эта позиция, поиск тоже не поймёт.
Начните с топ-100 товаров по выручке — остальное можно дописывать постепенно. Подробный чек-лист — в статье как подготовить каталог к умному поиску.
Шаг 4. Загрузите и проиндексируйте
При индексации считаются смысловые теги и векторы карточек. На каталоге в несколько тысяч позиций это минуты. После этого поиск уже работает — через API или демо-страницу сервиса.
Шаг 5. Прогоните эталонные запросы
Возьмите список из первого шага и проверьте каждый запрос. Смотрите на три вещи:
- Есть ли нужный товар в первых трёх позициях.
- Не появляется ли мусор из соседних категорий.
- Как система ведёт себя, когда правильный ответ — «такого нет».
Всё, что не сошлось, чинится поправками: «на такой запрос нужно предлагать вот это». Дообучать модель не требуется.
Шаг 6. Встройте на сайт
Два способа:
- Виджет. Одна строчка скрипта в шаблон. Быстро, не требует разработчика, выглядит как окно помощника.
- API. Ваш фронтенд сам рисует выдачу и обращается к сервису. Дольше, зато полный контроль над версткой.
Проверьте на телефоне и в узком окне: половина трафика придёт с мобильных.
Шаг 7. Смотрите на запросы каждую неделю
Внедрение не заканчивается запуском. Раз в неделю открывайте список запросов и отмечайте:
- что искали и не нашли;
- где подбор ошибся;
- какие формулировки повторяются — из них получаются посадочные страницы и статьи.
Сколько времени это занимает
- Сбор запросов: час.
- Выгрузка каталога: от часа до дня, зависит от системы.
- Правка описаний: от нуля до нескольких дней — главный риск сроков.
- Индексация и проверка: несколько часов.
- Встраивание: день.
Реальный срок «под ключ» — от одного дня до полутора недель, и почти вся разница приходится на каталог.
Вывод и следующий шаг
Умный поиск ставится не за счёт технологий, а за счёт данных: чем осмысленнее каталог, тем лучше результат с первого дня.
Следующий шаг: соберите двадцать реальных запросов клиентов и прогоните их на текущем поиске. Этот список пригодится на каждом следующем шаге.
Частые вопросы
Нужно ли отключать старый поиск?
Не сразу. Разумно запустить новый параллельно, сравнить на эталонных запросах и переключиться, когда результат устраивает.
Что делать с товарами без описаний?
Дописать хотя бы одно предложение о назначении для ходовых позиций. Остальные будут находиться хуже, и это нормально на старте.
Как часто обновлять каталог в сервисе?
По расписанию — раз в сутки для стабильного ассортимента, чаще при активных изменениях наличия и цен.
Можно ли обойтись без разработчика?
Виджет ставится копированием строчки в шаблон сайта. Разработчик нужен для интеграции по API и для автоматической выгрузки каталога.
Что делать, если поиск ошибается после запуска?
Заводить поправки на конкретные запросы. Они действуют сразу и видны в интерфейсе, в отличие от переобучения модели.
Как понять, что стало лучше?
Сравнить долю пустых выдач и поведение на эталонных запросах до и после. Ощущения тут плохой судья.