gpt-oss 20B 如何本地部署?
gpt-oss 20B 是 OpenAI 在 2025 年 8 月開放權重的小型 MoE,每個字只動用 3.6B 參數。一張 16GB 顯示卡就能跑滿 128K 上下文,約 90 到 130 tokens/s。它的專家權重出廠就是 4-bit 格式,各檔量化的體積幾乎一樣,選量化不必傷腦筋;要留意的是,它只認 OpenAI 自家的 harmony 對話格式。
gpt-oss 20B 模型資訊
- 4-bit 最低顯示記憶體13 GB · 8K
- 參數量20.9B
- 激活參數3.6B
- 上下文上限128K
- 架構
- MoE
- 專家卸載
- 3 GB 顯存 + 11 GB 記憶體
- 授權
- Apache-2.0
- 發布日期
- 2025年8月5日
- 廠商
- OpenAI
- Hugging Face 倉庫
- openai/gpt-oss-20b
- GGUF 倉庫
- unsloth/gpt-oss-20b-GGUF
- MLX 倉庫(Apple)
- mlx-community/gpt-oss-20b-MXFP4-Q8
- Ollama 標籤
- gpt-oss:20b
- 層數
- 24
- 隱藏維度
- 2,880
- KV 頭
- 8
- 頭維度
- 64
gpt-oss 20B 本地部署需要多少顯示記憶體?
| 量化 | 權重體積GB | 8K 上下文GB | 32K 上下文GB | 128K 上下文(最大)GB |
|---|---|---|---|---|
| 1-bit | 5.3估 | 6.5 | 7.2 | 9.6 |
| 2-bit | 8.3估 | 9.6 | 10.2 | 12.6 |
| 3-bit | 11.5GGUF | 12.8 | 13.4 | 15.8 |
| 4-bit | 11.6GGUF | 12.9 | 13.5 | 15.9 |
| 5-bit | 11.7GGUF | 13 | 13.6 | 16 |
| 8-bit | 12.1GGUF | 13.4 | 14 | 16.4 |
| BF16/FP16 | 13.8GGUF | 15.1 | 15.7 | 18.1 |
詳細計算規則可在資料方法頁查看。
單卡能跑 gpt-oss 20B 嗎?
可以,一張 16GB 顯示卡就能整個放下,上下文還能開滿 128K。它的專家權重出廠就是 4-bit 格式,各檔量化的檔案都在 12 GB 上下,選哪一檔幾乎不影響顯示記憶體,所以 16GB 以上的卡直接用 8-bit:RTX 5060 Ti 16GB 每秒約 90 個 token,24GB 的 RTX 3090 在 130 左右。12GB 的卡是臨界點,4-bit 加 8K 剛好塞得下,幾乎沒有餘裕,想把上下文開長,就用 llama.cpp 把幾層專家移到系統記憶體。
| 裝置 | 價格 | 速度 t/s | 最大上下文 |
|---|---|---|---|
| NT$6,0955 筆掛單 | 144.4 | 128K | |
| NT$20,4794 筆掛單 | 144.4 | 128K | |
| NT$25,23314 筆掛單 | 109 | 128K | |
| Radeon RX 7900 XTX24 GB | NT$27,76412 筆掛單 | 147.3 | 128K |
| NT$41,44513 筆掛單 | 146.2 | 128K | |
| Ryzen AI Max+ 395 128GB整機 · 128 GB | NT$92,64316 筆掛單 | 79.8 | 128K |
| NT$121,8986 筆掛單 | 149.5 | 128K | |
| NT$156,0307 筆掛單 | 136.8 | 128K | |
| NT$209,66541 筆掛單 | 83 | 128K | |
| MacBook Pro M5 Max 128GB整機 · 128 GB | NT$222,80110 筆掛單 | 125.6 | 128K |
| Mac Studio M5 Ultra 96GB整機 · 96 GB | NT$224,29315 筆掛單 | 157.9 | 128K |
| NT$253,54314 筆掛單 | 171.9 | 128K | |
| NT$609,4916 筆掛單 | 171.9 | 128K |
| 裝置 | 價格 | 速度 t/s | 最大上下文 |
|---|---|---|---|
| NT$6,0955 筆掛單 | 129.2 | 128K | |
| NT$20,4794 筆掛單 | 129.2 | 128K | |
| NT$25,23314 筆掛單 | 92.5 | 128K | |
| Radeon RX 7900 XTX24 GB | NT$27,76412 筆掛單 | 132.5 | 128K |
| NT$41,44513 筆掛單 | 131.2 | 128K | |
| Ryzen AI Max+ 395 128GB整機 · 128 GB | NT$92,64316 筆掛單 | 65 | 128K |
| NT$121,8986 筆掛單 | 134.9 | 128K | |
| NT$156,0307 筆掛單 | 121 | 128K | |
| NT$209,66541 筆掛單 | 67.9 | 128K | |
| MacBook Pro M5 Max 128GB整機 · 128 GB | NT$222,80110 筆掛單 | 109.2 | 128K |
| Mac Studio M5 Ultra 96GB整機 · 96 GB | NT$224,29315 筆掛單 | 144.4 | 128K |
| NT$253,54314 筆掛單 | 160.6 | 128K | |
| NT$609,4916 筆掛單 | 160.6 | 128K |
| 裝置 | 價格 | 速度 t/s | 最大上下文 |
|---|---|---|---|
| NT$6,0955 筆掛單 | 127.1 | 128K | |
| NT$20,4794 筆掛單 | 127.1 | 128K | |
| NT$25,23314 筆掛單 | 90.4 | 128K | |
| Radeon RX 7900 XTX24 GB | NT$27,76412 筆掛單 | 130.4 | 128K |
| NT$41,44513 筆掛單 | 129.2 | 128K | |
| Ryzen AI Max+ 395 128GB整機 · 128 GB | NT$92,64316 筆掛單 | 63.2 | 128K |
| NT$121,8986 筆掛單 | 132.9 | 128K | |
| NT$156,0307 筆掛單 | 118.9 | 128K | |
| NT$209,66541 筆掛單 | 66.1 | 128K | |
| MacBook Pro M5 Max 128GB整機 · 128 GB | NT$222,80110 筆掛單 | 107.1 | 128K |
| Mac Studio M5 Ultra 96GB整機 · 96 GB | NT$224,29315 筆掛單 | 142.5 | 128K |
| NT$253,54314 筆掛單 | 159 | 128K | |
| NT$609,4916 筆掛單 | 159 | 128K |
只列常見的顯示卡和整機,50B 以下和以上的模型各一組,按價格從低到高。
用整機跑 gpt-oss 20B 要什麼配置?
部分購買連結是聯盟連結:透過它們購買時我們可能獲得佣金,你支付的價格不變。
本地部署 gpt-oss 20B 要注意什麼?
各檔量化體積幾乎一樣
它的專家部分始終是 4-bit 格式(MXFP4,每個參數約 4.25 bit),所以 GGUF 從 3-bit 到 8-bit 都落在 11.5 到 12.1 GB 之間,FP16 那一檔也只有 13.8 GB。顯示記憶體夠的話,直接用 8-bit 或 FP16 就好。表中 1-bit、2-bit 兩列(5.3、8.3 GB)是依參數量估算的,實際上並沒有這麼小的檔案,單卡表裡 2-bit 那幾列的速度也是用這個體積估出來的;實際的 2-bit 檔案和 3-bit 差不多大,Unsloth 表示低檔位只壓縮了注意力等少數幾層,效果和原版幾乎一樣。
一定要用 harmony 格式
OpenAI 表示它只用 harmony 格式訓練過,換成其他對話格式就無法正常運作。Ollama 和 llama.cpp(加上
--jinja,使用模型內建的範本)會自動套用;最容易出錯的情況是自己拼接提示詞,或用了不認得這個範本的前端。在 vLLM 裡接工具呼叫,要加上--tool-call-parser openai--enable-auto-tool-choice。思考強度和取樣參數
思考強度分成 low、medium、high 三檔,在系統提示詞裡寫「Reasoning: high」即可;llama.cpp 也能用
--chat-template-kwargs傳入reasoning_effort來設定預設值。low 回答快,high 想得更久、輸出的 token 也更多。OpenAI 建議temperature1.0、top_p1.0。長上下文幾乎不增加顯示記憶體
24 層中有一半只看最近 128 個 token,這些層的快取不會隨上下文變長;原生 4K 的上下文是用 YaRN 擴展到 128K 的。所以從 8K 拉到 128K,4-bit 的顯示記憶體用量只從 12.9 GB 增加到 15.9 GB。
啟動指令
Ollama
- Windows
- macOS
- Linux
ollama run gpt-oss:20bllama.cpp
- NVIDIA
- AMD
- Mac
- CPU
llama-server -hf unsloth/gpt-oss-20b-GGUF:Q4_K_M -c 8192顯示記憶體不夠時加上 --cpu-moe,把路由專家放進系統記憶體(約需 11 GB)。
llama-server -hf unsloth/gpt-oss-20b-GGUF:Q4_K_M -c 8192 -ngl 99 \ --cpu-moe
vLLM
- Linux
- NVIDIA
- AMD
vllm serve openai/gpt-oss-20bMLX
- Apple 晶片
在 Mac 上先 pip install mlx-lm,這條指令會從 Hugging Face 下載 MLX 權重,並啟動相容 OpenAI 介面的服務。
mlx_lm.server --model mlx-community/gpt-oss-20b-MXFP4-Q8量化檔名以模型庫當週抓取為準,口徑見資料方法。 資料方法
gpt-oss 家族的其他模型
| 模型 | 總參數 | 激活參數 | 4-bit 模型大小 |
|---|---|---|---|
| gpt-oss Safeguard 20BMoE | 20.9B | 3.6B | 11.6 GB |
| gpt-oss 120BMoE | 116.8B | 5.1B | 62.8 GB |