模型量化:由 FP16 壓到 INT8、INT4 換來甚麼
用「相片存成細一點的 JPEG」的比喻解釋量化,說明學校壓縮模型後省下甚麼硬件成本、失去多少準確度,以及 Edor.ai 校內部署怎樣做 INT8 / INT4。
Read in English一句話答案:量化就是把模型「存成細一點的檔案」。體積大幅縮小,一般使用者察覺不到分別,但細節確實少了。學校用它換來便宜硬件與離線能力,代價是一部分準確度——Edor.ai 的校內部署支援 INT8 與 INT4,兩邊的帳都要算清楚。
由一封報價單說起
一位小學的 IT 主任收到報價單,想在校內跑一個開源模型。第一份報價寫着專業級加速卡,連機價錢六位數;第二份報價用一張遊戲顯示卡,價錢是十分之一。他問供應商:「同一個模型,為甚麼差這麼遠?」
答案只有兩個字:量化。
相片存成細一點的 JPEG
用手機拍一張相,原始檔可能三十多 MB。你在通訊軟件傳給同事,對方收到的可能只有 2 MB。同一張相,細節少了,但你看着螢幕,大部分時候真的分不出來——直到你放到最大,想看清楚遠處那個路牌上寫甚麼。
量化就是這回事。模型裡有幾十億個數字(第 4 課 講過這些數字是甚麼),每個數字原本用 16 位元記錄,精細到小數點後很多位。量化把它們改成用 8 位元、甚至 4 位元記錄,等於把每個數字「四捨五入」到一個較粗的刻度上。
- FP16(16 位元浮點):原始檔。最完整,最佔位。
- INT8(8 位元整數):體積約為一半。就像存成高品質 JPEG,肉眼幾乎看不出來。
- INT4(4 位元):體積約為四分之一。就像存成中等品質 JPEG,平時夠用,放大看得出來。
一個七十億參數的模型,FP16 大約要十幾 GB 的顯示卡記憶體;壓到 4 位元,大約幾 GB 就放得下。這就是那兩份報價單相差十倍的原因。
用尺去量的比喻
如果 JPEG 的比喻還不夠具體,可以換一個。想像你要記錄全校八百名學生的身高:
- 用毫米記錄:172.4 厘米。最準,但每個數字要寫的位數最多。
- 用厘米記錄:172 厘米。省了位置,排隊時分高矮完全夠用。
- 用五厘米一格記錄:170 厘米這一格。再省一半,大致還可以分組,但兩個相差三厘米的學生會被歸成同一格。
模型量化就是在調整這把尺的刻度。刻度粗了,絕大部分判斷不受影響——因為模型本來就不靠小數點後第五位做決定。但當兩個選項本來就非常接近時,粗刻度會讓模型「分不出」,於是揀錯。
這就是為甚麼損失不是平均分佈的。 最先出事的永遠是那些本來就在邊緣的判斷:長篇多步驟推理(每一步的小誤差會累積)、精確數字計算、罕見詞彙與少數語言。日常的寫作潤飾、摘要、改寫,則幾乎不受影響。
一個課室裡的例子
同一間小學後來做了一個很簡單的測試,值得所有學校抄。他們準備了 30 條題目,全部來自教師實際會用的場景:
- 10 條常識科概念解釋(小四至小六程度)
- 10 條中文作文評語(附學生原文)
- 5 條數學文字題的分步解說
- 5 條校務通告草稿(中英對照)
同一批題目分別餵給 FP16、INT8 與 INT4 三個版本,由兩位教師盲評,只答「可以直接用 / 要小改 / 要大改」。
結果大致是這樣:概念解釋與通告草稿三個版本都在「可以直接用」與「要小改」之間,分別很小;作文評語在 INT4 版本開始出現用詞重複;數學分步解說在 INT4 明顯退步,有兩題的中間步驟算錯,而語氣仍然非常肯定。
於是學校的決定變得很清楚:校內量化模型負責文字類任務,數學與需要精確推理的任務走雲端模型。 這不是妥協,而是按任務性質分配工具。
實作長甚麼樣
在學校最常用的 Ollama 環境裡,量化等級通常寫在模型名稱的標籤上。以下命令展示同一個模型的不同量化版本怎樣取用:
# 列出本機已下載的模型與體積
ollama list
# 取用一個 4-bit 量化版本(標籤中的 q4 就是量化等級)
ollama pull qwen2.5:7b-instruct-q4_K_M
# 取用同一模型的 8-bit 版本作對照
ollama pull qwen2.5:7b-instruct-q8_0
# 分別執行,用同一條題目比較輸出
ollama run qwen2.5:7b-instruct-q4_K_M
標籤的讀法:q4 / q8 是位元數,K_M 之類的後綴代表不同的壓縮策略,一般而言 K_M 是體積與品質的常見平衡點。這些檔案通常是 GGUF 格式,第 12 課 已經介紹過。
硬件期望同樣要說範圍而不是單一數字,因為它取決於模型大小、量化位元與上下文長度(一次處理多長的文字):
- 三十億參數、4 位元:大約 4 GB 至 6 GB VRAM 這個量級。
- 七十至八十億參數、4 位元:大約 6 GB 至 10 GB;同一模型改用 8 位元大約要多一倍。
- 上下文開得長(例如要一次讀一份長文件),記憶體需求會再往上加,而且加得比很多人預期快。
一個實用的粗略估算法:模型體積(GB)大約等於參數量(十億)乘以每個參數的位元組數,再預留三至五成給上下文與運算。 4 位元即每個參數約 0.5 位元組,所以 70 億參數約 3.5 GB,加預留後約 5 GB 至 6 GB。
這對你的課堂意味甚麼
- 硬件預算可以差十倍,而學生未必察覺。 對於「解釋概念」「改寫句子」「出練習題」這類任務,量化模型的輸出質素通常足夠,省下來的錢可以放在教師培訓上。
- 不要把量化模型用在會計分的地方。 需要精確數字、多步推理或會影響成績的任務,應該用未壓縮或雲端模型,並保留教師覆核。
- 離線可用是真正的加分。 校網對外斷線、外評日網絡擠塞、學校旅行沒有網絡——校內量化模型在這些時候仍然運作。
- 每次換版本都要重測。 量化等級一改,行為就會變。用你自己那 30 條題目重跑一次,比看任何宣傳數字有用。
在 Edor.ai 裡是怎樣運作的
Edor.ai 的校內部署支援以 INT8 或 INT4 量化執行本地模型。實際意義是:一台配單張消費級顯示卡的伺服器,放在學校機房,就可以為全校提供本地 AI 推論,而不需要購置專業級加速卡。
要誠實說清楚學校換到甚麼、付出甚麼:
- 換到的:硬件成本大幅下降;推論速度在同一張卡上更快;對外網絡中斷時仍可運作;資料完全不離開校園網絡,符合最嚴格的校本資料政策。
- 付出的:一部分準確度,集中在多步推理與精確計算;需要 IT 同事負責更新與備份;模型能力落後於最新的雲端旗艦。
因為平台可按模組切換供應商(OpenAI、Azure OpenAI、Anthropic、Poe、本地 Ollama),學校不需要二選一:日常低風險任務交給校內量化模型,評卷、長篇推理等交給雲端模型。兩種部署方式的完整比較,見 本地部署 vs 雲端部署 與 開源與閉源的成本與私隱權衡。
小結
量化不是「免費午餐」,而是一個明碼實價的交易:用一部分準確度,換取十倍的硬件成本差距與離線能力。懂得這筆帳的學校,會把量化模型放在合適的任務上,而不是全校一刀切。
下一課我們把模型真正跑起來:本地部署實作:用 Ollama 與 LM Studio 在校內跑模型。上一課見 參數高效微調。
本課重點
- 量化就像把相片存成細一點的 JPEG,檔案細了很多,而大部分人看不出分別;但放到最大來看,細節確實少了。
- 由 FP16 壓到 INT4,模型體積大約減到四分之一,一張消費級顯示卡就跑得動原本要專業卡的模型。
- 損失不是平均分佈的,長篇推理、精確數字與少數語言最先出問題,所以要用學校自己的題目集測試而不是看宣傳數字。
- Edor.ai 校內部署支援 INT8 與 INT4 量化,學校換來的是便宜硬件與離線可用,付出的是一部分準確度。
常見問題
沒有一個通用答案。一般而言,由 FP16 到 8 位元幾乎察覺不到分別;到 4 位元,日常寫作與問答仍然可用,但多步驟推理、數字計算與冷門語言的表現會明顯下滑。唯一可靠的判斷方法是用你學校自己的題目測,見第 27 課。
不一定。壓得愈細,省的是硬件錢,付的是準確度與教師覆核時間。如果因為量化太狠而令教師每份輸出都要大幅修改,省下來的硬件錢並不划算。實務做法是由 8 位元開始試,確認夠用才再往下壓。
兩者可以疊加,這就是 QLoRA。先把基礎模型量化到 4 位元以省記憶體,再在上面訓練一層 LoRA。詳見第 20 課。
- · 本文所有價格、功能與規格以上列官方文檔為準;供應商可隨時調整,請於採購前自行覆核。
- · 文中提及的產品名稱與商標均屬其各自擁有者所有。Edor.ai 與該等公司並無合作、代理或贊助關係。
- · 本文為教育用途的獨立整理與評測,不構成任何採購建議或法律意見。
- · 涉及學生個人資料的應用,請按學校政策及《個人資料(私隱)條例》(PDPO)自行評估後才使用。