MODULE m8 · 10.0 HOURS
失敗類型分類與錯誤分析
已完成 0%
LEARNING OBJECTIVES
本模組目標
- 能夠識別和分類 RAG 系統中發生的失敗類型。
- 能夠區分和分析檢索(Retrieval)階段和生成(Generation)階段的錯誤。
- 能夠利用 Ragas 框架的指標連接自動評估和人工審查結果。
- 能夠基於錯誤分析數據,為 RAG 管道的效能改進提出方案。
RAG 系統的錯誤分析概述
RAG(Retrieval Augmented Generation)架構由檢索模組和基於 LLM 的生成模組組成 [S3]。評估系統效能時,重要的是要將這兩個階段分開分析。錯誤主要分為檢索階段的問題和生成階段的問題。
1. 失敗類型分類
- 檢索失敗 (Retrieval Failure): 檢索到不相關或不聚焦的上下文時 [S3]。
- 生成失敗 (Generation Failure): LLM 無法忠實利用提供的上下文(Faithfulness)或生成與問題無關的答案時 [S3]。
2. 自動評估與人工審查的互補
像 Ragas 這樣的無參考(Reference-free)框架,無需人工註釋(ground truth)即可評估檢索和生成品質 [S3]。然而,僅憑自動評估指標,難以完全捕捉系統細微的幻覺(hallucination)或複雜的邏輯錯誤。因此,應通過量化自動指標提取優先級高的失敗樣本,並結合人工審查(Human Review)來確定實際原因。
WORKED EXAMPLES
講解範例
- 範例 1:對於問題「模型 A 的發布日期是什麼?」檢索器檢索到「模型 B 的規格」文件。這被歸類為「檢索失敗」,解決方案可能是調整嵌入模型或優化檢索查詢。
- 範例 2:對於問題「請解釋 X」,檢索器檢索到關於 X 的準確文件,但 LLM 回答了文件中沒有的資訊。這被歸類為「生成失敗(忠實度不足)」,必須透過提示工程(prompt engineering)來加強「僅使用提供的上下文」的約束。
LAB PROTOCOL
收集失敗數據集與錯誤分析
- 1
儲存 RAG 系統的答案和檢索到的上下文(context),針對至少 50 個問題。
- 2
針對每個項目,使用 Ragas 測量檢索相關性(Context Precision)和生成忠實度(Faithfulness)。
- 3
提取指標分數最低的 20% 問題-答案對。
- 4
為提取的樣本創建分類表,劃分為「檢索錯誤」、「生成錯誤」或「邏輯錯誤」之一。
安全檢查
- 絕不將個人資訊或私有數據包含在評估程式碼中。
- 監控評估過程中使用的 API 呼叫次數和費用,以符合預算。
- 在本地環境中執行資料分析,以防止資訊洩露。
實驗繳交成果
- 已完成分類的錯誤分析 CSV 檔案
- 搜尋和生成品質指標可視化的 Jupyter Notebook
ASSIGNMENT
RAG 錯誤分類與改進報告撰寫
繳交成果
評分標準
- 失敗類型分類的準確性和合理性
- 定量指標與人工審查結果之間的相關性分析能力
- 改進策略的邏輯合理性
KNOWLEDGE CHECK
理解檢查
FIELD CHECK
完成標準
- 提交包含失敗類型的錯誤分類表
- 完成使用 Ragas 指標進行搜尋和生成品質的定量分析
- 撰寫並審查基於錯誤分析的管道改進建議書
MODULE SOURCES