Главное Свежее Вакансии Образование
357 0 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Поиск, как очередной виток в развитии или как это работает


5321d29aeba2e.jpg
Предистория

Изначально для поиска по АвтоБарахолке были выбраны две противоположные схемы:
1. Показывать четко то, что запросил пользователь
Пользователь ищет "фару на Ланос", показываем только фары для Lanos и ничего более

2. Показывать все, что может подходить пользователю
Тоесть, по нашему запросу "фара на Ланос" мы покажем все фары и, дополнительно, все запчасти к Lanos
Поисковые системы хорошо оптимизирую свою выдачу, так почему же не использовать их опыт? Если не вдаваться в подробности оптимизации, то поисковики используют схему 2 с сортировкой по соответствию текста запросу
При этом пользователю сперва показываем именно то, что он ищет, а после то, что могло бы заинтересовать. Такая практика позволяет заинтересовать пользователя ровно также, как и блок похожих товаров

Задачи
1. Нам была нужна максимальная простота добавления болшого количества запчастей и мы не могли позволить ввести категории.

2. Фара, фары, фару - для покупателя один и тот же продукт, что делало невозможным использовать простой полнотекстовый поиск

3. Результаты поиска нужно сортировать, чтобы вверху было именно то, что искал пользователь

wb_manifesto.png

Решение в первом приближении
Покупатель вводит в поисковой строке примерно такое же описание, как и при добавлении запчасти. О, это нужно использовать: описание разбиваем на слова и, по специальному алгоритму, находим первоначальную форму каждого слова. Для каждой запчасти сохраняли набор этих слов.

Точто также мы поступаем и с поисковой строкой. А дальше - остается лишь найти те запчасти, в которых содержатся слова из запроса и отсортировать объявления по количеству совпадений слов

Добавили к этому дополнительную сортировку по дате обновления объявления и запустили

Реалии жизни и обновление поиска
После набора первоначальной базы и тестирования, стало понятно, что в выдаче слишком много "мусора" - тех, запчастей, что точно не заинтересуют покупателя. Как было указано в комментариях, покупателю, зачастую, не нужны запчасти от других марок автомобиля.

Все слова мы разбили на 5 категорий:
1. Регион
2. Марка
3. Модель
4. Название запчасти
5. Уточняющие слова

Теперь мы могли работать с комбинацией типов слов в запросе. Например, мы уже не показываем запчасти для других марок, если конкретная марка была указана в запросе (справедливости ради, к моделям такого фильтра не применяли потому что многие запчасти подходят от одной модели к другой и тут еще нужно поработать)

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

Например, покупатель ищет "фары задние на Ланос в Киеве". Первыми будут показаны именно задние фары на Lanos из Киева, потом - из других регионов, далее фары для Ланос в Киеве и других городах и, в конце - другие запчасти для Ланос, которые могут заинтересовать пользователя.

Именно такую выдачу можно считать оптимальной

Что дальше?
Также, у нас имеются категории запчастей, которые определяются автоматически из названия и их нужно использовать по максимуму. Как? - добавив выдачу запчастей из одной категории после точного совпадения. В нашем примере после фар для Ланос будут показаны фонари, указатели поворотов, салонное освещение и др

С уважением, команда AutoBaraholka.com
0
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.