本地部署常見問題

都是實際會遇到的。按症狀查,不按概念分類。

顯存相關

1. 啟動就 OOM(記憶體不足)

2. 明明夠卻說不夠

兩個常見原因:① 顯存被其他程式佔用 ② 計算的是「空閒顯存」而非「總顯存」。 用 nvidia-smi 確認實際空閒量。

3. 想跑更大模型但顯存不夠

三條路:降量化(品質有損)、降上下文(能力受限)、CPU 卸載(速度慢 5-10 倍)。 三者可以組合,但要清楚各自代價。

模型相關

4. 下載到一半失敗

5. 模型載入失敗:格式不匹配

GGUF 給 llama.cpp / Ollama;safetensors 給 vLLM / Transformers。 下載前看清格式,不要混用。

6. 跑起來了但效果很差

最常見三個原因:① 量化太低(Q2/Q3) ② 上下文被截斷但模型沒說 ③ 用了不適合任務的模型規模。 建議先換 Q4_K_M 重測,再確認上下文設定。

效能相關

7. 速度慢到無法用

現象可能原因解法
每秒幾個 token整機在 CPU 上跑檢查是否真的用了 GPU
比預期慢一半量化偏高或上下文太長降量化、降上下文
前幾秒慢之後快模型載入中,正常現象等載入完
越跑越慢歷史累積,KV cache 變大定期清空對話或限制輪次

8. 為什麼我的 4090 速度不如別人

檢查:① 是否被限功耗 ② 是否 PCIe 頻寬不足 ③ 是否同時有其他負載 ④ 模型量化檔位是否相同。 同樣的卡在不同的散熱與供電條件下速度差異可達 20%。

9. 多張卡怎麼配

llama.cpp 用 --split-mode;vLLM 用 --tensor-parallel-size。 注意不是所有模型都適合張量平行,且多卡間的 PCIe 頻寬會成為瓶頸。

工具選擇

10. Ollama 還是 llama.cpp

需求選
快速上手、不想碰編譯Ollama
要精細控制參數llama.cpp
要 GPU+CPU 混合推理llama.cpp
多人併發、追求吞吐vLLM

11. 換了工具後效果變差

不同框架的預設參數不同(尤其 temperature、top_p、上下文長度、系統提示處理方式)。 換框架時要重新確認這些設定,不能假設行為一致。

與 API 的對比

12. 為什麼本地跑的不如官方 API

三個原因:① 參數量差距(本地跑的是小版本) ② 量化損失 ③ 官方做了額外優化(提示詞模板、工具調用、安全對齊)。 這是預期內的差距,不是設定問題。

13. 本地能完全替代 API 嗎

取決於任務。分類、抽取、翻譯可以;複雜推理、代碼重構、長文深度分析通常不行。 建議混用:簡單任務本地,複雜任務走 API。

其他

14. 模型檔案太大,硬碟不夠

一個 32B Q4 模型約 20 GB,跑多個版本很快佔滿。建議:只保留在用的版本、用外接 SSD、或雲端儲存按需下載。

15. 長時間運行會不穩嗎

會有兩個問題:① 顯存碎片累積,需要定期重啟 ② 消費級卡長時間滿載會過熱降頻。 生產環境建議用專業卡並設定監控與自動重啟。

相關

本地部署總覽 · 顯存計算器 · 量化怎麼選 · Ollama · llama.cpp · 自建 vs API