跳至主要內容
RAG 與知識系統

RAG 工程流程:從文件匯入到查詢、引用與更新驗證

把資料匯入與查詢執行分開設計,確認來源版本、存取範圍、檢索方式與更新完成證據。沿一個向量索引範例,檢查答案支持、權限、例外與維運成本,而不是只看生成是否流暢。

作者

Tenten AI 研究團隊

AI 基礎設施

發布日期

更新日期

閱讀時間

3 分鐘

RAG 工程流程:從文件匯入到查詢、引用與更新驗證

建立 RAG 系統,先分開兩條流程:資料如何進入可檢索的來源,以及使用者查詢時如何取得並使用內容。兩者需要各自的紀錄、接受條件與負責人。

以下用零件文件查詢作為假設的工程練習。目標是找出適用文件並回答有來源支持的問題;零件是否可訂購、價格與交期,仍要查詢有權提供當前狀態的系統。

先定義來源與可回答範圍

列出文件擁有人、版本、適用產品、權限與更新方式。歷史文件可能適合回答舊版本問題,卻不代表當前供貨狀態。把這個差異寫進查詢條件與評估資料。

原始 RAG 論文在 2020 年提出結合參數記憶與外部檢索內容的研究,並訓練其 RAG 模型。它支持理解這種模式,不提供本案的來源、權限或上線成效證據。

資料匯入與執行路徑分開測試

匯入時檢查解析品質、段落邊界、版本識別及存取資訊。是否使用 embedding、向量或混合檢索,依資料與任務選擇;Microsoft 的 RAG 概述也包含關鍵字與不同來源選項。

這是一個使用向量索引的範例,不是所有 RAG 系統的必備拓樸:

匯入流程
核准文件 -> 解析與版本/權限 -> 分段 -> embedding -> 更新索引
                                                         |
查詢流程                                                  v
使用者/任務 -> 存取條件 -> 檢索 -> 適用內容 -> 生成 -> 核對支持/覆核
                                  |
                          找不到、衝突或權限不符 -> 接手/停止

來源變更不等於索引與所有下游快取已同步。記錄匯入結果、失敗與版本,測試新增、修改、撤回及權限改動。索引排程說明可用來理解特定服務的排程行為;仍需驗證實際更新完成。

查詢時,取得使用者與任務範圍,依本案的存取控制挑選來源,再建立給模型的內容。文件層級存取控制需要相應設定與查詢整合,不能因文件已入庫就假設每位使用者都可見。

依資訊需求比較方法

方式可以處理的需求要評估的更新與限制
直接提供內容已知且可放入上下文的核准材料範圍、容量、版本、成本與回答支持
微調特定行為、風格或任務適應訓練資料、更新流程與評估;不等於查詢即時事實
檢索加生成從較大來源集合選取適用內容檢索、權限、更新、上下文與生成共同影響結果

這些方法可以組合。原始 RAG 研究就包含訓練,不能把 RAG 與微調寫成互斥選項。先比較本案資料變更頻率、評估結果與完整維運成本,再決定組合。

評估答案之前,也評估資料與失敗路徑

建立代表性問題,涵蓋可回答、證據不足、來源衝突、舊版本與越權存取。分別檢查來源是否適用、相關內容是否取得、生成是否受支持,以及引用是否指向真正支持該段的內容。

引用不是答案正確的替代指標。降低幻覺的工程指南提供核對、來源支持與承認未知等方法;產品仍需處理不完整來源、錯引與不確定結果。

不要預設每次錯誤都先調檢索:解析、版本、權限、提示與來源本身也可能是原因。沿紀錄定位問題,修改後用相關評估與回歸資料確認。營運時另記錄延遲、模型與索引費用、維護及人員覆核,讓接受決策涵蓋完整工作。

先整理來源與責任,可閱讀企業知識庫準備條件。要討論實際整合範圍,參考現有RAG 知識服務。

從一條工作流程開始。
釐清值得做的下一步。

留下聯絡方式與問題類型,我們會再透過 Email 了解現況,討論流程、整合與開發範圍。