العودة إلى المدونة

الذكاء الاصطناعي للمبتدئيندليل

هل يمكن تشغيل نموذج 125B على وحدة معالجة رسوميات بسعة 16 غيغابايت؟ حسابات الذاكرة

كم من الذاكرة يحتاجها نموذج مفتوح 125B: الأوزان والتكميم وذاكرة KV المؤقتة في بضعة أسطر من الحساب، ومتى تكون الواجهة البرمجية الطريقة الأبسط لاستخدامه.

بواسطة CheapTokens Teamنُشر في 6 دقيقة قراءة

الغلاف: هل يمكن تشغيل نموذج 125B على بطاقة رسوميات بسعة 16 غيغابايت، حسابات الذاكرة
في هذه الصفحة
  1. الأوزان: المعاملات مضروبة في البايتات
  2. "122B-A10B": أي رقم هو المهم
  3. الفاتورة الثانية: ذاكرة السياق المؤقتة
  4. تقديرك الخاص في اثني عشر سطرًا
  5. متى تكون الواجهة البرمجية الخيار الأبسط

إجابة قصيرة: لا. يحتاج نموذج بـ 125 مليار معامل إلى نحو 62.5 غيغابايت لأوزانه حتى بعد ضغط 4 بت، وبطاقة رسوميات بسعة 16 غيغابايت تستوعب نحو ربع ذلك. لا يزال بإمكانك تشغيله بدفع الباقي إلى ذاكرة النظام أو إلى القرص، لكن البطاقة عندئذ لم تعد هي ما يحدد سير الأمور.

فيما يلي: كيف تحصل على هذا الرقم بنفسك في بضعة أسطر، وماذا يخبرك "122B-A10B" في اسم النموذج حقًا، ومتى يكون إرسال الطلبات إلى واجهة برمجية هو الطريقة الأبسط لاستخدام نموذج كبير.

الأوزان: المعاملات مضروبة في البايتات#

تخيّل النموذج كومة ضخمة من الأرقام تُسمى الأوزان أو المعاملات. للإجابة عليك، يحتاج الحاسوب إلى كلها في الذاكرة السريعة دفعة واحدة. لذا التقدير الأول هو ضرب بسيط: المعاملات بالمليارات × البايتات لكل وزن = غيغابايت. يأخذ الوزن 2 بايت عند 16 بت، و1 بايت عند 8 بت، و0.5 بايت عند 4 بت. هذا كل ما تفعله التكميم: بتات أقل لكل رقم.

خذ نموذجًا من هذه الفئة، Qwen3.5-122B-A10B. صفحته على Hugging Face (تم التحقق منها في 30 أكتوبر 2026) تذكر Apache-2.0 كترخيص، وتنشر الأوزان بصيغتي BF16 وF32، وتذكر الحجم كـ 125 مليار معامل. من أجل 125B:

  • عند 16 بت: 125 × 2 = 250 غيغابايت
  • عند 8 بت: 125 × 1 = 125 غيغابايت
  • عند 4 بت: 125 × 0.5 = 62.5 غيغابايت
  • عند 2 بت: 125 × 0.25 = 31.25 غيغابايت

حتى سطر 2 بت يقارب ضعف البطاقة. وهذه حدود دنيا وليست مجاميع: فهي تستبعد ذاكرة السياق المؤقتة (الأقسام التالية) والحمل الإضافي لبيئة التشغيل نفسها، كما تضيف صيغ التكميم الحقيقية قليلًا فوق ذلك.

ذاكرة أوزان نموذج 125B عند أربع دقات بجانب بطاقة 16 غيغابايت
الأوزان فقط، تقدير: المعاملات × البايتات لكل وزن

اقلب المعادلة لترى ما يمكن لبطاقة 16 غيغابايت استيعابه. عند 4 بت يكون ذلك 16 / 0.5 = 32 مليار معامل، وهذا هو السقف قبل أن يحتاج أي شيء آخر إلى مساحة. جرّب الحساب بنفسك:

خمّن الرقم

كم غيغابايت تأخذ أوزان نموذج 32B عند 4 بت؟

إظهار الإجابة

الإجابة: 16

32 × 0.5 = 16 غيغابايت. تمتلئ البطاقة قبل أن يقرأ النموذج كلمة واحدة من سؤالك، لذا 32B هو السقف لبطاقة 16 غيغابايت والأحجام المريحة أقل من ذلك.

"122B-A10B": أي رقم هو المهم#

يجمع الاسم رقمين. وفقًا لبطاقة النموذج، يمتلك النموذج 122 مليار معامل إجمالًا و10 مليارات نشطة لكل رمز. إنه نموذج خليط الخبراء: بداخله العديد من الشبكات الفرعية المتخصصة الصغيرة، ولكل رمز يوقظ موجّه عددًا قليلًا منها فقط.

