بعد الحصول على نتيجتك الأولى، من السهل أن ترغب في تجربة نماذج أكبر. يمكنك التبديل من 0.5B إلى 7B، لكن الجهاز الأصلي قد لا يكون كافيًا بعد.
عند تحديد الموارد، ميز أولاً بين بعض الأشياء. CPU وGPU يتوليان الحساب، والذاكرة وذاكرة الفيديو تحفظان البيانات أثناء التنفيذ، والقرص يحفظ ملفات النموذج. نجاح تنزيل النموذج يعني فقط أن القرص يحتوي على مساحة كافية — ليمكنه العمل بسلاسة، يعتمد أيضًا على الذاكرة وذاكرة الفيديو وقدرة الحساب. النموذج نفسه، اعتمادًا على الدقة التي يتم تحميلها بها، وطول الإدخال، وعدد الطلبات المعالجة في نفس الوقت، سيؤثر كل ذلك على استخدام الموارد. الاستدلال والتدريب أيضًا لهما متطلبات مختلفة.
لننظر أولاً إلى ما يصلح كل من CPU وGPU فيه، ثم نقدّر مساحة التي سيشغلها معلمات النموذج، للتحضير لاختيار حاسوب محمول أو نموذج سحابي.
يختلف CPU وGPU اختلافًا كبيرًا في نهجيهما للحساب.
صُمم CPU للحساب العام، مع امتلاك كل نواة لقدرات تحكم وحساب مكتملة نسبيًا. يمكنه اتخاذ القرارات والقفز وجدولة المهام بناءً على عملية تنفيذ البرنامج، والتعامل بمرنة مع different types من مهام الحساب.
يستخدم GPU بنية حساب متوازي، تحتوي على عدد كبير من وحدات الحساب يمكنها تنفيذ عدد كبير من مهام الحساب في نفس الوقت. إنه مناسب للتعامل مع مهام ذات نطاقات بيانات كبيرة وتكرار حسابي عالٍ.
تعتمد سرعة معالجة CPU وGPU على نوع المهمة ونطاق الحساب.
للسيناريوهات التي تنطوي على كمية كبيرة من الحكم المنطقي والتحكم في البرنامج وجدولة المهام، يمتلك CPU كفاءة تنفيذ أعلى. المهام مثل تشغيل نظام التشغيل واستعلامات قواعد البيانات مناسبة لـ CPU.
لمهام الحساب المتوازي واسعة النطاق، يمكن لـ GPU تقديم throughput حسابي أعلى. يمكن تقسيم ضرب المصفوفات وعمليات الالتواء في التعلم العميق إلى مهام فرعية متعددة متوازية، يتم تنفيذها في نفس الوقت من قبل وحدات حساب GPU، مما يحسن كفاءة الحساب الإجمالية.
ومع ذلك، تصبح مزايا GPU ذات مغزى فقط عندما يكون نطاق مهام الحساب كبيرًا. عندما يكون حجم البيانات صغيرًا، لا يمكن الاستفادة الكاملة من موارد حساب GPU، ويجلب نقل البيانات وجدولة المهام بين CPU وGPU أيضًا تكاليف إضافية. في هذه الحالة، قد يكون استخدام CPU أكثر كفاءة.
تشمل تكاليف CPU وGPU ليس فقط أسعار شراء الأجهزة، بل أيضًا استهلاك الطاقة أثناء التشغيل، فضلاً عن تكاليف الاستخدام والصيانة اللاحقة.
فيما يتعلق بشراء الأجهزة، CPU هو المعيار — الخوادم العادية والحاسوب الشخصي جميعها تحتاج إلى تكوين CPU. تكن GPUs عالية الأداء المستخدمة لتدريب واستدلال الذكاء الاصطناعي باهظة الثمن عادةً. بالإضافة إلى GPU نفسه، يجب عليك أيضًا مراعاة تكاليف الخوادم وذاكرة الفيديو والتخزين وأجهزة الدعم الأخرى.
أثناء التشغيل، يتميز GPU باستهلاك طاقة عالٍ عند تنفيذ حسابات واسعة النطاق. كلما زاد عدد GPUs في الخادم، زاد الضغط على التغذية الكهربائية والتبريد، وستزداد تكاليف الكهرباء والتبريد في مراكز البيانات بشكل كبير.
فيما يتعلق بالاستخدام والصيانة، نظام البيئة CPU ناضج نسبيًا، وصيانة الخوادم الروتينية بسيطة نسبيًا. يتطلب GPU مراعاة توافق التعريفات وأطر الحساب وبيئة الأجهزة. قد تمنع النزاعات بين الإصدارات المختلفة النماذج من العمل بشكل طبيعي. تشمل بيئات GPU المتعددة أيضًا اتصال البيانات بين الأجهزة، مما له متطلبات معينة لاتصالات الأجهزة وتكوين البرنامج.
تسجيل الدخول للانضمام إلى النقاش
لدى التدريب والاستدلال متطلبات موارد مختلفة، ولدى النماذج بأحجام وأنواع مختلفة أيضًا اختلافات كبيرة في موارد الحساب. يجب أن يأخذ اختيار الأجهزة في الاعتبار بشكل شامل نطاق النموذج وحجم البيانات ومتطلبات الأداء واحتياجات الموارد في كل من سيناريوهات التدريب والاستدلال.
في مرحلة تدريب النموذج، عندما يكون نطاق البيانات صغيرًا، يمكن لـ CPU تلبية احتياجات التدريب لمعظم نماذج التعلم الآلي التقليدية، مثل الانحدار الخطي والانحدار اللوجستي والغابات العشوائية. يمكن لبعض الشبكات العصبية الخفيفة أيضًا استخدام CPU للتدريب، ولكن مع زيادة حجم البيانات وتعقيد بنية النموذج، سيزداد وقت التدريب بشكل ملحوظ. إذا كنت بحاجة إلى ضبط النماذج بشكل متكرر، يمكن استخدام GPU لتقليل وقت التدريب.
يتطلب تدريب الشبكات العصبية واسعة النطاق والنماذج اللغوية الكبيرة حساب مصفوفات واسعًا، مع متطلبات عالية لقدرة الحساب وسعة ذاكرة الفيديو. تتطلب النماذج اللغوية الكبيرة بمليارات المعلمات، مثل Qwen، الاعتماد على أجهزة تسريع عالية الأداء مثل GPU للتدريب.
تختلف متطلبات النموذج أثناء الاستدلال عن التدريب. للسيناريوهات ذات نطاقات المعلمات الأصغر وحجم الوصول الأقل، يمكن لـ CPU تلبية احتياجات الاستدلال، ويمكن أيضًا تقليل استخدام الموارد من خلال أساليب مثل التكميم. للنماذج الكبيرة والخدمات عالية التزامن والسيناريوهات التي تتطلب استجابة سريعة، يمكن لـ GPU تقديم كفاءة استدلال أعلى.
لدى كل من CPU وGPU سيناريوهات قابلة للتطبيق، ويجب عليك مراعاة نطاق النموذج وحجم البيانات والطلبات المتزامنة ومتطلبات الأداء وتكاليف النشر بشكل شامل.
يعتمد تقييم متطلبات موارد النموذج بشكل أساسي على مؤشرين: نطاق المعلمات ودقة البيانات.
يُعبّر عن نطاق معلمات النموذج عمومًا بـ B، حيث يمثل 1B مليار معلمات. المعلمات هي القيم الرقمية التي يتعلمها النموذج أثناء التدريب. أثناء الاستدلال، يجب تحميل هذه المعلمات في الذاكرة (CPU) أو ذاكرة الفيديو (GPU). كلما زاد عدد المعلمات، زادت الموارد المستخدمة.
تشير دقة البيانات إلى الصيغة الرقمية التي تستخدمها معلمات النموذج للتخزين والحساب. تشمل الصيغ الشائعة FP32 وFP16 وBF16 وصيغ التكميم مثل INT8 وINT4. لنفس عدد المعلمات، كلما زادت دقة البيانات، زادت الموارد المستخدمة.
تقدير مساحة التخزين لـ 1B معلمات عند دقات مختلفة:
| الدقة | المساحة لكل 1B معلمات (تقريبًا) | الاستخدامات الشائعة |
| FP32 (دقة مفردة) | 4GB | التدريب، الاستدلال عالي الدقة |
| FP16 (نصف الدقة) | 2GB | التدريب، الاستدلال |
| BF16 | 2GB | التدريب، الاستدلال |
| INT8 | 1GB | استدلال مكمم |
| INT4 | 0.5GB | استدلال مكمم منخفض الدقة |
أوزان النموذج = عدد المعلمات × مساحة التخزين لكل 1B معلمات عند تلك الدقة. لنموذج 7B باستدلال دقة FP16، تقدير وزن النموذج: 7 × 2GB ≈ 14GB.
في مرحلة استدلال النموذج، بالإضافة إلى تحميل أوزان النموذج، يلزم موارد إضافية لـ KV Cache وإطار التشغيل والحساب المؤقت.
يُستخدم KV Cache لتخزين المعلومات المتعلقة بالرموز المميزة التي تم حسابها بالفعل أثناء عملية التوليد، لتجنب الحساب المكرر. يعتمد استخدامه على بنية النموذج وطول السياق وعدد الطلبات المتزامنة. كلما طال السياق، زاد المعلومات التي يجب تخزينها؛ وكلما زاد الطلبات المعالجة في نفس الوقت، زاد استخدام KV Cache.
صيغة تقدير استخدام موارد الاستدلال:
الذاكرة المطلوبة لاستدلال CPU ≈ أوزان النموذج + نفقات إطار التشغيل والمؤقت.
ذاكرة الفيديو المطلوبة لاستدلال GPU ≈ أوزان النموذج + KV Cache + نفقات إطار التشغيل والمؤقت.
من هذه الأوزان ساكنة، ونفقات إطار التشغيل ثابتة أساسًا، والمتغير يكمن بالكامل في KV Cache. في سيناريوهات التسلسل الطويل، يجب حجز مساحة KV Cache.
تتجاوز متطلبات موارد مرحلة تدريب النموذج متطلبات مرحلة الاستدلال. بالإضافة إلى تخزين أوزان النموذج، يجب تخزين التدرجات وحالة المُحسّن والنتائج الوسيطة أثناء التدريب أيضًا، مما يتطلب موارد أكثر. تعتمد متطلبات موارد التدريب على نوع المُحسّن واستراتيجية التدريب.
(1) التدريب الكامل للنموذج
لتدريب النموذج الكامل، يجب تخزين أوزان النموذج والتدرجات وحالة المُحسّن والتفعيلات في نفس الوقت. على سبيل المثال التدريب الكامل باستخدام مُحسّن Adam ودقة FP16، لكل 1B معلمات تقريبًا:
| المكون | لكل 1B معلمات |
| أوزان النموذج (FP16) | 2 GB |
| التدرجات (FP16) | 2 GB |
| حالة المُحسّن | 8 GB |
| نسخة FP32 للأوزان | 4 GB |
| المجموع الفرعي (بدون تفعيلات) | 16 GB |
ملاحظة: يحتاج مُحسّن Adam إلى حفظ نسختين من حالات الدقة FP32 (الزخم والتباين)، لذلك تستهلك حالة المُحسّن 8GB؛ تُستخدم نسخة FP32 للأوزان لتحديثات معلمات المُحسّن.
صيغة التقدير الأولية للتدريب الكامل:
ذاكرة الفيديو المطلوبة لتدريب GPU ≈ عدد المعلمات × 16 Byte + نفقات التفعيل
الذاكرة المطلوبة لتدريب CPU ≈ عدد المعلمات × 16 Byte + نفقات التفعيل
يتم تقييد تدريب GPU بسعة ذاكرة الفيديو، بينما يتم تقييد تدريب CPU بسرعة الحساب. على سبيل المثال، نموذج 7B بتدريب FP16 كامل على GPU يحتاج على الأقل 7B × 16 Byte ≈ 112GB ذاكرة فيديو، وستكون الحاجة الفعلية أكبر بعد إضافة التفعيلات.
(2) الضبط الفعال للمعلمات (مثل LoRA)
لضبط النماذج الكبيرة، تُستخدم أساليب الضبط الفعال للمعلمات مثل LoRA (التكيف منخفض الترتيب) بشكل أكثر شيوعًا في الممارسة العملية. لا يُحدّث LoRA جميع معلمات النموذج الأصلية أثناء التدريب؛ بدلاً من ذلك، يُجمّد أوزان النموذج الأصلية ويُدرّب فقط معلمات التكيف منخفضة الترتيب المضافة حديثًا، مما يقلل بشكل كبير من متطلبات ذاكرة الفيديو.
ذاكرة فيديو تدريب LoRA ≈ أوزان النموذج الأساسي + معلمات LoRA + تدرجات معلمات LoRA وحالة المُحسّن + تفعيلات.
من هذه الأوزان، يجب فقط تحميل أوزان النموذج الأساسي ولا تشارك في التحديثات؛ المعلمات المضافة بواسطة LoRA تمثل فقط 0.1%~1% من النموذج الأصلية، وتدرجاتها ونفقات المُحسّن يمكن تجاهلها تقريبًا. تعتمد ذاكرة الفيديو الفعلية بشكل أساسي على أوزان النموذج وطول السياق وحجم الدفعة وأساليب تحسين إطار التدريب. يمكن لضبط LoRA تقليل متطلبات ذاكرة الفيديو بشكل كبير مقارنة بالتدريب الكامل.
على سبيل المثال، بتحميل نموذج 7B بـ FP16، تستهلك أوزان النموذج 4GB. على GPU واحد بذاكرة فيديو 24GB، يمكن عادةً تشغيل ضبط LoRA (مع تعديلات مناسبة لحجم الدفعة وطول السياق). استخدام QLoRA (تكميم النموذج الأساسي إلى INT4) يمكن أن يقلل أكثر استخدام ذاكرة الفيديو، مما يتيح الضبط على أجهزة أكثر تقييدًا.