三分鐘學會計算DeepSeek的顯存內存配置
DeepSeek本地部署
前段時間DeepSeek震驚了全世界。
不容易啊!終于國內有了自己的精品。
圖片
但訪問過程中頻繁的 “服務器繁忙”,也讓很多人嘗而不得作為技術人員都在考慮如何充分利用開源的價值。
讓我們的程序也能借船出海搭上AI的快車,那么問題來了。如果我需要本地部署一個大模型需要什么配置的電腦呢?
顯卡、顯存怎么選配
模型的大小,決定了對硬件的需求。以 DeepSeek-R1 為例,1.5b、7b、32b、70b、671b 之間差距非常大。
圖片
很多人埋怨說:我的大模型就是個“人工智障”,但你得反過來檢視一下是不是用的模型參數太少了?
我們談論A模型比B模型強大前提都是在同一個體量上,拿 7b 模型 對比 405b 模型本身就不是一個級別體量的。
官方給了一個模型版本和配置的對應表:
如下:
參數量 | FP16 顯存占用 | INT8 顯存占用 | INT4 顯存占用 |
1.5B | 3.0GB | 1.5GB | 0.75GB |
7B | 14.0GB | 7.0GB | 3.5GB |
8B | 16.0GB | 8.0GB | 4.0GB |
14B | 28.0GB | 14.0GB | 7.0GB |
32B | 64.0GB | 32.0GB | 16.0GB |
70B | 140.0GB | 70.0GB | 35.0GB |
671B | 1342.0GB | 671.0GB | 335.5GB |
比較直觀是吧!前幾天看到梁斌博士自己搭建了一個滿血版DeepSeek 671b 最強模型花了多少錢呢?
配置如下:
CPU
AMD EPYC 9534
64核 128線程,2.5 GHz
一共 2塊CPU 共128核
GPU
AMD MI300X
192 G
一共 8塊GPU 共 1536 G 顯存
內存
1526 G
效果如下:
圖片
這么一臺服務器下來250萬打底,還只是AMD的配置。畢竟 MI300 系列還是數據高性價比的產品換成 NVEDIA 的 H100 或者 A100價格至少上升 50%。
普通使用需要什么配置
我們大部分人都不追求極限,你們大佬用 671b 的我用個 7b 或者 32b 的就差不多了,但要如何計算配置?
網上有各種各樣的教材需要你理解 int8、fp16、float32 等等專業術語和公式。
圖片
最簡單的方法
直接抄我的答案:用 參數量 ?? 系數 即可。常見的有int4 代表4位 系數0.5, int8 代表 8位 系數為1,fp16 代表16位 系數為2, float32 代表 32位 系數為4。
怎么看系數?如果我們是通過ollama下載的模型,打開下載頁。
圖片
在 model 欄目會寫一個參數:
quantization Q4_K_M
Q4 代表4位量化版本可以對標 int4,實際略高于 int4。如果按 int4 的系數取 0.5,這里可以估算在 0.7 ~ 0.8 左右,如果估算 DeepSeek 的 Q4 量化版本型數據推理以及10個線程的并發請求,我們系數取 0.8。所以,比如 計算 DeepSeek 14b 版本默認 fp16,則顯存需求為 14 ?? 0.8 = 11.2 G。
在滿足顯存的同時內存用量最好為顯存的2倍用于加載模型和計算緩沖。以下給出幾個計算好的顯存數值,都是以 DeepSeek-R1 Q4量化版 為例的最低配置。
參數量 | 顯存 |
671B | 536 GB |
70B | 56 GB |
14B | 11.2 GB |
7B | 5.6 GB |
1.5B | 1.2 GB |
所以哪怕我們就是個普通的電腦跑個乞丐版 1.5b 通常問題不大,需要注意這里做了減法只包含基礎運行和1個線程本地調用,如果需要更多訪問推理請適當增加系數。
當然我給的方法只是粗算:
可以進入 https://huggingface.co/spaces/hf-accelerate/model-memory-usage
這個網站有個在線計算器,如圖:
圖片
只要提供各項參數即可計算出配置要求,需要的朋友們可以自己嘗試一下。