تخيّل مكتبة فيها 122 رفًا حيث يرسلك أي سؤال واحد إلى 10 منها. جهدك في القراءة صغير، لكن المكتبة بأكملها يجب أن تبقى داخل المبنى، لأنك لا تستطيع معرفة أي الأرفف ستحتاجها الكلمة التالية.

يذهب الرمز إلى موجّه يختار الخبراء: 10B من 122B تعمل
الحساب يتبع المعاملات النشطة، والتخزين يتبع الإجمالي

إذن: الذاكرة تتبع الإجمالي، والحساب يتبع النشط. عشرة مليارات معامل نشطة تجعل حساب الرمز رخيصًا، لا تخزينه. تعتمد سرعة تشغيل إعداد يحتفظ ببعض الخبراء في ذاكرة النظام أو على القرص على ذاكرتك وقرصك وبرمجياتك. لا يوجد رقم واحد صادق، فاحذر من أي عنوان يقدم واحدًا.

فحص سريع

يُسمى نموذج 122B-A10B. أي رقم يحدد تقريبًا مقدار الذاكرة التي تحتاجها أوزانه؟

إظهار الإجابة

الإجابة: إجمالي المعاملات البالغ 122B

يجب تخزين جميع الخبراء، لأن الموجّه قد يختار أيًا منها للرمز التالي. أما 10B فتخبرك فقط بمقدار العمل الذي يتطلبه رمز واحد.

الفاتورة الثانية: ذاكرة السياق المؤقتة#

الأوزان هي الجزء الثابت. الجزء الآخر ينمو أثناء محادثتك. لتجنب إعادة قراءة المحادثة كاملة لكل رمز جديد، يحتفظ النموذج بملاحظات عن كل رمز رآه بالفعل: ذاكرة KV المؤقتة (المفاتيح والقيم). سياق أطول، ذاكرة مؤقتة أكبر. إذا أردت شرح جانب السياق من الصفر، فهناك دليل منفصل لنافذة السياق.

لكل رمز تأخذ الذاكرة المؤقتة: 2 × الطبقات × رؤوس KV × حجم الرأس × البايتات. لنفترض أن نموذجًا له 48 طبقة و8 رؤوس KV وحجم رأس 128 وذاكرة مؤقتة بـ 16 بت (شكل مفترض، وليس من أي بطاقة نموذج):

  • رمز واحد: 2 × 48 × 8 × 128 × 2 = 196608 بايت، نحو 0.2 ميغابايت
  • 32,768 رمزًا: 196608 × 32768 = 6442450944 بايت، نحو 6.4 غيغابايت
  • 131,072 رمزًا (128K): 196608 × 131072 = 25769803776 بايت، نحو 25.8 غيغابايت

عند 128K تكون هذه الذاكرة المؤقتة وحدها أكبر من البطاقة بأكملها. أرقامك الحقيقية موجودة في config.json الخاص بالنموذج (الطبقات، رؤوس KV، حجم الرأس)، وبعض المعماريات تحافظ على ذاكرة مؤقتة أصغر بكثير، لذا اعتبر هذا هو الطريقة، لا حكمًا على نموذج بعينه.

تُظهر بطاقة Qwen3.5-122B-A10B كيف يبدو الطرف الأكبر: تستخدم أمثلة الخدمة فيها التوازي التنسوري عبر 8 وحدات معالجة رسوميات عند السياق الكامل البالغ 262,144 رمزًا. إذا نفدت الذاكرة، تنصح بتقصير السياق مع الاحتفاظ بـ 128K على الأقل للحفاظ على التفكير، ويؤدي علم vLLM --language-model-only إلى تخطي مشفّر الرؤية لتحرير ذاكرة للذاكرة المؤقتة.

تقديرك الخاص في اثني عشر سطرًا#

اجمع الجزأين معًا:

python
def weights_gb(params_b, bits):
    return params_b * bits / 8

def cache_gb(layers, kv_heads, head_dim, tokens, nbytes=2):
    return 2 * layers * kv_heads * head_dim * nbytes * tokens / 1e9

w = weights_gb(125, 4)                # 4-bit quantization
c = cache_gb(48, 8, 128, 32768)       # example shape, take yours from config.json
print(round(w, 1), round(c, 1), round(w + c, 1))
# 62.5 6.4 68.9
طرفية تعرض سكربت التقدير وهو يطبع 62.5 6.4 68.9
الأوزان 62.5 غيغابايت + الذاكرة المؤقتة 6.4 غيغابايت = 68.9 غيغابايت، قبل الحمل الإضافي لبيئة التشغيل

