排名分數
當使用 showRankingScore
搜尋參數時,Meilisearch 會將一個全域排名分數欄位 _rankingScore
加入到每個文件中。 _rankingScore
的值介於 0.0
和 1.0
之間。排名分數越高,表示文件與搜尋查詢的關聯性越高。
排名規則會依據相關性 (words
、typo
、proximity
、exactness
、attribute
) 或欄位的值 (sort
) 來排序文件。由於 sort
不會依據相關性來排名文件,因此不會影響 _rankingScore
。
注意
文件的排名分數不會根據同索引中其他文件的分數而改變。
例如,如果文件 A 對於某個查詢詞的分數是 0.5
,則無論文件 B、C 或 D 的分數如何,此值都保持不變。
下表詳細說明了所有可能影響 _rankingScore
的索引設定。未列出的設定不會影響排名分數。
索引設定 | 影響條件 | 理由 |
---|---|---|
searchableAttributes | 使用 attribute 排名規則時 | attribute 排名規則會根據查詢詞出現的屬性來評分文件。順序由 searchableAttributes 決定 |
rankingRules | 總是 | 分數的計算方式是計算每個排名規則的子分數,並根據其順序賦予權重 |
stopWords | 總是 | 停用詞會影響幾乎總是使用的 words 排名規則 |
synonyms | 總是 | 同義詞會影響幾乎總是使用的 words 排名規則 |
typoTolerance | 使用 typo 排名規則時 | 用於計算查詢的最大錯字數 |