حاسبة حجم تكميم LLM
حجم ملف GGUF = المعاملات × البتات لكل وزن ÷ 8. بالقيمة التي قاسها llama.cpp، 4.89 بت لكل وزن، يبلغ Llama 3.1 8B بتكميم Q4_K_M 4.58 GiB، مقابل 7.95 GiB لـ Q8_0 و14.96 GiB لـ F16 (README الخاص بـ quantize في llama.cpp، رُوجع في 16 أكتوبر 2026).
طريقة الاستخدام
- اختر نموذجًا لملء المعاملات والطبقات ورؤوس KV وبُعد الرأس، أو اكتب قيمك من config.json.
- حدّد طول السياق ودقة ذاكرة KV المؤقتة ونسبة الحمل الإضافي.
- اقرأ الجدول: البتات لكل وزن، وحجم الملف، وإجمالي الذاكرة لكل تكميم. النسبة بجانب الاسم هي الحجم مقارنة بـ F16.
طريقة الحساب
حجم الملف = المعاملات × البتات لكل وزن ÷ 8. تستخدم الأداة البتات الفعلية لكل وزن التي قاسها llama.cpp على Llama 3.1 8B: F16 16.00، Q8_0 8.50، Q6_K 6.56، Q5_K_M 5.70، Q4_K_M 4.89، Q3_K_M 4.00، Q2_K 3.16. المصدر: tools/quantize/README.md في مستودع ggml-org/llama.cpp، رُوجع في 16 أكتوبر 2026.
هذه القيم أكبر من الرقم في الاسم لأن تكميمات K تخزن مقياسًا وحدًا أدنى لكل كتلة أوزان، وتبقى بعض الموترات مثل التضمينات وطبقة الإخراج بدقة أعلى. مع 8.03 مليار معامل تعطي المعادلة 4.58 GiB لـ Q4_K_M، كما في README.
الذاكرة = حجم الملف + ذاكرة KV المؤقتة + الحمل الإضافي. ذاكرة KV = 2 × الطبقات × رؤوس KV × بُعد الرأس × السياق × البايتات لكل قيمة، وهي معادلة حاسبة VRAM نفسها. الحمل الإضافي نسبة تحددها للمخازن وبيئة التشغيل.
النتائج بوحدة GiB (2^30 بايت). للنماذج الأخرى مزيج مختلف من الموترات، لذا قد تختلف ملفاتها الفعلية ببضعة في المئة.
حجم الملف حسب النموذج
| التكميم | Llama 3.1 8B | Qwen2.5 32B | Llama 3.1 70B |
|---|---|---|---|
| F16 | 14.96 GiB | 61.02 GiB | 131.41 GiB |
| Q8_0 | 7.95 GiB | 32.42 GiB | 69.82 GiB |
| Q6_K | 6.14 GiB | 25.03 GiB | 53.91 GiB |
| Q5_K_M | 5.33 GiB | 21.75 GiB | 46.84 GiB |
| Q4_K_M | 4.58 GiB | 18.67 GiB | 40.20 GiB |
| Q3_K_M | 3.74 GiB | 15.24 GiB | 32.82 GiB |
| Q2_K | 2.95 GiB | 12.05 GiB | 25.95 GiB |
أيها تختار
- Q4_K_M هو الخيار الشائع: نحو 31 في المئة من حجم F16.
- Q5_K_M وQ6_K يستهلكان ذاكرة أكثر من Q4_K_M بنسبة 16 و34 في المئة، ويبقيان أقرب إلى النموذج الأصلي.
- Q8_0 نحو نصف F16، وهو الأقرب إليه في الجودة.
- Q3_K_M وQ2_K يتيحان تشغيل نماذج كبيرة على بطاقات صغيرة، مع خسارة أكبر في الجودة. يذكر README الخاص بـ llama.cpp قيمة الحيرة لكل نوع.
أسئلة شائعة
ما حجم نموذج 7B بتكميم Q4_K_M؟
نحو 0.57 GiB لكل مليار معامل، أي نحو 3.99 GiB لسبعة مليارات. نموذج Mistral 7B v0.3 بعدد 7.25 مليار يبلغ نحو 4.13 GiB.
لماذا يتجاوز Q4_K_M أربعة بتات؟
لأن كل كتلة أوزان تخزن قيم مقياس خاصة بها، وتحتفظ بعض الموترات بدقة أعلى. قاس llama.cpp 4.89 بت لكل وزن على Llama 3.1 8B.
هل يتسع نموذج 70B في 48 GB بتكميم Q4_K_M؟
الملف نحو 40.2 GiB. مع سياق 8,192 رمزًا تضيف ذاكرة KV 2.5 GiB، ومع حمل إضافي 10 في المئة يصل الإجمالي إلى نحو 47 GiB، أي أنه ضيق جدًا.
ما الفرق عن حاسبة VRAM للمعالج الرسومي؟
تستخدم معادلة الذاكرة نفسها، لكنها تضع كل أنواع GGUF في جدول واحد بالبتات المقيسة لكل وزن لتقارنها بنظرة.