生活分享

語意搜尋(Semantic Search):用不同說法找到相關內容

語意搜尋嘗試依查詢和內容的意思找資料,不只比對相同字詞。本文以常見客服問題說明查詢編碼、文件表示與候選排序,區分語意相似和真正符合需求,也介紹否定句、專有代碼、跨語言與無答案題的限制。讀完能判斷搜尋問題該從嵌入模型、資料整理、混合搜尋或重新排序改善,而不把自然語言答案誤當成搜尋本身。

更新日期: 閱讀時間約 7 分鐘

不同寫法的兩個對話框與搜尋圓框相連,表示搜尋可跨越字面差異尋找相關意思
圖片:Mokaair (© Mokaair)

語意搜尋,英文 Semantic Search,是嘗試根據查詢與內容的意思判斷相關性,而不只要求字詞相同的搜尋方式。使用者問「忘了登入用的那串字怎麼辦」,系統可能找到標題為「重設密碼」的說明。兩者的字面重疊有限,卻談到相近需求。能處理這類說法差異,是它在知識庫與客服搜尋裡的重要用途。

不過,語意搜尋並不必然生成一段答案,也不是只有才能提供。它可以交付文件、段落或其他候選項目,後續再由讀者閱讀或由 整理。本篇以虛構的會員服務說明示範,所有排序都是預期情境,不宣稱特定模型一定找對。理解它的限制,才能知道搜尋「看起來懂我」與「真的找對文件」之間還缺哪些檢查。

搜尋理解的是相關性

傳統全文搜尋常依詞彙出現情況、詞頻及其他排序因素判斷相關性,也可搭配斷詞、同義詞與拼寫處理,並非完全只會逐字比對。語意搜尋則加入學得的內容表示或相關性模型,嘗試處理改寫、同義與上下文。兩種方法可以互補,不應把任何找得到同義詞的功能都當成大型生成模型的成果。

以 Sentence Transformers 的典型做法來看,文件先被編成向量,查詢也經適當的模型處理,再找相似表示。官方文件區分對稱與非對稱搜尋:兩個短句找近義,和短問題找長答案段落,需求不同。訓練在前一種任務上表現好的模型,不一定適合後一種,因此不能只看模型名稱或通用相似度展示選擇。

從使用者說法到候選文件

先整理每份說明的主題與必要上下文,例如「重設密碼」段落不能只剩「點此繼續」,要保留它適用哪個帳號流程。資料建索引後,查詢取得候選,再按需要套用語系、產品版本或使用者權限條件。如果平臺同時有一般會員與管理員說明,語意非常相近也不能忽略適用對象,否則會把讀者帶到無法操作的介面。

排序分數是特定模型與資料下的相對訊號,不能直接當成答案正確機率。某份文件即使在全部候選中最高分,也可能和問題不太相關。搜尋介面最好允許「目前找不到合適內容」的結果,而不是永遠把第一名包裝成推薦答案。候選清單和信心提示如何顯示,會影響讀者是否過度相信系統。

登入問題分成忘記密碼和帳號停用,分別對應重設說明和停用處理,個別帳號狀態則需其他查詢
意思接近能幫忙找到主題;原因與適用條件決定正確文件。 · 圖片:Mokaair (© Mokaair)

示範:忘記密碼,還是帳號遭停用

假設輸入是「我忘了登入用的那串字」,合理期待是找到重設密碼的官方說明。系統取得該文件後,應顯示段落標題及能辨認適用範圍的摘要,讓讀者確認是自己的情境。若問題改成「密碼明明沒錯,畫面說帳號已停用」,則重設密碼不再是最適合的答案,應找到停用原因與申訴或聯絡流程。

這兩個問題都談登入,向量可能很相近,卻需要不同處理。測試時可讓人工先標出正確文件,再檢查候選排序是否把原因差異保留下來。若停用說明已在候選但排得太後面,可考慮重新排序;若完全找不到,則檢查語料、分塊與模型。不要只把問題改得更像文件標題,因為那會避開實際使用者的表達方式。

也可以加入「我要查這個帳號目前是否被停用」。說明文件只能解釋流程,沒有個別帳號即時狀態。語意搜尋不應把常見問答變成個案判定,正確處理是導向有權限的狀態查詢或人工管道。這種題目能檢查系統是否知道內容的適用邊界,而非單純測哪個文件最接近。

