自訂排名規則

    Meilisearch 中有兩種排名規則:內建排名規則和自訂排名規則。本文將說明使用和設定自訂排名規則的主要面向。

    自訂排名規則會將某些文件置於其他相關性相同之搜尋結果的前面。

    遞增和遞減排序規則

    Meilisearch 支援兩種自訂規則:一種用於遞增排序,另一種用於遞減排序。

    若要新增自訂排名規則,您必須提供屬性名稱,後面接著冒號 (:),以及 asc (用於遞增順序) 或 desc (用於遞減順序)。

    該屬性在索引中包含的所有文件中,必須具有數值或字串值

    您可以使用更新設定端點更新排名規則端點,將此規則新增至現有的排名規則清單。

    範例

    假設您有一個電影資料集。文件包含具有時間戳記值之 release_date 欄位,以及代表其排名的整數 movie_ranking

    以下範例會建立一個規則,讓較舊的電影比最近的電影更相關。1999 年上映的電影會出現在 2020 年上映的電影之前。

    release_date:asc
    

    以下範例會建立一個規則,讓排名較高的電影比排名較低的電影更相關。排名較高的電影會優先顯示。

    movie_ranking:desc
    

    以下陣列包含所有內建排名規則,並將自訂規則置於處理順序的底部

    [
      "words",
      "typo",
      "proximity",
      "attribute",
      "sort",
      "exactness",
      "release_date:asc",
      "movie_ranking:desc"
    ]
    

    搜尋時的排序和自訂排名規則

    Meilisearch 允許使用者透過使用sort 搜尋參數,在查詢時定義排序順序。排序和自訂排名規則之間有些重疊,但兩者用途不同。

    一般而言,當您想要允許使用者定義他們想要先看到哪種類型的結果時,sort 最有用。sort 的一個很好的用例是建立一個網路商店介面,讓客戶可以按產品價格遞減或遞增排序產品。

    相反地,自訂排名規則在設定後始終處於啟用狀態,當您想要推廣某些類型的結果時非常有用。自訂排名規則的一個很好的用例是確保網路商店中的促銷產品始終出現在最前面的結果中。

    推廣搜尋結果和文件置頂

    Meilisearch 不提供原生支援來推廣、置頂和提升特定文件,使其比其他搜尋結果更顯眼。請參閱這些 Meilisearch 部落格文章,以瞭解有關使用 React InstantSearch 實作推廣的搜尋結果文件提升的解決方案。