Использовать несколько повторных запросов в Solr - PullRequest
0 голосов
/ 29 апреля 2020

Если взять ссылку из анализатора запросов повторного ранжирования , как мы можем использовать множественные / сложные алгоритмы повторного ранжирования c в rqq. Упомяну пример, приведенный в документации:

q=greetings&rq={!rerank reRankQuery=$rqq reRankDocs=1000 reRankWeight=3}&rqq=(hi+hello+hey+hiya)

Предположим, у меня есть документ схемы:

Document(id : String, count : Long)

. Для этого я хочу переоценить свои документы на основе следующих критериев:

  1. bq - увеличить документ на 2, если «id» соответствует строке «apple» - (id: «apple» ^ 2.0)
  2. bf - это должно умножить значение на « считать "на 3" для оценки - (mul (field (count), 3))

Как мы можем express эти два условия вместе в rq / rqq?

1 Ответ

1 голос
/ 01 мая 2020

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

{!rerank reRankQuery=$rqq reRankDocs=100 reRankWeight=2}&rqq={!func}sum(mul(field(count),3),query({!query v=$v1}))&v1=query(text:\"apple\"^2.0,0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...