評估
RAG 出包時,先問兩件事:找對了沒有?答的內容有沒有寫在找到的段落裡?把檢索與生成分開量,才知道該改切塊、改 k、改提示,還是改模型。
檢索要看什麼
準備一組「問題 → 應該出現的塊/文件」當金標。常用指標:
- Hit rate / Recall@k:正確段落有沒有出現在前 k 筆。
- MRR(Mean Reciprocal Rank):正確段落排第幾;愈前面愈好。
- Context precision:前 k 筆裡有多少真的有用,避免 k 很大但一堆噪音。
金標不必一開始就幾百題。先用 20–50 個真實使用者問題,標「哪一頁/哪一節該被找到」,已經能抓出切塊與混合搜尋的大問題。
生成要看什麼
在「已經給定上下文」的前提下:
- Faithfulness(忠實度):答案裡的主張能否在上下文找到依據。這是防幻覺的核心。
- Answer relevancy:有沒有在回答這個問題,而不是正確但答非所問。
- Correctness:和金標答案比,事實是否一致(需要你有標準答案)。
Ragas 與 LlamaIndex 的評估模組把這些指標做成可跑的 pipeline。DeepLearning.AI 的 Building and Evaluating Advanced RAG Applications 專門練這一段。
人工抽樣仍不可少
自動指標會漂。定期抽 20 筆真實對話,看:來源對不對、該說不知道時有沒有硬答、權限有沒有漏。生產環境再加追蹤(LangSmith、Azure Application Insights 等),才能把「某一類問題突然變差」對回某一版索引。
調參順序
- 檢索 hit rate 低:改切塊、加 overlap、混合搜尋、查詢改寫。
- 檢索對、忠實度低:改系統提示、要求引用、降低溫度。
- 兩者都好、使用者仍不滿意:可能是語氣、完整性或 UI,不是向量距離的問題。
進階路線見 進階技巧。