技術架構

Dify 知識庫變大之後:檢索品質與資源的取捨

很多人以為知識庫塞越多資料,AI 回答越準。實際上多數情況剛好相反。這篇講知識庫長大之後會發生什麼,以及分塊、Top-K 該怎麼調。

A
Admin

🚀 想直接開始?60 秒部署你的 Dify

AI 應用開發平台 — No-Code 建構你的 AI。月付 NT$1,599 起,

立即訂閱 Dify

剛開始用 Dify 的人,最常做的一件事是把手上所有文件都丟進知識庫

直覺上這很合理:資料越多,AI 知道得越多。實際上到某個規模之後,回答品質會開始下降,而且原因不容易看出來。

為什麼資料變多反而變差

RAG 的運作方式是:使用者問問題 → 系統在知識庫裡找出最相關的幾段 → 把這幾段連同問題一起送給模型 → 模型根據這些段落回答。

關鍵在「最相關的幾段」是有數量上限的

知識庫從 50 段變成 5,000 段,系統一樣只撈回三到五段。差別是:現在有更多長得很像但其實不相干的段落在跟正確答案競爭。

結果就是那個很多人遇到但講不出原因的現象——「以前問得到的問題,現在答錯了。」

分塊大小的取捨

文件會被切成小段(chunk)再建立索引。這個大小直接決定檢索品質。

切太小切太大
檢索精準度低(一段裡混了多個主題)
上下文完整度(答案被切斷)
典型症狀回答斷頭、缺前後文回答離題、抓到不相干內容

沒有一體適用的數字,但有個判斷原則:一段應該剛好包含一個完整的概念。

FAQ 型的內容適合切小(一問一答就是一段),操作手冊適合切大一點(一個完整步驟不該被拆開)。這也是為什麼不同性質的文件最好分開建知識庫,而不是全部混在一起。

Top-K 不是越大越好

Top-K 決定每次檢索撈回幾段。很多人把它調大,想說「多給一點資料總不會錯」。

會錯。撈回十幾段的問題有三個:慢、貴(送給模型的 token 變多)、而且模型會被不相干的內容帶偏

多數情境三到五段就夠。如果三段撈不到正確答案,問題出在分塊或文件品質,調大 Top-K 只是把雜訊一起帶進來。

知識庫該怎麼長大

比起「塞更多」,這幾個做法有效得多:

  • 按主題拆成多個知識庫。產品文件、退換貨政策、技術規格各自獨立,讓應用依情境選用。這是改善檢索品質最有效的一步。
  • 定期清掉過期內容。舊版的產品說明留在庫裡,它會跟新版競爭,而且模型分不出哪個是新的。
  • 來源檔先整理過。把 200 頁的手冊拆成幾個主題檔案,比整本丟進去好很多。
  • 用真實問題測。拿客戶實際問過的十個問題定期測一輪,這比看任何指標都準。

資源會在哪裡先撐不住

知識庫變大,最先有感的是建立索引的時間——每次新增文件都要重新解析與產生向量,大檔案在這一步吃記憶體。

日常查詢的成本增加得比較緩慢,但同時使用的人多的時候會放大。方案的 2 vCPU/10 GB 對純文字知識庫相當充裕,真正逼近上限的通常是放了大量掃描 PDF 的情況。

不過在加資源之前,值得先確認你遇到的是資源問題還是設計問題——這兩者的症狀不一樣。

延伸閱讀

準備好開始使用 Dify 了嗎?

完成訂閱後 60 秒,系統自動幫你裝好 Dify——獨立容器、資源硬性上限不與他人共用、HTTPS 開箱即用。

立即訂閱 Dify

月付訂閱、不綁約、隨時取消

嗨,我是小浪!有任何問題都歡迎點我詢問,我來幫你解答。

小浪

小浪 - AI小助手

在線中
小浪

有任何問題都歡迎隨時詢問我,我會盡力為你解答!

Powered by RoamerHost AI