估算方法說明
一句話說明
能不能跑,看記憶體放不放得下;跑多快,主要看記憶體頻寬。我們把模型所需記憶體(權重+KV 快取+執行環境開銷)與硬體可用記憶體比較,再用頻寬估算生成速度。這是估算,不是實測。
所需記憶體
權重大小=參數量 × 每權重位元數 ÷ 8。量化版本(如 Q4_K_M)的位元數是 GGUF 格式的近似平均值。
KV 快取=2(K 與 V)× 有快取的層數 × KV 頭數 × 每頭維度 × 2 位元組(FP16)× 上下文 token 數。層數、KV 頭數與注意力架構取自各模型在 Hugging Face 的 config.json。
執行環境開銷=0.5 GiB+權重的 5%,涵蓋 CUDA/Metal 環境與運算暫存。
總計 = 參數量×位元數/8 + 2×層數×KV頭數×每頭維度×2×上下文 + (0.5 GiB + 5%×權重)
可用記憶體
獨立顯示卡:全部 VRAM(開銷已計入模型端)。
Apple Silicon 與統一記憶體電腦:預設約 75% 可給 GPU 使用。macOS 可用 sysctl 調高上限,迷你電腦可在 BIOS 調整配置,實際可用量可能更高。
生成速度
逐 token 生成時,每產生一個 token 都要讀過一次「啟用中的」權重,因此速度主要受記憶體頻寬限制:每秒 token 數 ≈ 頻寬 × 效率 ÷ 每 token 讀取量。MoE 模型只計算啟用參數,所以比同總參數量的密集模型快很多。
效率係數是依公開實測校準的經驗值。這裡不估算提示詞處理(prefill)速度,它主要受算力影響。
已知限制
KV 快取依各模型的注意力架構計算:混合線性注意力(Qwen3.5 之後)只算全注意力層;滑動視窗(Gemma、gpt-oss)與分塊注意力(Llama 4)的局部層以視窗大小為上限;MLA(DeepSeek、Kimi、GLM)使用壓縮後的快取大小。DeepSeek-V4 的壓縮稀疏注意力暫不估算。
未計算多卡分割、部分卸載到 CPU 記憶體、KV 快取量化(Q8/Q4 cache)等進階設定。
速度會因執行環境(llama.cpp、Ollama、LM Studio、vLLM、MLX)、驅動與批次大小而不同。歡迎在論壇回報實測數據,我們會用來校準。
目前使用的參數
| 量化 | 每權重位元數 |
|---|---|
| Q4_K_M | 4.85 |
| Q5_K_M | 5.69 |
| Q6_K | 6.59 |
| Q8_0 | 8.5 |
| FP16 | 16 |
| 硬體類型 | 可用記憶體比例 | 頻寬效率 |
|---|---|---|
| 消費級顯示卡 | 100% | 70% |
| 工作站顯示卡 | 100% | 70% |
| Apple Silicon | 75% | 65% |
| 統一記憶體迷你電腦 | 75% | 60% |