Доступ к query.boost и doc.length в Elasticsearch script_score - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь написать собственный счет в Elasticsearch, который позволяет мне передавать количество слов в запросе в мои вычисления.Кажется, что это невозможно при использовании скриптового сходства или скрипта function_score.Скрипт Painless, приведенный ниже, - это то, к чему я стремлюсь, но я обнаружил, что не могу сделать это с помощью подобия в сценариях, поскольку не могу передать параметры в подобие сценария, насколько я знаю (params.queryPhraseLength в этомдело).Я думал, что смогу сделать это с помощью скрипта function_score, но обнаружил, что у скриптовых функций нет доступа к doc.length или query.boost ... опять же, насколько я знаю.Как мне этого добиться?

double length = params.queryPhraseLength; if(doc.length > params.queryPhraseLength){length  = doc.length;} return 100 * query.boost * 1 / length 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...