有些差異不能只靠意思接近

精確訂單號、產品代碼與版本名稱,通常應保留文字或結構化比對。只差一個字母的代碼可能代表完全不同的商品,但嵌入未必把差異看得夠重。否定句也有類似問題:「支援匯出」與「不支援匯出」主題接近,卻有相反的操作意義。取得相關候選後,仍需核對條件與否定範圍。

跨語言搜尋需要模型具備相應能力,也需要實際資料測試。能把英文問題對到中文文件,不代表能處理臺灣口語、在地縮寫與專門用語。資料中的簡稱可能要保留正式名稱或別名,文件標題也應反映使用者會問的問題。這些資料整理工作不只是替搜尋引擎服務,同時會改善人工閱讀與後續維護。

如何驗證搜尋真的有改善

建立測試集時,可涵蓋原句、自然改寫、錯字、同主題但不同條件,以及完全沒有答案的問題。先看應有文件是否進入候選,再看排名是否讓讀者容易找到。也要比較查詢延遲與文件更新後的可見時間,避免只提高語意測試分數,卻讓實際使用者等待太久或持續看到舊說明。

若同義改寫明顯改善但代碼題退步,可以使用混合搜尋保留精確詞彙的力量;若候選齊全但順序不好,可評估重新排序。若文件本身沒寫清楚,再強的語意模型也只能找出模糊資料。最可靠的改善順序是先定位失敗層,再改變對應元件,而不是把「換成 搜尋」當成一次性的解決方案。

讀者也可以用一個簡單習慣保護自己:點開原文,核對產品版本、適用對象和限制。搜尋摘要只為幫忙定位內容,尤其涉及例外條件時,縮短後的文字未必完整。當搜尋結果與實際畫面不一致,應回報原始問句和找到的文件,這比只說「AI 搜尋不好用」更容易促成可驗證的修正。

概念對照;來源查證於 2026 年 9 月。
方法處理重點需要留意
全文搜尋詞彙與文字訊號適合精確名稱與代碼
語意搜尋學得的相關性表示需要驗證條件差異
RAG檢索後整理答案還要檢查生成內容

  • 生活分享

    世界模型(World Model)是什麼:讓 AI 預測「接下來會怎樣」

    世界模型指 AI 內部用來預測「這樣做之後會怎樣」的模型,但這個詞至少有三種用法:強化學習代理在想像中練習用的環境模型、LeCun 主張預測抽象表示的架構路線,以及能隨操作即時生成畫面的互動環境。內容用示例說明怎麼在想像中規劃,並列出大型語言模型有沒有世界模型的正反研究,附讀新聞時的檢查問題。

  • 生活分享

    視覺語言模型(VLM)是什麼:讓 AI 讀圖片、再用文字回答

    視覺語言模型(VLM)能同時接收圖片與文字,再用文字回答。內容拆解視覺編碼器、連接層與語言模型三段結構,說明 CLIP、Flamingo、LLaVA 三篇論文各補上哪一塊,並和多模態 AI、文字生圖分清楚;也整理它常犯的錯:數錯數量、搞混位置、說出圖裡沒有的東西,附上讀收據時逐行核對的步驟。

  • 生活分享

    溫度(Temperature)是什麼:AI 回答變化程度的取樣參數

    溫度(temperature)是文字生成時調整取樣的參數,讓模型從下一個 token 的機率分布裡抽得更集中或更分散。用假想的台南早餐示例算出低溫與高溫的差別,說明 top-p 的來源和它與 top-k 的差別,並依官方文件與論文指出:調低溫度不代表更準,設成 0 也不保證每次相同,部分模型還不開放調整。

  • 生活分享

    合成資料(Synthetic Data)是什麼:兩種用途、品質控管與模型崩潰

    合成資料是由演算法或模型產生、模仿真實資料特徵的資料,常見用途有兩種:訓練模型,以及在隱私需求下替代真資料。內容依 Self-Instruct、模型崩潰研究(替換與累積資料的差別)與 NIST、ICO 的隱私文件,說明做法、抽查流程,以及它不能保證的事。

最新旅遊情報攻略

資料來源

生活分享