Bir modelin gerçekte ne kadar VRAM'a ihtiyaç duyduğu.
Bunu iki sayı belirler: sabit olan ağırlıklar ve sunduğunuz bağlam miktarıyla büyüyen KV önbelleği. Yanlış cevapların neredeyse tamamı, ikincisinin birincisinden tahmin edilmesinden kaynaklanır.
Kısa cevap
- Weights
- Milyar cinsinden parametre × parametre başına bayt. 4-bit'te 70B, 35 GB demektir.
- KV önbelleği
- 2 × katman sayısı × KV head sayısı × head dim × bayt, token başına. Parametre sayısıyla hiçbir ilgisi yoktur.
- Overhead
- Aktivasyonlar, CUDA bağlamı ve ayırıcı parçalanması için yaklaşık %15 ekleyin.
- Tuzak
- Ağırlıkları 4-bit'e nicemlemek, önbelleği nicemlemez. Her yaygın yığında FP16 olarak kalır.
Formül
Burada, ikinci bir modelle karşılaşınca geçerliliğini koruyan bir kestirme kural yoktur. Hesabın tamamı üç satırdır ve bir çarpana güvenmek yerine bu üç satırı hesaplamaya değer.
# 1. Weights
weights_gb = parameters_in_billions × bytes_per_parameter
# 2. KV cache, per token — then multiplied by the context you serve
bytes_per_tok = 2 × layers × kv_heads × head_dim × cache_bytes
cache_gb = bytes_per_tok × context_tokens × batch / 1024³
# 3. Everything else
total_gb = (weights_gb + cache_gb) × 1.15
2 sayısı, token başına iki tensör olmasından gelir: K ve V. bytes_per_parameter, BF16 için 2, FP8 için 1, 4-bit için 0.5'tir. cache_bytes ise ayrı bir sayıdır ve bu ayrım, yanlış bir cevabın en yaygın tek kaynağıdır — bkz. aşağıda.
Ağırlıklar
Kolay yarı. Parametre sayısıyla tam olarak doğrusaldır ve tek karar hassasiyettir.
| Model | BF16 / FP16 | FP8 | 4-bit (AWQ, GPTQ) |
|---|---|---|---|
| Llama 3.1 8B | 16.0 GB | 8.0 GB | 4.0 GB |
| Qwen 3 32B | 64.0 GB | 32.0 GB | 16.0 GB |
| Llama 3.3 70B | 140.0 GB | 70.0 GB | 35.0 GB |
| Llama 3.1 405B | 810.0 GB | 405.0 GB | 202.5 GB |
Dört bit nicemleme kaliteden ödün verdirir; ne kadar ödün verdireceği ise yöntemden çok modele bağlıdır. Tek kart ile dört kart arasındaki farkı belirliyorsa doğru bir tercihtir; zaten rahatsanız kötü bir tercihtir.
KV önbelleği
Zor yarı — bir makinenin 4k'de yeterli, 128k'de ise yetersiz olup olmadığını belirleyen kısım budur. Katmanlara ve KV head sayısına bağlıdır, modelin ne kadar büyük olduğuna değil.
| Model | Token başına | 4k bağlam | 8k bağlam | 32k bağlam | 128k bağlam |
|---|---|---|---|---|---|
| Llama 3.1 8B | 128 KB | 0.5 GB | 1.0 GB | 4.0 GB | 16.0 GB |
| Gemma 3 27B | 496 KB | 1.9 GB | 3.9 GB | 15.5 GB | 62.0 GB |
| Llama 3.3 70B | 320 KB | 1.3 GB | 2.5 GB | 10.0 GB | 40.0 GB |
| DeepSeek V3 671B-A37B (MoE) | 70 KB | 0.3 GB | 0.5 GB | 2.2 GB | 8.8 GB |
| Llama 3.1 405B | 504 KB | 2.0 GB | 3.9 GB | 15.8 GB | 63.0 GB |
Son sütunu ilkinden önce okuyun. 4k bağlamda önbellek, buradaki her modelde yuvarlama hatası düzeyindedir; 128k'de ise 4-bit'teki bir 70B modelin ağırlıklarından daha büyüktür. DeepSeek V3 istisnadır, çünkü latent attention mekanizması önbelleği tasarım gereği sıkıştırır — listedeki en büyük model olmasına rağmen uzun bağlamda kullanılabilir olmasının nedeni budur.
Tahminlerin nerede yanlış gittiği
Önbelleği parametre sayısından ölçeklendirmek. En yaygın hata, ve yukarıda gösterilen de budur. 27B bir model, 70B bir modelden daha fazla önbelleğe ihtiyaç duyabilir.
4-bit ağırlıkların 4-bit önbellek anlamına geldiğini varsaymak. Öyle değildir. AWQ ve GPTQ yalnızca ağırlıkları nicemler; FP8 KV'yi açıkça etkinleştirmediğiniz sürece önbellek FP16 olarak kalır. 4-bit ve 128k bağlamda 70B bir model, 35 GB ağırlık ve 40 GB önbellek demektir.
Tek bir istek için boyutlandırmak. Önbellek, eşzamanlı dizi başınadır. Sekiz kullanıcıya aynı anda hizmet vermek, önbelleğin sekiz katını gerektirir — bkz. aşağıda.
Ek yükü unutmak. Aktivasyonlar, CUDA bağlamı ve ayırıcı parçalanması gerçektir. %15, kasıtlı olarak temkinli bir paydır; bunu tamamen görmezden gelmek, “sığan” bir modelin yüklenmemesine yol açan şeydir.
Kartlar arasındaki toplam VRAM'ı toplamak. Dört adet 24 GB'lık kart, tek bir 96 GB'lık kart değildir. Tensor parallelism bir modeli bunlar arasında bölebilir, ama bu durumda her katman bağlantı üzerinden senkronize olur — bkz. NVLink rehberi.
Bir MoE'yi aktif parametrelerine göre boyutlandırmak. DeepSeek V3, token başına 37B'yi etkinleştirir, ama belleğe 671B'nin tamamını yüklemeniz gerekir. Aktif parametreler hızı öngörür; toplam parametreler ise modelin hiç yüklenip yüklenemeyeceğini belirler.
Çözümlü örnekler
Gereken toplam bellek — ağırlıklar artı önbellek artı ek yük — 8k bağlamda ve tek istekte. Bu, yapılandırıcının katalogdaki her yapılandırma için yaptığı hesabın aynısıdır.
| Model | BF16 / FP16 | FP8 | 4-bit (AWQ, GPTQ) | Sığan en küçük düğüm |
|---|---|---|---|---|
| Llama 3.1 8B | 20 GB | 10 GB | 6 GB | NVIDIA L4 |
| Mistral Small 24B | 57 GB | 28 GB | 15 GB | NVIDIA L4 |
| Gemma 3 27B | 67 GB | 33 GB | 20 GB | NVIDIA L4 |
| Qwen 3 32B | 76 GB | 38 GB | 21 GB | NVIDIA L4 |
| Llama 3.3 70B | 164 GB | 82 GB | 43 GB | 2 × NVIDIA L4 |
| Mixtral 8×22B (MoE) | 326 GB | 163 GB | 83 GB | 4 × NVIDIA L4 |
| Qwen 3 235B-A22B (MoE) | 542 GB | 271 GB | 137 GB | 8 × NVIDIA L4 |
| DeepSeek V3 671B-A37B (MoE) | 1,544 GB | 772 GB | 386 GB | 8 × NVIDIA A100 PCIe |
| Llama 3.1 405B | 936 GB | 468 GB | 237 GB | 10 × NVIDIA L4 |
Son sütun, modeli 4-bit ve 8k bağlamda barındıran, katalogumuzdaki en ucuz düğümdür; bellek bant genişliğinin izin verdiği tek akışlı üretim hızıyla birlikte gösterilir. İşlem hacmi rakamları kasıtlı olarak muhafazakârdır ve yayımlanmış ölçümlere göre kalibre edilmiştir — bunları bir söz değil, bir taban olarak değerlendirin.
Birden fazla isteğe hizmet vermek
Bir demo için boyutlandırılmış bir makinenin bir ürüne hizmet veremeyen bir makineye dönüştüğü nokta burasıdır. Ağırlıklar bir kez ödenir; önbellek ise eşzamanlı dizi başına ödenir.
| Eşzamanlı istekler | 4k bağlam | 8k bağlam | 32k bağlam |
|---|---|---|---|
| 1 istek | 42 GB | 43 GB | 52 GB |
| 4 istek | 46 GB | 52 GB | 86 GB |
| 16 istek | 63 GB | 86 GB | 224 GB |
| 64 istek | 132 GB | 224 GB | 776 GB |
Ne yaparsanız yapın, Llama 3.3 70B 4-bit'te 35 GB ağırlık demektir. O tabloda 35 GB'ın üzerindeki her şey önbellektir. “Dizüstümde sorunsuz çalıştı” ile “üretimde çöktü” ifadelerinin aynı kartta aynı model olmasının nedeni budur.
--max-model-len değerini gerçekte sunduğunuz bağlamla sınırlayın: vLLM, önbelleği beyan edilen maksimum için ayırır, bu yüzden siz 8k sunarken 128k beyan etmek, ihtiyacınız olan belleğin on altı katını çöpe atmak demektir.
Bunun anlamı hangi makine
Yukarıdakilerin tamamından çıkan, önem sırasına göre üç pratik kural.
- Mümkün olduğunda tek kart, birden fazla karttan iyidir. Sharding yok, katmanlar arasında senkronizasyon yok, düşünülecek bir ara bağlantı yok. Modeliniz, kullandığınız bağlamda tek bir karta sığıyorsa, o kartı alın.
- Gerçek bağlamınıza ve gerçek eşzamanlılığınıza göre boyutlandırın, modelin ilan edilen maksimumuna göre değil. İlan edilen maksimum bir yetenektir, bir zorunluluk değil.
- Sharding yapmanız gerektiğinde NVLink'i tercih edin. Dört PCIe kart arasında bölmek işe yarar; dört NVLink kart arasında bölmek de işe yarar ve belirgin şekilde daha hızlıdır. Bir sonraki rehber, tam olarak bu farkın ne zaman parasına değdiğini anlatır.
Yapılandırıcı, bu hesaplamayı 41 yapılandırmanın tamamına karşı canlı olarak çalıştırır: bir model, bir hassasiyet ve bir bağlam uzunluğu seçin; size hangi düğümlerin bunu barındırdığını, hangilerinin tek bir kartta barındırdığını ve her birinin aylık maliyetinin ne olduğunu söyler. Bu sayfadaki formülü kullanır, yani hesabımıza katılmıyorsanız artık tam olarak nerede olduğunu söyleyebilirsiniz.
Kendi modelinizi kiraladığımız her makineye karşı kontrol edin.
Yapılandırıcı, siz bir şey ödemeden önce yukarıdaki hesabı 41 yapılandırmanın tamamı için yapar.
Diğer rehberler
- Boyutlandırma · 7 dk
NVLink mi PCIe mi: işiniz için hangisi gerekli
Kartlar arası bağlantının işlem hacminizi ne zaman belirlediği, ne zaman değiştirmediği ve yanlış düğüme ödemeden önce hangi durumda olduğunuzu nasıl anlayacağınız.
Rehberi okuyun - Boyutlandırma · 9 dk
Görsel ve video modelleri için kart seçimi
FLUX, SDXL, SD 3.5 ve Wan 2.1'in VRAM ihtiyacı, kataloğumuzdaki hangi kartın karşıladığı ve sığan en ucuz seçeneğin neden nadiren kiralanacak model olduğu.
Rehberi okuyun - Boyutlandırma · 10 dk
Nicemleme biçimi seçimi
AWQ, GPTQ, GGUF ve FP8'in bellek, hız ve kalitede birer birer maliyeti — ve en küçük ağırlıklara sahip formatın neden nadiren en küçük modeli verdiği.
Rehberi okuyun