微調 vs RAG:什麼時候你才真的需要微調
用你想要的行為範例繼續訓練模型,讓那個行為成為它的預設,而不是每次請求都要另外要求。它改變的是模型「怎麼做」,而不是它「知道什麼」。
要改變模型為你做的事,其實只有三種方法,而且它們彼此不能互換。選錯的代價很昂貴,而且往往幾個月後才會顯現。
| 手段 | 它改變什麼 | 它在何時讓你付出代價 |
|---|---|---|
| 提示(Prompting) | 模型這一次做什麼 | 每次請求,以 token 計——而且隨著對話變長,冗長的指令被遵守得越來越不可靠 |
| 檢索(Retrieval) | 模型此刻知道什麼 | 每次請求,以檢索工作計。事實保持最新,因為它們存在模型之外 |
| 微調(Fine-tuning) | 模型預設做什麼 | 一次,事前。請求時免費——行為已內建其中 |
微調究竟是什麼
你拿一個基礎模型,用你想要的行為範例繼續訓練它:一組組的輸入,配上你這個領域裡優秀從業者會給出的答案。模型的預設隨之改變——它傾向選用哪些字詞、答案呈現什麼樣貌、在回答前會先問什麼。
**它不是資料庫。**沒有東西被儲存起來供查找。這些範例挪動的是模型的傾向,它們不會變成它能背誦的事實。
實務上它是一個 adapter,而非全新的模型
重新訓練每一個權重既昂貴又鮮少必要。常見的做法——LoRA,也就是低秩適配(low-rank adaptation)——訓練的是一小組附加參數,疊在一個凍結的基礎模型之上。成品是一個數十 MB 的檔案,而非數十 GB。
這帶來一個值得知道的後果:**一個基礎模型能服務多個 adapter。**同一台機器可以為一家律師事務所、一間診所和一個物流業者跑同一套基礎權重,只為每個租戶切換一個小小的 adapter。按產業微調並不代表每個產業都要一整個模型。
什麼時候你才真的需要它
**語域很重要,而提示留不住它。**日語商務敬語、臨床用語、核保人員拿捏含糊分寸的方式。你可以在提示裡描述語域;但在一段長對話下,模型會飄回它的預設。微調挪動的是那個預設。
**大量產出時的格式一致性。**如果每一份輸出都必須是某種特定結構,而「通常正確」還不夠好,那麼範例教它會比指令更可靠。
**指令已經比答案還長。**當系統提示比它產出的內容還長時,你每一次請求都在為那些 token 付費。微調正是把這筆成本移出每次請求路徑的方法。
**窄領域裡的小模型。**一個調校得當的小模型,在單一行當內往往勝過大得多的通用模型——這既是品質決策,也是成本決策。請見自帶模型。
**基礎模型在你的語言或領域裡很弱。**有些語言和專業在公開訓練資料裡很稀薄。範例正是你修補這一點的方法。
什麼時候你不需要它
**事實不該放進微調裡。**價格、政策、供應情況、案件狀態——任何可能在某個週二就變動的東西,都屬於知識庫,在那裡更改它只是上傳一次。微調後的模型不會因為你的價目表變了就跟著更新,它會繼續自信地拿它學到的內容作答。
- **你還沒試過更好的提示。**多數「我們需要客製模型」的問題其實是提示問題。微調是昂貴的解法;先掙得它。
- **你只有寥寥幾個範例。**幾十個不會撼動一個模型。數百個好的範例也許可以;品質勝過數量,而糟糕的範例會忠實地訓練出糟糕的習慣。
- **你想要的東西經常變動。**任何你每週都想編輯的東西都不該被內建進去。
要把它做對得付出什麼
**範例。**數百到數千個,取自真實工作,並由懂這個領域的人審核。這是客戶最常低估的部分——資料蒐集通常比訓練更耗時。
**一個保留下來的評估集。**模型從未見過的範例,在前後各評分一次。沒有這個,你無從得知微調是幫了忙、幫了倒忙,還是什麼都沒改變——而「感覺變好了」不是一種量測。這是最常被略過的一步,也是決定這個專案值不值得做的一步。
**一份因應基礎模型變動的計畫。**adapter 綁定於它訓練時所依附的基礎。當你換到較新的基礎模型時,微調得重做一次。把它編進維護預算,而不是當作一次性的事。
要防範的失敗
一個在某種狹窄風格上調過頭的模型,在其他所有事情上都會變差——即使問題需要不同的語域,它仍用你的招牌口吻作答,而且對於它從未被教過的事情變得自信而流暢。這正是評估集之所以重要的原因,也是為什麼明智的目標通常是預設的小幅位移,而不是一個只會做一件事的模型。
一份長期有效的代理自我描述——它的性格、語氣與不可退讓的原則——和它當下在做的那份工作分開存放。
代理被允許據以作答的那些文件。agent4.io 分開存放兩種——你公司審核過的資料,以及每位客戶自己的檔案——一起檢索,但絕不混為一談。
一包具名的能力——包含一段「什麼時候該用」的簡短說明、完整的操作指示,以及它所解鎖的工具——代理只在真的用得上時才把它載入。
Model Context Protocol,一套把代理接上外部工具與資料的開放標準——讓一個系統只需要把自己的能力公開一次,而不是每接一個 AI 產品就重做一次。
三件常被混為一談的不同工作——知識庫存放事實,MCP 工具負責那種不能讓模型即興發揮的計算,而 Skill 是決定該伸手拿哪一個的流程。