全部產品
Search
文件中心

OpenSearch:拼字錯誤修正

更新時間:Aug 22, 2026

功能介紹

使用者輸入的query並不總是正確的,錯誤的輸入可能導致查詢結果不符合預期或者是無結果,因此需要對使用者的輸入進行拼字檢查。OpenSearch的查詢分析中提供的拼字檢查功能,對查詢詞中的錯誤進行糾正,給出正確的查詢詞。並根據錯誤修正的可信度高低,決定當前查詢是否用錯誤修正後的詞進行查詢。規則如下:

  1. 可信度高的錯誤修正,會直接會用錯誤修正後的查詢詞執行本次查詢;

  2. 可信度低的錯誤修正,還是用原查詢詞執行本次查詢;

  3. 如有錯誤修正發生,會在查詢結果中給出,如下:

    {
     "qp":[
         {
             "app_name":"查詢的OpenSearch應用程式名稱",
             "query_correction_info":[
                 {
                     "index":"查詢的索引名",
                     "original_query":"原查詢詞",
                     "corrected_query":"錯誤修正後的查詢詞",
                     "correction_level":1
                 }
             ]
         }
     ]
    }

    其中的correction_level標識了本次錯誤修正的可信度:

    • 1表示可信度高

    • 2表示可信度低

功能使用流程

1.OpenSearch控制台選擇左側導覽列中的“召回配置”下方對應的“查詢分析配置”,選擇對應的應用程式名稱和應用類型(線上/線下)點擊建立。

2.輸入“規則名稱”,選擇“索引範圍”,選擇“行業類型”,功能選擇選中“拼字錯誤修正”,點擊”確定”。

注:如果未設定幹預詞典,則按照按預設詞典的拼字錯誤修正。如果實際使用情境中出現badcase,可以參考下文配置幹預詞典。

3.規則建立完畢後,可以進行搜尋效果測試:

在查詢分析配置列表中,找到對應的查詢分析規則,單擊其操作列的搜尋測試。測試效果:在搜尋測試頁面,query 欄位輸入 default:'沖電器',qp 參數設定為 test_error,單擊搜尋。頁面底部提示欄顯示錯誤修正結果:"以下是查詢充電器 的結果,仍然搜尋: 沖電器 實際查詢詞: (default:"充電" AND default:"器")",說明系統將錯誤輸入"沖電器"自動糾正為"充電器"並以糾正後的詞執行了查詢。查看查詢分析過程:在搜尋測試頁面輸入含拼字錯誤的查詢詞(如 default:'沖電器'),查看查詢分析過程對話方塊,其中展示各分析步驟:拼字錯誤修正將"沖電器"糾正為"充電器"(錯誤修正等級為"糾正 Query 全替換查詢"),歸一化結果為"充電器",分詞結果為"充電/器",最終 Query 改寫為 (default:'充電' AND default:'器')。搜尋結果頁面提示已按糾正後的詞"充電器"執行查詢。

4.調試無誤後,在查詢分析介面,切換到“索引視角”,將對應的自訂查詢分析設定為預設查詢分析。

5.設定預設自訂查詢分析後的介面效果:

設定為預設後,該查詢分析名稱前會顯示[預設]首碼標記,例如[預設]test_error。

拼字錯誤修正幹預詞典

幹預主要是在系統無法正確錯誤修正時,提供一種途徑供使用者自訂錯誤修正行為。通過建立幹預詞典,並在查詢分析中配置拼字檢查功能時,選擇對應的幹預詞典,可以實現對錯誤修正的幹預。具體拼字錯誤修正幹預詞典配置,請點擊此處。