Keyword Weighting Explanation

Hello there,

So, I am doing different tests to understand the weighting method behind the bm25 keyword search (using hybrid with alpha=0), but getting very confused about the results. In my experiments I have 3 properties [“question”, “answer”, “QnA”],

My initial understanding of weighting was that it would calculate the final score by doing a simple weighted average:
(score1weight1 + score2weight2) / (weight1 + weight2)

But after a few days of experimenting, I was hoping I could get clarification on how these weights are actually supposed to relate to each other.

My questions/tests:

  1. Why are these cases not producing the same results?
    properties=[“question”]
    VS
    properties=[“question^1”, “answer^0”]

  2. In one of my tests I concatenated “question” with “answer” and made a new field called “QnA”. But these two don’t have the same search results:
    properties=[“QnA”]
    properties=[“question^1”, “answer^1”]

  3. Another test was just using the question field but on different weights. I thought since this is an only-keyword search on just 1 field, whatever weight we give it it should have been the same result, but different weights produce different results somehow. Why?
    properties=[“question^1”]
    properties=[“question^5”]

  4. The “explainScore” I get from the “_additional” field isn’t explaining what is happening with the different properties, and how much each is contributing in the weighting.

Hi! Sorry for the delay here.

Have you tried those with only bm25 instead of hybrid?