W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
Solr 查詢重新排序允許您運(yùn)行一個簡單的查詢(A)來匹配文檔,然后使用來自更復(fù)雜的查詢(B)的分?jǐn)?shù)重新排列前 N 個文檔。
由于從查詢 B 中獲得的更高的排名僅適用于前 N 個文檔,因此它對性能的影響將較小,僅使用復(fù)雜的查詢 B本身。折衷的是,在重新排序階段,使用簡單查詢 A 得分非常低的文檔可能不被考慮,即使它們使用查詢 B 的得分非常高。
排名查詢可以使用 rq 請求參數(shù)指定。該 rq 參數(shù)必須指定一個查詢字符串,在解析時產(chǎn)生一個 RankQuery。
Solr 發(fā)行版中目前包含三個等級查詢。您也可以配置您編寫的自定義 QParserPlugin,但大多數(shù)用戶可以使用 Solr 提供的解析器,如下表所示:
解析器 | QParserPlugin 類 |
---|---|
RerRank | ReRankQParserPlugin |
XPORT | ExportQParserPlugin |
LTR | LTRQParserPlugin |
該 rerank 解析器包裝由本地參數(shù)指定的查詢,以表示有多少文件應(yīng)被重新排序以及如何計(jì)算最終分?jǐn)?shù)的附加參數(shù):
復(fù)雜排序查詢的查詢字符串 - 在大多數(shù)情況下,變量將用于引用另一個請求參數(shù)。該參數(shù)是必需的。
來自原始查詢的前 N 個文檔的數(shù)量應(yīng)該重新排列。這個數(shù)字將被視為最低限度,并可能會自動增加內(nèi)部,以便為滿足查詢 (即, 啟動 + 行) 排列足夠的文檔。默認(rèn)是200
。
在將得分添加到原始得分之前,將應(yīng)用于來自 reRankQuery 的每個最高匹配文檔的得分的乘法因子。默認(rèn)是2.0
。
在下面的示例中,匹配查詢“greetings”的前1000個文檔將使用查詢“(hi hello hey hiya)”重新排序。這1000個文件中的每一個得到的分?jǐn)?shù)將是“(hello hey hiya)”得分的3倍,再加上原始“greetings”查詢的得分:
q=greetings&rq={!rerank reRankQuery=$rqq reRankDocs=1000 reRankWeight=3}&rqq=(hi+hello+hey+hiya)
如果文檔與原始查詢匹配,但與重新排列的查詢不匹配,則文檔的原始分?jǐn)?shù)將保留。
ltr 代表學(xué)習(xí)排名,請參閱學(xué)習(xí)排名獲得更詳細(xì)的信息。
一般而言,rq 參數(shù)和重新排序功能可與其他 Solr 功能配合使用。例如,可以將它與折疊解析器一起使用,以便在折疊后重新排列組頭。它還保留了由高程組件提升的文檔的順序。它甚至有自己的自定義解釋,所以您可以看到如何在查看調(diào)試信息時得到重新評分的。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: