提升搜尋品質

搜尋品質是指使用者認為搜尋結果的排名和召回率是否良好。

排名是項目的順序,召回則是檢索到的相關項目數量。項目 (或文件) 是指 Google Cloud Search 可編入索引的任何數位內容,例如 Microsoft Office 文件、PDF 檔案、資料庫資料列或不重複的網址。項目包含:

  • 結構化中繼資料
  • 可建立索引的內容
  • 存取控制清單 (ACL)

Cloud Search 會使用各種信號來擷取及排序結果。您可以透過結構化資料、項目內容和中繼資料,以及搜尋應用程式中的設定,影響這些信號。這份文件可協助您修改這些信號影響因素,進而提升搜尋品質。

如需設定摘要,請參閱「搜尋品質設定摘要」。

影響主題性分數

主題性是指搜尋結果與查詢字詞的關聯性。Cloud Search 會根據下列因素計算主題性:

  • 每個查詢字詞的重要性。
  • 命中次數 (查詢字詞出現在內容或中繼資料中的頻率)。
  • 查詢字詞與已建立索引項目之間的比對類型。

如要影響文字屬性的主題性分數,請在結構定義中定義 RetrievalImportance。如果屬性相符,且 RetrievalImportance 搜尋結果數量較多,則分數會較高。

舉例來說,如果您儲存軟體錯誤記錄,使用者可能會依錯誤名稱查詢。將名稱的 RetrievalImportance 設為 HIGHEST。如要查看說明,請使用 DEFAULT

{
  "objectDefinitions": [
    {
      "name": "issues",
      "propertyDefinitions": [
        {
          "name": "summary",
          "textPropertyOptions": {
            "retrievalImportance": { "importance": "HIGHEST" }
          }
        },
        {
          "name": "description",
          "textPropertyOptions": {
            "retrievalImportance": { "importance": "DEFAULT" }
          }
        }
      ]
    }
  ]
}

如果是 HTML 文件,系統會根據 <title><h1> 等標記判斷字詞的重要性。如果 ContentFormatTEXT,則 ItemContent 會使用 DEFAULT 重要性。如果是 HTML,重要性取決於 HTML 屬性。

影響程度更新頻率

新鮮度會使用 ItemMetadata 中的 createTimeupdateTime,評估項目最近的修改時間。較舊的項目排名較低。

如要影響新鮮度,請在 FreshnessOptions 中調整 freshnessPropertyfreshnessDurationfreshnessProperty 可讓您使用自訂日期或時間戳記,而非 updateTime。如果是錯誤,您可能會使用截止日期,讓日期最接近現在的項目排名較高。

{
  "objectDefinitions": [
    {
      "name": "issues",
      "options": {
        "freshnessOptions": { "freshnessProperty": "duedate" }
      }
    }
  ]
}

使用 freshnessDuration 指定項目過時的時間。如果值很高 (例如 100 年),時效性效果就會失效。這很適合用於員工個人資料等靜態資料。如果是新聞,請使用較小的值,例如三天。

影響品質

品質:評估項目的準確度和實用性。使用 SearchQualityMetadata 指定介於 0 到 1 之間的值。值越高,排名越前面。舉例來說,您可以提升人資部門撰寫的福利文件。

{
  "metadata": {
    "searchQualityMetadata": { "quality": 1.0 }
  }
}

使用欄位類型影響

您可以根據列舉或整數屬性,使用 OrderedRanking 影響排名:

  • NO_ORDER (預設):不會影響排名。
  • ASCENDING:值越高,排名就越前面。
  • DESCENDING:值越低,排名越高。

如果 HIGH 為 1 且 LOW 為 3,請使用 DESCENDING 做為錯誤優先順序。如果是 votes 屬性,請使用 ASCENDING

透過查詢擴充功能影響排名

查詢擴展功能會使用同義字和拼字來改善結果。

使用同義字

Cloud Search 會使用公開的網路內容來尋找同義字。您也可以為機構專屬術語定義自訂同義詞。請參閱「定義同義詞」。

使用拼音

Cloud Search 會在以下位置提供拼字建議: SpellResult。 此外,系統也會將拼字修正結果視為同義詞,以便尋找文件。

透過搜尋應用程式設定影響排名

搜尋應用程式會提供內容資訊。您可以透過下列設定影響排名。

調整評分設定

指定 ScoringConfig 可停用新鮮度個人化。 停用個人化設定後,系統會移除擁有者互動提升。請參閱「自訂搜尋體驗」。

調整來源設定

指定資料來源層級設定:

  • 來源重要性:來自HIGH重要來源的項目排名較高。
  • 密集占位:限制單一來源的結果數量 (預設為 3),確保結果多樣性。

個人化

個人化功能會根據使用者優先顯示結果:

  • 項目擁有權:提升使用者擁有的項目。
  • 項目互動:提高使用者最近檢視、編輯或留言的項目。
  • 使用者點擊:提高使用者先前點擊項目的曝光度。請勿修改結果網址,因為系統會使用該網址收集這項資料。

查詢解讀

查詢解讀功能會使用結構定義,將使用者查詢轉換為以運算子為基礎的結構化查詢。即使關鍵字數量很少,也能提供精確結果。請參閱「建構結構定義,以利解讀查詢」。

項目語言

如果項目的語言與查詢語言不符,Cloud Search 會降低這些項目的排名。在 RequestOptions 中,將 languageCode 設為使用者偏好設定。

項目背景資訊

使用 contextAttributes 提高與查詢內容相關項目的排名,例如地點或部門。

商品熱門程度

Cloud Search 會提升使用者在近期查詢中經常點選的項目。請勿修改搜尋結果網址,因為系統會使用這些網址追蹤點擊次數。

搜尋品質設定摘要

下表提供搜尋品質設定的摘要:

結構定義設定

設定 位置 建議 詳細資料
ItemContent ItemContent 建議 主題性
RetrievalImportance RetrievalImportance 建議 主題性
FreshnessOptions FreshnessOptions 選用 更新間隔

索引設定

設定 位置 建議 詳細資料
createTime/updateTime ItemMetadata 建議 更新間隔
contentLanguage ItemMetadata 建議 項目語言
owners ItemAcl 建議 商品擁有權
自訂同義詞 _dictionaryEntry 建議 使用同義詞
quality SearchQualityMetadata 選用 影響力品質
互動資料 interaction 選用 商品互動
OrderedRanking OrderedRanking 選用 欄位類型

搜尋應用程式設定

設定 位置 建議 詳細資料
停用個人化功能 ScoringConfig 建議 個人化
來源重要性 SourceCrowdingConfig 選用 來源設定
聚集 SourceCrowdingConfig 選用 來源設定

後續步驟

  1. 建構結構定義,以利最佳解讀查詢
  2. 定義同義詞