RAG 白話文:讓 AI 讀你自己的資料,不再瞎掰
企業內訓的提問時間,有一題幾乎每場都會出現:「我問 AI 我們公司的請假規定,它回得頭頭是道,結果全是錯的——它不是很聰明嗎?」
這不是 AI 不聰明,是它根本沒讀過你的文件。AI 的本事是「接話」:憑訓練時讀過的海量文字,接出最像樣的下文。沒讀過你公司的規定,它就拿「一般公司大概長怎樣」來接,語氣篤定、內容瞎掰——這個現象叫「幻覺」(hallucination)。
解這個問題的技術叫 RAG,全名「檢索增強生成」(Retrieval-Augmented Generation)。名字很硬,原理其實是考試就懂的事:把默寫改成開書考。這篇用白話把它拆開——看懂之後,你會知道手上的 AI 工具在做什麼、為什麼有時找不到答案、什麼時候該換裝備。
這篇文章用「先整理書櫃、再按需取書」的比喻,白話拆解 RAG 的切塊、嵌入、向量資料庫與檢索,並給你三條判斷標準,看 NotebookLM、Claude Projects 這類現成工具什麼時候就夠用。適合被 AI 一本正經瞎掰過、想讓 AI 真的讀懂自己資料的人閱讀。
為什麼 AI 不知道你的文件
AI 模型的知識來自「訓練」:廠商蒐集大量公開文字,讓模型從中學會語言的規律。這個過程留下兩個天生的洞:
私有資料。你的會議記錄、公司內規、課程講義、客戶往來信件,都不在公開網路上,模型自然沒讀過。
知識截止日。訓練曠日廢時,資料蒐集到某個日期就鎖定,之後發生的事模型一概不知道——像被關在圖書館裡好幾年的人,對近況只能用猜的。
碰到這兩個洞,模型不會說「我不知道」,而是憑印象硬接。這不是提示詞寫得更好就能修的——再會問,也問不出它腦袋裡沒有的東西。唯一解法:回答之前,把正確的資料塞給它看。
資料只有一兩頁的話,事情到這裡就結束了:每次提問把全文貼上即可。麻煩在於資料一多就塞不下——AI 一次能讀的量有上限,術語叫「上下文窗口」(context window),可以理解成它的「單次閱讀量」。幾百頁塞不進去,問題就變成:每次提問,該挑哪幾段給它看?
RAG 的整套設計,都在回答這一題。
第一段:先把資料整理進書櫃(索引)
RAG 分兩段。第一段「索引」在使用者提問前就先做好,像把一屋子亂書整理上架,共四步:
一、取出純文字。PDF、簡報、網頁先轉成乾淨的文字。聽起來瑣碎,卻是地基——表格、圖片裡的字沒取乾淨,後面全部白做。
二、切成小塊。整本文件太長,要切成幾百字到一千字的小段落,術語叫「切塊」(chunking)。切法有講究:沿著段落、句子這些自然邊界切,意思才不會被腰斬;相鄰兩塊還保留一點重疊,讓上下文接得起來。
三、把每一塊變成「意思的座標」。這步叫「嵌入」(embedding),是整套系統最神奇的一步:用專門的模型把一段文字轉成一長串數字,代表的不是用了哪些字,而是這段話的意思。「晴朗的一天」和「天空真亮」沒有半個共同字,但意思相近,所以換算出來的數字會靠得很近;「寵物」和「狗」很近,「寵物」和「獅子」就遠。意思變成了座標,電腦就能用算距離的方式比對「誰跟誰在講同一件事」。
四、存進向量資料庫。這些數字座標(術語叫「向量」)連同原文,存進專門的「向量資料庫」(vector store)。它的特長只有一個:給它一個座標,飛快找出離它最近的那幾筆。你可以把它想成一座照「意思」排架的書櫃——講請假的段落都在同一區,不管那段話有沒有用到「請假」兩個字。
第二段:按需取書(檢索與生成)
書櫃整理好,第二段在提問的當下發生,前後不過幾秒:
你的問題也被轉成一個意思座標,拿去書櫃裡比對,取出最相近的幾塊原文;系統把這幾段塞進提示裡,跟你的問題一起交給 AI:「根據以下資料回答。」AI 這才開口——它答的不是印象,是剛剛遞到眼前的段落。
注意:有個反直覺的細節:取出來的段落不是愈多愈好。撈太多,速度變慢、費用變高,還容易混進不相干的段落,反而把 AI 帶偏。好的檢索像好的幕僚:遞三頁重點,不是搬三箱卷宗。
流程總覽
一般人不用自己蓋,現成工具早就內建了
好消息是:上面那一整套,你大概率不用自己動手蓋。
- NotebookLM:把文件、網址、影片丟進去當「來源」,它回答時還附出處段落,點回去就能查證——拆書、整理講義、消化報告的首選
- ChatGPT、Claude 的附檔對話:臨時要讀幾份文件,直接拖進對話就好
- Claude Projects、GPTs:把固定會用到的資料掛在專案裡,每次對話自動帶著,適合「同一批資料反覆問」的場景
- 企業版 Copilot 這類產品:幫你把公司文件接上 AI,背後就是一套大型 RAG
這些工具什麼時候夠用?我的判斷標準有三條:文件量小(幾十份以內)、使用者少(自己或小團隊)、更新頻率低。三條都中,現成工具綽綽有餘。我自己的拆書備課流程就是這樣跑的:把素材整理成來源、用固定提示詞萃取重點、再轉成教材——完整作法寫在知識管理四階段工作流,連 YouTube 影片都能照同一套邏輯收進你的學習系統。
我的經驗:重建 pbtw.tw 時我體會到一件事:我常讓 AI 讀站上既有文章再產出新內容,每次都得先想「該餵它哪幾篇」——我就是在當人肉檢索器。RAG 自動化的正是這個「挑資料」的動作,挑得準不準,決定答案的品質。
不過戴上資安講師的帽子,得補一句:內訓裡被問最多的其實不是技術,是「資料丟上去安全嗎」。原則很簡單:上傳之前先做資料分級——公開資料隨便用;內部文件確認工具的資料條款(會不會拿去訓練、存放在哪);客戶個資與機密,沒有企業合約與授權就不要碰雲端工具。RAG 讓 AI 讀你的資料,前提是你想清楚「誰還讀得到」。
檢索不準的時候,進階技巧在做什麼
用了一陣子你會遇到:資料明明在裡面,AI 卻說找不到。問題通常不在書櫃,在問題本身。檢索是拿你的問題去比對意思,問得含糊、夾雜廢話、用詞跟文件差太遠,比對就失準。
工程上的解法你聽過概念就好:「查詢改寫」是先請 AI 把你的問題改寫得乾淨精準,再拿去檢索;「多查詢」是把一個問題改寫成好幾個角度,各撈一輪再合併;「混合檢索」則是語意比對和傳統關鍵字搜尋並用,再把結果重新排序——意思相近靠語意抓,專有名詞靠關鍵字抓。
對一般人,這些技巧翻成一句話就夠用:找不到答案時,先改你的問題,而不是急著換工具。把代名詞換成全名、把一句長問拆成兩句短問、改用文件裡的用詞再問一次——你就是自己的查詢改寫器。
常見問題
Q1:把文件直接貼進對話,跟 RAG 差在哪?
資料量小的時候沒差,直接貼反而更準。RAG 解決的是「多到塞不下」之後的問題:幾百頁裡挑出最相關的幾段。先貼貼看,塞不下了再上工具。
Q2:用了 RAG,AI 就完全不會瞎掰了嗎?
不會。檢索撈錯段落,AI 照樣根據錯的資料一本正經地答。RAG 把瞎掰的機率大幅壓低,更重要的是讓答案可查證——像 NotebookLM 會附出處,養成點回原文核對的習慣最可靠。
Q3:公司內部文件可以丟 NotebookLM 或 ChatGPT 嗎?
先分級再決定。公開與一般內部資料,確認工具的資料使用條款後可用;涉及個資、客戶機密、營業祕密的,要用有企業合約保障的版本,或根本不上雲。判斷不來就問一句:這份文件外流上新聞,標題會多難看?
Q4:我需要學著自己蓋向量資料庫嗎?
大多數人不用。前面三條標準都符合時,現成工具就是最佳解;真的長到資料量大、多人使用、需要自動更新,那是另一個量級的工程決策,到時候再評估也不遲。
看懂 RAG 之後,下一步是把自己的資料真的接上 AI:挑一批常查的文件,丟進 NotebookLM 或 Claude Projects,跑一週看看省了多少翻找時間。想把這件事變成一整套個人工作流——從素材進來、萃取整理到產出——我的 AI 工作流實戰課 就是帶你把這條線建起來。
這篇的書籍觀念出自《Learning LangChain》第 2-3 章,完整讀書筆記在:/note-learning-langchain/