Elasticsearch: использовать расстояние по плотным векторам в оценке релевантности (во время запроса) - PullRequest
1 голос
/ 29 января 2020

Я использую эластичный поиск для объединения разных вещей: - поиск по тексту - оценка на основе плотного вектора (косинусное сходство)

Я использую запрос с function_score. Первая часть - это поиск по тексту (оценка), а затем применяется скрипт для вычисления косинусного сходства.

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

Это стандартное поведение function_score в соответствии с do c:

Функция function_score позволяет вам изменять оценку документов, которые получены запросом. Это может быть полезно, если, например, функция оценки является вычислительно дорогой, и ее достаточно для вычисления оценки по отфильтрованному набору документов.

Я хотел бы вычислить косинусное сходство во время запроса и эта оценка будет объединена с текстовым поиском (с такой же важностью).

Спасибо!

Здесь вы найдете суть , описывающую проблему с "реальным" "пример.

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