模型蒸餾到底在做什麼?為什麼讓小模型變強,卻常被拿來罵人?

模型蒸餾示意圖

最近只要有人說某個 AI 模型是「蒸餾來的」,語氣常常不像在介紹一種技術,反而像是在說它不算真正有本事。可是模型蒸餾到底在做什麼?它和複製、抄襲又有什麼不同?

先講結論:模型蒸餾本身不是作弊,也不是把一個模型的檔案直接複製一份。它是一種很常見的模型訓練方法,目標是讓體積更小、速度更快、成本更低的模型,學會比較大型模型的一部分能力。

真正引起爭議的,通常不是「蒸餾」這個方法,而是誰的模型被拿來當老師、資料是否有取得授權,以及蒸餾的規模和用途

先用老師和學生來理解

想像有一位經驗非常豐富的老師,幾乎什麼題目都能回答,但老師的教學成本很高、每次回答都很慢。學校因此找來一群學生,讓他們大量觀摩老師解題,再把學到的能力帶到日常工作中。

模型蒸餾的概念很接近這件事:

  1. 教師模型通常是能力強、規模大的模型。
  2. 教師模型回答大量問題,產生答案、評分、偏好,甚至完成任務的過程資料。
  3. 學生模型拿這些資料練習,逐漸學會在類似情況下給出相近而且有用的回答。

所以它不是把老師的大腦塞進學生身體,而是讓學生看過足夠多的示範,自己重新整理出一套比較小的模型。

技術上到底蒸餾了什麼

最簡單的做法,是把教師模型回答過的問題和答案整理成訓練資料,再拿來訓練學生模型。這也是現在談大型語言模型蒸餾時,最容易理解的一種方式。

但教師給學生的,不一定只有最後一句答案。教師還可以提供:

  • 對不同答案的信心或機率,讓學生知道哪些選項比較接近、哪些只是勉強可行。
  • 人類或另一個模型對答案的評分,讓學生學會什麼叫做清楚、正確、有幫助。
  • 特定任務的操作示範,例如如何呼叫工具、整理資料或修正程式碼。

這種「不只告訴你答案,也讓你看到答案之間差多少」的想法,早在 2015 年 Hinton、Vinyals 和 Dean 的經典論文中就被系統化提出,後來才逐漸成為機器學習的常見方法。可以參考原始論文《Distilling the Knowledge in a Neural Network》

要注意的是,學生模型學到的主要是教師展現出來的行為和規律,不是教師模型內部的參數。兩者最後可能回答得很像,但內部結構可以完全不同。

為什麼不直接使用大模型就好

因為大模型很強,不代表它適合所有場景。蒸餾最常見的價值有四個:

  • 省成本:大量處理簡單任務時,小模型的每次呼叫費用通常比較低。
  • 反應更快:模型較小,延遲通常也比較低,適合即時功能。
  • 比較容易部署:有些模型可以放到公司內部伺服器、手機或邊緣裝置上,減少對外部 API 的依賴。
  • 更專注:如果產品只需要客服分類、文件整理或程式碼檢查,不一定需要一個什麼都會的大模型。

因此,蒸餾常常是產品工程上的取捨:用一個比較小的模型,換取足夠好的表現、較低的成本和更穩定的服務。這不是把老師完整複製下來,而是只帶走產品真正需要的那一部分能力。

模型蒸餾、微調、量化差在哪

這三個詞很容易混在一起,可以先用下面的方式區分:

方法 白話理解 主要目的
微調 給模型一批特定教材,教它適應新任務或新風格 讓模型更懂某個領域
蒸餾 讓小模型大量觀摩大模型的回答與判斷 把部分能力轉移到小模型
量化 把同一個模型的數字改用比較省空間的格式保存 降低記憶體和運算需求

實務上它們可以一起使用:先用教師模型產生資料,再訓練一個學生模型,最後把學生模型量化,讓它更容易在本機運作。

為什麼蒸餾有時會變成貶義詞

因為「蒸餾」有兩種完全不同的使用情境。

第一種是正規的能力壓縮。模型公司用自己擁有的模型和資料,或在得到授權的情況下,訓練一個更便宜、更專門的模型。OpenAI 的模型蒸餾功能介紹就是把這件事當成正式的開發流程,讓開發者利用強模型的輸出,訓練成本更低的模型。

第二種是社群常說的蒸餾攻擊。簡單說,就是未經允許地大量呼叫別人的模型,收集它的回答、評分或任務表現,再用這些資料訓練自己的競爭模型。這時候爭議不在於「學生模型學老師」本身,而在於資料來源、服務條款、帳號與流量是否被濫用,以及是不是有意抽取對方最有價值的能力。

例如,Anthropic 在 2026 年 2 月的一份公開說明中,把它指控的高規模取得 Claude 輸出、再用來訓練其他模型的行為稱為「distillation attacks」。這是 Anthropic 對相關事件的說法,不代表所有蒸餾都是攻擊,也不能因為兩個模型回答相似,就直接證明其中一個蒸餾了另一個。可以閱讀Anthropic 對蒸餾攻擊的說明

判斷一個案例是否有問題,可以先問三件事:老師是誰?訓練資料有沒有權利取得?蒸餾的目的,是正常部署優化,還是未經授權地抽取競爭者能力?這比看到「某模型很像另一個模型」就下結論可靠得多。

蒸餾後的小模型會等於大模型嗎

通常不會。學生模型可能在某幾類任務上表現得非常接近老師,但仍可能有幾個差異:

  • 它通常只學到訓練資料涵蓋的範圍,遇到少見問題時比較容易失常。
  • 教師模型的錯誤、偏見或不穩定回答,也可能一起被學生學走。
  • 教師擁有的安全規則和拒答能力,不一定會自動完整轉移,仍需要另外測試和設計。
  • 學生模型可以模仿結果,卻不代表它擁有教師同樣廣泛的知識和推理能力。

比較貼切的比喻是:學生學會了學霸常用的解題套路,但不是把學霸整個大腦搬過來。它能不能考好,還是取決於教材品質、練習範圍和考試題型。

一句話總結

模型蒸餾,就是讓小模型大量觀摩大模型,把真正需要的能力重新學進一個更便宜、更快、更容易部署的模型。

所以「蒸餾」不是天生的貶義詞。當它有清楚的資料權限和合理用途時,是很實用的工程技術;當它變成未經授權的大規模能力抽取時,才會出現「蒸餾攻擊」這種負面說法。

下次再看到有人爭論某個模型是不是蒸餾來的,先別只看這個詞聽起來好不好聽。真正值得追問的是:它向誰學、拿什麼資料學,以及這件事有沒有獲得允許。

延伸閱讀