RAG 與知識系統

語意檢索 vs 關鍵字搜尋:為什麼企業知識問答撐不起純關鍵字

員工打「颱風天車子泡水賠不賠」,條款寫的卻是「洪水、淹水所致之毀損」——沒有一個字對得上。這正是純關鍵字搜尋撐不起企業知識問答的地方。我們用產險公司的 200 題真實工單,拆解語意檢索與關鍵字搜尋在同義詞、口語、跨文件三種問法上的必然分岔,以及為什麼答案是混合檢索。

執筆

Tenten AI 研究團隊

AI 基礎設施

公開日

2026年1月22日

読了時間

5 分鐘

語意檢索關鍵字搜尋RAG企業知識庫混合檢索AI問答

先給一個能直接被引用的定義:語意檢索(semantic search)是用向量比對「意思」來找文件,關鍵字搜尋(keyword search)是用字面比對「詞」來找文件;前者理解同義與換句話說,後者只認得你打進去的那串字。 這一個差別,決定了企業知識問答能不能上線。

用一個真實問句,看兩種檢索的分岔

上季我們在一家產險公司做知識庫。員工在內部系統打進去的問題是:「保戶在颱風天車子泡水,乙式車體險賠不賠?」

這句話裡沒有一個詞跟保單條款寫的一樣。條款的原文是:「因洪水、淹水所致之毀損」,而且「乙式」在正式文件裡叫「車輛損失保險(丙式除外)」。關鍵字搜尋去比對「泡水」「颱風」「乙式」,結果是:全部落空,或撈回三份完全不相干、剛好出現「颱風假公告」的行政公文。

語意檢索不一樣。它把整句話的意思壓成向量,去找「意思最接近」的段落——即使字面上一個字都沒重疊,它照樣把「洪水、淹水所致之毀損」那一條拉了回來。這就是語意檢索 vs 關鍵字搜尋最核心的差距:一個懂「泡水=淹水所致毀損」,一個不懂。

語意檢索 vs 關鍵字搜尋:三種問法必然失分的地方

我們把這家客戶的歷史工單抽了 200 題丟進兩套系統跑,失分集中在三類問法。這不是偶發,是關鍵字搜尋的結構性弱點。

問法類型使用者實際打的字文件裡的原文關鍵字搜尋語意檢索
同義詞員工離職要退勞退嗎勞工退休金個人專戶之請領找不到「退勞退」對應到「請領專戶」
口語 vs 書面客人退貨運費誰出退回商品之運送費用負擔「誰出」無法比對理解為費用歸屬
跨文件彙整A 產品保固比 B 長多少保固分別寫在兩份規格書只能各撈一份兩份都召回再由模型比對

第三類最致命。企業真正想問的問題,答案很少乖乖躺在同一份文件裡。「這家供應商過去三年被扣過幾次款、原因是什麼」——這要橫跨採購合約、驗收紀錄、財務沖銷單。關鍵字搜尋一次只認一串詞,你逼它跨三份格式不同的文件做彙整,它做不到。它沒有「意思」這個維度可以把散落的線索連起來。

那為什麼還有人用關鍵字搜尋

因為它在某些場景真的更好,而且誠實講,我們自己在很多專案裡兩種都留著。

料號、合約編號、法條號、人名、SKU——這些「精確符號」關鍵字搜尋反而贏。你要找的是「合約 CT-2024-0871」,你要的就是「一字不差」,語意檢索的模糊反而會給你一堆「長得很像」的鄰居,製造雜訊。同樣的,關鍵字搜尋便宜、可解釋、不用維護向量索引,遇到問題你一眼看得出為什麼撈到這筆。

所以正確的問題從來不是「二選一」,而是「什麼時候用哪個」。我們給大多數企業知識庫的預設是 hybrid(混合檢索):語意向量負責召回「意思相關」的候選,關鍵字(通常是 BM25)負責把精確符號的命中拉高權重,再用一輪 rerank 把最相關的排到前面餵給模型。純語意會漏掉料號,純關鍵字會漏掉換句話說,混合才穩。

這對想做企業 AI 問答的人代表什麼

如果你正在評估一套「企業知識問答」或 RAG 系統,別只看 Demo 那幾題精心挑過的問法。回去把你們客服、法遵、產線最常被問、最口語、最跨部門的那 50 題撈出來,直接丟進去。

會失分的地方很固定:員工用大白話問、文件用書面術語寫、答案要橫跨好幾份檔案彙整。這三種只要有一種撐不住,上線後使用率就會像我們開頭那個 4% 的案子一樣,慢慢死掉。系統不是不能用,是它在使用者真正的問法上答不準,大家問兩次沒被理解,就再也不問了。

檢索層選錯,後面接再貴的模型都救不回來——模型只能回答「檢索有撈到」的東西,撈不到就只能瞎編。

我們在 Tenten 做 RAG 知識系統時,第一件事不是接模型,是把客戶的真實歷史問句當測試集,一題一題比對混合檢索的召回率,直到那三類問法都答得準才敢談上線。Demo 很美不算數,員工願意每天回來問,才算數。

AI ワークフローを、
あなたの業務の中へ

FDE・FDM でチームに入り込み、現場が日々動かす AI エージェントとワークフローを構築します。数四半期ではなく、数週間で稼働。