Какой лучший способ сделать функцию DidYouMean с Elasticsearhc? - PullRequest
0 голосов
/ 05 июля 2019

У меня есть поисковый сервис, основанный наasticsearch.

Мне нужно создать функцию DidYouMean на основе фильтра и простого требования:

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

Я видел два пути:

  • 1 - использовать автозаполнение фразы с функцией match_against (для стандартных полей токенов)
  • 2 - использовать поиск с нечеткими (по стандартным лексемам)

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

Каков наилучший способ выполнить этот поиск? (производительность и загрузка процессора вasticsearch) Правильно ли использовать стандартное поле токенов для предложения?

https://discuss.elastic.co/t/best-way-to-build-didyoumean-feature/188940

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...