昨天聊到 RAG,需要先「找出相關的資料」再交給 AI,但問題來了:如果一份文件很長,AI 怎麼知道哪一段才有用?這就牽涉到兩個關鍵步驟:文件切分和向量化。
文件切分(Chunking) 就是把一份長文章拆成小段落。為什麼要拆?因為模型有 token 限制,而且長篇內容不容易精準比對。比如一篇 10 頁的報告,我們可以切成一小段一小段(像 200~500 字),之後才能方便搜尋。
接著是 向量化(Embedding)。這一步就是把文字轉成一串數字向量,代表它的語意。想像每一段文字都被丟進一個「多維空間」,相似的內容就會靠得很近。當使用者問問題時,我們也把問題轉成向量,然後去比對哪幾段最接近,再交給 AI 回答。
舉例來說,假設使用者問「Python 適合做什麼?」系統就會比對 embedding,找到「Python 用途」那幾段,而不是把整本教材搬給 AI。
簡單來說:
切分是把大書切成小卡片。
向量化是幫卡片貼上「語意座標」。
之後查資料,就是在座標空間裡找最近的卡片。
這樣,AI 小幫手就能真正「精準檢索」,回答更專業。