分享方式:


在搜尋結果中設定語意排名工具優先權,並傳回標題文字

語意排名會逐一查看初始結果集,並套用 L2 排名方法,將語意上最相關的結果提升至堆疊頂端。 您也可以取得語意標題,其中反白顯示最相關的字詞和片語,以及語意答案

本文會說明如何設定搜尋索引以進行語意重新排名。

必要條件

  • 基本層或更高層級的搜尋服務,依區域可用性而定。

  • 在您的搜尋服務上啟用語意排名工具。

  • 具有 RTF 內容的現有搜尋索引。 語意排名適用於字串 (非向量) 欄位,而且最適合資訊性或描述性內容。

選擇用戶端

您可以使用下列任何工具和軟體開發工具套件 (SDK) 來新增語意設定:

新增語意設定

語意設定是索引中的區段,用於建立語意排名的欄位輸入。 您無須重建,即可隨時新增或更新語意設定。 若您建立多個設定,則可以指定預設值。 在查詢時,請在查詢要求上指定語意設定,或將其留空以使用預設值。

語意設定具有名稱和下列屬性:

屬性 特性
[標題] 欄位 簡短字串,最好少於 25 個字。 此欄位可以是文件標題、產品名稱或唯一識別碼。 若您沒有適當的欄位,請將其留空。
內容欄位 自然語言形式的較長文字區塊,受限於機器學習模型中的最大語彙基元輸入限制。 常見範例包括文件本文、產品說明或其他自由格式的文字。
關鍵字欄位 關鍵字清單,例如文件中的標籤,或描述性字詞,例如項目的類別。

您只能指定一個標題欄位,但可以隨意指定多個內容和關鍵字欄位。 對於內容和關鍵字欄位,請依優先順序列出欄位,因為優先順序較低的欄位可能會遭到截斷。

在所有語意設定屬性中,您指派的欄位必須是:

  • 屬性為 searchableretrievable
  • Edm.StringCollection(Edm.String) 類型的字串,Edm.ComplexType 的字串子欄位
  1. 登入 [Azure 入口網站] 並瀏覽至已啟用語意排名的搜尋服務。

  2. 左側瀏覽窗格的 [索引 ] 中,選取索引。

  3. 選取 [ 語意組態 ],然後選取 [ 新增語意組態]。

    此螢幕快照顯示在 Azure 入口網站 中新增語意設定的選項。

  4. 在 [ 新增語意組態] 頁面上,輸入語意組態 名稱,然後選取要用於語意組態的字段。 只有可搜尋和可擷取的字串欄位才符合資格。 請務必依優先順序列出內容欄位及關鍵字欄位。

    螢幕擷取畫面顯示如何在 Azure 入口網站中建立語意設定。

  5. 選取 [ 儲存 ] 以儲存組態設定。

  6. 在索引頁面上再次選取 [儲存 ],以將語意組態儲存在索引中。

從預覽版本移轉

如果您的語意排名程式碼使用預覽 API,本節將說明如何移轉至穩定版本。 您可以檢查變更記錄,以驗證是否正式發行:

semantic ranker 的 queryLanguage

自 2023 年 7 月 14 日起,語意排名工具不受語言限制。 該工具可以對由多語言內容組成的結果重新排名,且不偏向特定語言。 在預覽版本中,針對與欄位分析器所指定語言不同的結果,語意排名會降低其優先順序。

queryLanguage如果您使用程式代碼進行語意排名,請停止在程式碼中使用 。 屬性queryLanguage仍然適用於拼字校正功能,但不適用於語意排名。

searchFields for semantic ranker

針對以版本和更新版本 2021-04-30-Preview 為目標的 REST API 和所有 SDK 套件, searchFields 屬性不再用於語意排名。

請改用 semanticConfiguration 屬性 (在搜尋索引中) 來判斷語意排名中所使用的搜尋欄位。 若要指定欄位優先順序,請依照本文中的指示,在索引架構中新增 semanticConfiguration 至 。

如果您使用查詢要求將全文搜索限制為具名字段清單,則可以保留在 searchFields 查詢要求中。

下一步

透過執行語意查詢,測試您的語意設定。