
前一篇我們已經看到 Data Machi 的完整架構,而第一個要補上的能力,就是讓 AI 能取得企業文件。原因很簡單:如果模型回答前完全看不到公司的規範、報告或知識庫,它再聰明也只能靠通用知識猜測。
檢索增強生成(RAG,Retrieval-Augmented Generation)可以把這個問題理解成「把閉卷考試改成開卷考試」。模型本身不需要把所有公司文件背進參數裡,而是在收到問題後,先去文件庫找出最相關的內容,再把這些內容連同問題一起交給模型回答。
第一步是 Retrieval(檢索)。系統不是把整份文件都丟進模型,而是從索引裡找出和問題最相關的幾段內容。
第二步是 Augmentation(增強),也就是把這些找到的文件片段補進模型的上下文(Context)。
最後才是 Generation(生成),由模型根據問題與找到的內容組織答案。
整個流程可以簡化成:
使用者問題
↓
Retrieval
找出相關文件片段
↓
Augmentation
將文件加入 Prompt Context
↓
LLM
↓
Generation
產生有來源依據的回答
這裡最重要的觀念是:
RAG 並不是讓模型學會文件,而是讓模型在回答當下看見文件。
因此,當文件更新時,只要重新建立或更新索引,就能讓後續回答使用新的內容,而不需要重新訓練大型模型。
RAG 特別適合答案已經存在於文件裡的任務,例如:
這些問題的核心都是:先找到正確內容,再整理成容易理解的回答。
但如果使用者問的是:
這時候 RAG 就不一定是最好的選擇,因為這些通常是結構化,而且持續更新的資料。
後面的文章中,我們會使用工具使用(Tool Use)來處理這類問題,讓 AI 不只是搜尋文件,也可以向資料庫、試算表或其他企業系統取得即時資訊。
企業 RAG 不應該只追求「回答像不像人」,而要讓使用者可以回頭確認:
這個答案到底是根據哪一份資料得出的?
因此在 Data Machi 中,文件搜尋結果最好能保留:
當答案有爭議時,使用者就可以直接回到原始資料確認,而不是只能選擇相信或不相信模型。
這也是企業 AI 和一般聊天機器人很重要的差別。
好的企業 AI 不只需要回答:
「答案是什麼?」
還需要回答:
「你為什麼這樣回答?」
這也讓檢索增強生成(RAG)成為後續 Agent 架構中的一項重要工具。
當協調者(Coordinator)判斷某個問題需要企業文件知識時,就可以呼叫 RAG 搜尋相關內容,而不必期待語言模型永遠記得公司的規範。
對非工程背景的讀者,可以用「查資料」和「改變模型習慣」來區分 RAG 和 Fine-tuning。
RAG 比較像參加一場開卷考試。
模型本身不需要把公司的規範全部背起來,而是在需要時查詢知識庫,再根據找到的資料回答。
因此,如果公司的政策從:
每年有 10 天遠端工作額度
修改成:
每年有 20 天遠端工作額度
只要更新知識庫中的文件,下一次查詢就可以取得新的資訊。
Fine-tuning 則比較像重新訓練一位員工。
透過大量範例,讓模型更熟悉特定任務、回答方式或輸出格式。
例如:
因此,如果我們只是希望 AI 能回答最新的公司規範,通常沒有必要為每次文件更新重新 Fine-tuning。
可以簡單整理成:
| 比較 | RAG | Fine-tuning |
|---|---|---|
| 核心概念 | 回答前查資料 | 調整模型行為 |
| 文件更新 | 更新知識庫即可 | 可能需要重新訓練 |
| 是否容易提供來源 | 容易 | 較困難 |
| 適合企業政策問答 | 很適合 | 通常不是第一選擇 |
| 常見用途 | 文件問答、知識搜尋 | 任務習慣、格式、語氣 |
企業內部規範、手冊與政策經常更新,而且答案通常需要能回到原始來源,因此多數企業知識問答場景會先考慮 RAG,而不是要求模型把所有公司資料全部「背起來」。
一個很常見的誤解是:
「既然 RAG 可以讓 AI 查資料,那我把公司所有文件全部放進去,不就最好?」
其實不一定。
RAG 的目標不是把所有文件一次送給模型,而是在使用者提出問題之後,找出少量且真正相關的內容。
如果檢索出來的資料裡混入太多無關內容,反而可能:
可以把它想成一場開卷考試。
考試的時候,桌上放一百本書不一定比較有幫助。真正重要的是:
當問題出現時,你能不能快速翻到正確的那一頁。
這也正是下一篇開始要深入處理的問題。
今天的重點:
RAG 的核心不是「讓 AI 記住更多」,而是「讓 AI 回答前先找到正確資料」。
下一篇,我們會把 RAG 的黑盒拆開,看一份 PDF 到底要經過哪些步驟,才會變成 AI 可以搜尋的知識庫。
我們下集見囉!