الآن فحص الواقع. لنفترض أن حاسوبك به 32 غيغابايت من ذاكرة النظام بجانب بطاقة 16 غيغابايت: 16 + 32 = 48 غيغابايت، ولا يزال أقل من 68.9 غيغابايت التي طبعها السكربت. سيتعين على التفريغ أن يصل إلى القرص أيضًا، وستكون تشغّل نموذجًا كبيرًا معظمه من التخزين لا من البطاقة.

متى تكون الواجهة البرمجية الخيار الأبسط#

ليست كل مهمة تحتاج نموذجًا كبيرًا على مكتبك. أي وصف ينطبق عليك؟

اختر حالتك

أيها أقرب إلى حالتك؟

أريد رؤية نموذج يعمل على جهازي

اختر نموذجًا صغيرًا: عند 4 بت، يأخذ نموذج 7B نحو 7 × 0.5 = 3.5 غيغابايت للأوزان، فيتسع لبطاقة 16 غيغابايت مع مساحة لمحادثة طويلة. تعلّم كيف تتصرف النماذج هو أفضل سبب للتشغيل محليًا. انظر أيضًا محلي أم واجهة برمجية لـ DeepSeek.

بضعة آلاف من الطلبات شهريًا، وأريد نموذجًا قويًا

أرسلها إلى واجهة برمجية. تتجنب شراء أو استئجار الذاكرة، ولا شيء لتثبيته، والفاتورة هي فقط الرموز التي تستخدمها فعليًا.

مستندات طويلة أو وكيل يحتفظ بسجل طويل

الذاكرة المؤقتة هي الجزء الذي ينمو، وعلى عتادك الخاص تنافس الأوزان على الذاكرة نفسها. مع واجهة برمجية، نافذة السياق مشكلة شخص آخر: DeepSeek-V4-Flash وGLM-5.3-Flash على CheapTokens تستوعبان 380K و390K رمزًا.

كيف يبدو ذلك عمليًا. لنفترض أن روبوت دعم يلخص 3,000 تذكرة شهريًا، كل منها نحو 2,000 رمز إدخال و400 رمز إخراج. على مدار الشهر يكون ذلك 2000 × 3000 = 6000000 رمز إدخال و400 × 3000 = 1200000 رمز إخراج. على DeepSeek-V4-Flash، يكلف الإدخال $0.015 والإخراج $0.10 لكل مليون رمز، لذا يبلغ الشهر بأكمله $0.21. يعرض الجدول أدناه الحمل نفسه على كل نموذج، مع عمود OpenRouter بجانبه لتتمكن من المقارنة بالإجمالي، الإدخال والإخراج معًا:

النموذج لكل طلب 3,000 طلبات OpenRouter، 3,000 طلبات
GLM-5.3-Flash $0.000056 $0.168 $0.301
DeepSeek-V4-Flash $0.00007 $0.21 $0.588
MiniMax-M2.7 $0.00016 $0.48 $5.76

2,000 رمز إدخال و400 رمز إخراج لكل طلب. الأسعار لكل مليون رمز حالية وتتغير مع تعريفاتنا؛ يعرض عمود OpenRouter أسعارًا مرجعية لنفس حجم العمل.

الطلب نفسه هو استدعاء بنمط OpenAI الذي ستجريه لأي مزوّد. عنوان URL الأساسي هو https://api.cheaptokens.dev/v1، ومعرّف النموذج هو deepseek-ai/DeepSeek-V4-Flash-0731 الكامل:

bash
curl https://api.cheaptokens.dev/v1/chat/completions \
  -H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-ai/DeepSeek-V4-Flash-0731",
    "messages": [{"role": "user", "content": "Summarise this ticket in one sentence: ..."}],
    "max_tokens": 200
  }'

تحمل الرد كتلة usage بأعداد رموز الإدخال والإخراج، لتتمكن من التحقق من التقدير أعلاه مقابل تذاكرك الخاصة بعد أول اثنتي عشرة تذكرة. يمنحك DeepSeek-V4-Flash حتى 32,768 رمز إخراج لكل إجابة بسعر واحد على مدار الساعة، وGLM-5.3-Flash هو الخيار اليومي الأخف مع حتى 8,192. تفاصيل الإعداد في المستندات، وصفحة النموذج هي DeepSeek الرخيص، وقائمة الأسعار الكاملة في صفحة الأسعار.

في المرة القادمة التي يأتي فيها اسم نموذج مع حجم، لديك الآن الخطوات الثلاث: اضرب، أضف الذاكرة المؤقتة، قارن بالبطاقة.