Loading blog posts...
Loading blog posts...
جاري التحميل...

يمكن لبطاقة GPU استهلاكية واحدة أو جهاز Mac حديث بمعالج Apple Silicon إجراء ضبط دقيق لنموذج AI مفيد. عملياً، يتراوح الحد الأعلى عادةً بين 3 و14 مليار معلمة، وتحقق نماذج 8 مليارات معلمة أفضل توازن لمعظم الأجهزة المنزلية.
تحقق من ذاكرة GPU قبل تنزيل النماذج أو تثبيت أدوات التدريب. الرقم المهم هو ذاكرة VRAM المخصصة على أجهزة NVIDIA، أو الذاكرة الموحدة المتاحة على Apple Silicon.
| الذاكرة المتاحة | حجم النموذج الواقعي | التقييم العملي |
|---|---|---|
| نحو 6 GB | من 3 إلى 4 مليارات معلمة | مناسب للمهام المحددة والتجارب الأولى |
| نحو 10 GB | من 7 إلى 8 مليارات معلمة | أفضل توازن لمعظم الأجهزة المنزلية |
| من 16 إلى 20 GB | من 12 إلى 14 مليار معلمة | قدرات استدلال أفضل، لكن التدريب أبطأ |
| أكثر من 20 GB | 27 مليار معلمة أو أكثر | ممكن، لكن التكلفة ومدة التدريب ترتفعان بسرعة |
تفترض هذه الأرقام استخدام QLoRA، الذي يحمّل النموذج الأساسي بدقة 4-bit ويدرّب محولاً صغيراً. أما التدريب بالدقة الكاملة فيحتاج إلى ذاكرة أكبر بكثير.
يمكن لبطاقة رسومية بذاكرة 6 GB التعامل مع نموذج 3B، لكن هامش الذاكرة سيظل ضيقاً. ستحتاج غالباً إلى تقليل طول التسلسل، واستخدام دفعات صغيرة، وتفعيل حفظ نقاط تدرج الحسابات (Gradient Checkpointing).
تستطيع بطاقة GPU بذاكرة VRAM تتراوح بين 10 و12 GB عادةً تشغيل نموذج 7B أو 8B مكمّم. يمنحك هذا النطاق قدرة كافية لاتباع التعليمات بشكل مفيد، من دون أن تتحول كل تجربة إلى مهمة تستمر طوال الليل.
تحتاج الذاكرة الموحدة في أجهزة Apple إلى حذر إضافي. فنظام التشغيل والتطبيقات والنموذج وعملية التدريب تستخدم جميعها الذاكرة نفسها. لذلك، لا يخصص جهاز Mac بذاكرة 16 GB كامل هذه السعة للتدريب.
Important
أغلق المتصفحات والحاويات وقواعد البيانات المحلية والأجهزة الافتراضية وتطبيقات المحادثة قبل بدء التدريب. فقد تستهلك عدة غيغابايت وتتسبب في فشل إعداد كان سيعمل لولا ذلك.
لا يمكن لذاكرة RAM أن تحل محل ذاكرة GPU بالكامل. تستطيع بعض الأدوات نقل طبقات من النموذج إلى RAM، لكن عمليات نقل البيانات تجعل التدريب أبطأ بكثير.
ابدأ بحساب تقريبي لحجم أوزان النموذج:
| تنسيق الأوزان | مساحة التخزين التقريبية لكل معلمة | حجم أوزان نموذج 8B |
|---|---|---|
| فاصلة عائمة بدقة 32-bit | 4 بايت | نحو 32 GB |
| فاصلة عائمة بدقة 16-bit | 2 بايت | نحو 16 GB |
| تكميم 8-bit | 1 بايت | نحو 8 GB |
| تكميم 4-bit | 0.5 بايت قبل النفقات الإضافية | بين 5 و7 GB تقريباً في الاستخدام الفعلي |
ملف الأوزان الخام ليس سوى جزء من المتطلبات. يحتاج التدريب أيضاً إلى ذاكرة للتفعيلات، والتدرجات، ومعلمات المحول، والمخازن المؤقتة، والدفعة الحالية.
لهذا السبب، لا يمكن تشغيل نموذج 8B بأوزان 16-bit بشكل مريح على GPU بذاكرة 16 GB. فأوزانه وحدها تستهلك نحو 16 GB قبل أن يبدأ التدريب أصلاً.
يخزّن التكميم (Quantization) أوزان النموذج باستخدام عدد أقل من البتات. يحتفظ QLoRA عادةً بالنموذج الأساسي المجمد بدقة 4-bit، بينما يستخدم دقة أعلى عند الحاجة في حسابات المحول.
قد يؤثر طول التسلسل في استهلاك الذاكرة أكثر مما تتوقع. فتدريب النموذج على أمثلة بطول 4,096 رمزاً قد يستهلك ذاكرة أكبر بكثير من التدريب على أمثلة بطول 512 رمزاً، رغم أن النموذج نفسه لم يتغير.
لحجم الدفعة تأثير مشابه. عادةً ما يساعد تقليل حجم الدفعة لكل جهاز واستخدام تراكم التدرجات على توفير الذاكرة، مع الحفاظ على دفعة فعلية أكبر.
Tip
إذا فشل التدريب بفارق بسيط عن الذاكرة المتاحة، فابدأ بتقليل طول التسلسل. غالباً ما تهدر الحشوات الطويلة والأمثلة الكبيرة ذاكرة أكثر من محول LoRA نفسه.
مساحة القرص مهمة أيضاً. قد تخزّن عملية التشغيل المحلية النموذج الأساسي، وذاكرة التكميم المؤقتة، ومجموعة البيانات، ونقاط تحقق المحول، والسجلات، والناتج المدمج. خصص مساحة تعادل أضعاف حجم النموذج الذي نزّلته إذا كنت ستحفظ نقاط التحقق باستمرار.
يمكنك منع امتلاء قرص SSD صغير أثناء الاختبارات المتكررة عبر الاحتفاظ بأفضل نقطة تحقق فقط.

تخيل النموذج الأساسي كمصفوفة كبيرة مجمدة، ومحول LoRA كتصحيح صغير يوضع بجانبها. في معظم عمليات LoRA، لا يعيد التدريب كتابة الأوزان الأصلية للنموذج الأساسي.
يضيف LoRA، أو التكيف منخفض الرتبة (Low-Rank Adaptation)، مصفوفات صغيرة قابلة للتدريب إلى طبقات محددة في النموذج. تتعلم هذه المصفوفات كيف ينبغي للنموذج تعديل إجاباته لتقترب من أمثلة التدريب.
غالباً ما يقل حجم المحول الناتج عن 1 بالمئة من حجم النموذج الأساسي. يمكن للفريق الاحتفاظ بنموذج أساسي واحد وتحميل محولات مختلفة لردود الدعم، أو مراجعة الكود، أو تصنيف المستندات، أو أي مهمة محددة أخرى.
هذا الفصل يجعل التراجع سهلاً أيضاً. أزل المحول، وسيعود سلوك النموذج الأصلي.
يجمع QLoRA بين LoRA ونموذج أساسي مكمّم بدقة 4-bit. وقد ينخفض حجم نموذج يشغل نحو 16 GB بصيغة 16-bit إلى ما بين 5 و7 GB تقريباً بعد التكميم إلى 4-bit، مع احتساب النفقات الإضافية للتنسيق.
توفر الذاكرة المحررة مساحة لأمثلة أطول، أو رتب محول أكبر، أو نموذج أساسي أكثر قدرة. وقد تكون هذه التغييرات أهم من الاحتفاظ بكل وزن مجمد في النموذج الأساسي بدقة 16-bit.
يُعد QLoRA نقطة البداية العملية لبطاقات GPU الاستهلاكية. ويظل LoRA القياسي بدقة 16-bit خياراً مناسباً عند توفر ذاكرة كافية، وعندما تكون سرعة التدريب أهم من تشغيل نموذج أكبر.
يحدّث الضبط الدقيق الكامل كل معلمة في النموذج. لذلك يحتاج إلى ذاكرة أكبر بكثير، وينتج نقاط تحقق كبيرة، كما يزيد خطر الإضرار بالسلوك العام للنموذج عند استخدام مجموعة بيانات محدودة.
في أول مشروع ضبط دقيق محلي، نادراً ما يستحق الضبط الكامل التكلفة. يجعل LoRA وQLoRA التجارب الفاشلة أقل تكلفة وأسهل في المقارنة.
نزّل النموذج بتنسيق safetensors أو بتنسيق يدعمه MLX من Apple مباشرةً. لا تبدأ بملف GGUF المستخدم في تطبيقات المحادثة المكتبية.
| التنسيق | الغرض الأساسي | مناسب لعمليات الضبط الدقيق الشائعة |
|---|---|---|
safetensors | تخزين النماذج لأدوات Transformers والأدوات المرتبطة بها | نعم |
تنسيق نموذج MLX | التدريب والاستدلال على Apple Silicon | نعم |
GGUF | استدلال فعال عبر التطبيقات المبنية على llama.cpp | لا، في الغالب |
| نقطة تحقق المحول | تخزين تغييرات LoRA المدرّبة | فقط عند استخدامها مع نموذجها الأساسي |
قد يعمل ملف GGUF بشكل ممتاز داخل واجهة محادثة، لكنه يفشل مع أداة تدريب قياسية. فقد حوّل تكميم الاستدلال الأوزان بالفعل وحزمها لتعمل ضمن بيئة تشغيل مختلفة.
احتفظ بمعرّف النموذج الأصلي بجانب كل محول. يعتمد المحول على بنية النموذج، وأسماء الطبقات، وأداة تقسيم النص إلى رموز، وغالباً على الإصدار الدقيق للنموذج الأساسي.
لا يمكن إرفاق محول دُرّب لنموذج 8B بأمان مع نموذج 8B آخر غير مرتبط به. تساوي عدد المعلمات لا يعني أن البنية الداخلية للنموذجين متوافقة.
تستخدم أنظمة NVIDIA عادةً Hugging Face Transformers وPEFT وTRL وbitsandbytes. أما أنظمة Apple Silicon، فيمكنها استخدام أمثلة MLX أو أدوات تدريب متوافقة مع MLX.
سهولة إطار العمل لا تغيّر حدود الذاكرة. قد تؤتمت الأدوات التكميم وتحميل نقاط التحقق، لكنها لا تستطيع جعل نموذج 27B عملياً على جهاز لا يكاد يتسع لنموذج 8B.
بالنسبة إلى الفرق التي تبني منظومة محلية أوسع حول النموذج، تظهر المفاضلات نفسها المتعلقة بالتخزين والصيانة في أدوات الإنتاجية ذاتية الاستضافة.

ابدأ بمجموعة بيانات صغيرة توضّح بدقة السلوك الذي تريد من النموذج تعلمه. عشرون مثالاً ممتازاً أكثر فائدة في الاختبار الأول من آلاف السجلات غير المتسقة.
قد تحتوي مجموعة بيانات بسيطة بأسلوب المحادثة على سجلات مثل هذه:
json{"messages":[{"role":"system","content":"You classify support tickets using one category and one urgency level."},{"role":"user","content":"Payroll exports fail with error 503 for every department."},{"role":"assistant","content":"category: integration_failure\nurgency: high"}]} {"messages":[{"role":"system","content":"You classify support tickets using one category and one urgency level."},{"role":"user","content":"Please add dark mode to the reporting dashboard."},{"role":"assistant","content":"category: feature_request\nurgency: low"}]}
يحدد كل مثال شكل المدخلات وشكل المخرجات المطلوب بدقة. إذا كانت الاستجابة المطلوبة في بيئة الإنتاج تستخدم فئات بحروف صغيرة وسطرين، فيجب أن تتبع كل إجابة تدريبية النمط نفسه.
تجعل الأمثلة المتعارضة المحول يوازن بين سلوكيات غير متوافقة. فإذا وُصفت تذكرة بأنها عالية الأولوية في سجل، ومنخفضة الأولوية في سجل آخر، فسيتعلم النموذج التردد.
أزل الأمثلة المكررة قبل التدريب. فقد تدفع السجلات المتكررة النموذج إلى حفظ الصياغة بدلاً من تعلم نمط القرار العام.
احتفظ بطلبات التحقق خارج مجموعة بيانات التدريب. فالاختبار باستخدام طلبات سبق أن رآها النموذج يقيس قدرته على التذكر، لا قدرته على تعميم السلوك الجديد.
تحتاج مجموعة البيانات أيضاً إلى أمثلة سلبية وأمثلة للحدود الفاصلة. إذا كان على المصنف التمييز بين الأعطال وطلبات الميزات، فأضف تذاكر غامضة تجمع بين لغة التشغيل ولغة المنتج.
يمكن للضبط الدقيق تعليم النموذج حقائق، لأن المحول يغيّر طريقة ربط المدخلات بالمخرجات. لكن مجموعة بيانات صغيرة لا تضمن استرجاعاً دقيقاً، أو تغطية كاملة، أو معلومات محدثة.
تعمل المصطلحات الداخلية الثابتة، وهياكل الاستجابة، وقواعد القرار، والحقائق المتكررة بشكل جيد. أما الأسعار والمخزون والسياسات وحالات الأعطال التي تتغير باستمرار، فمن الأفضل استرجاعها عند وصول الطلب.
قارن النموذج الأساسي بالنموذج المضبوط باستخدام الطلبات نفسها، وإعدادات التوليد نفسها، وتعليمات النظام نفسها. إذا لم تختلف المخرجات في السلوك المستهدف، فلن تجعل سجلات التدريب النظيفة التجربة ناجحة.
استخدم طلب اختبار يتحقق من السلوك الأساسي:
اختبار التصنيف
textClassify this ticket using one category and one urgency level: "Our SSO certificate expires tomorrow and users already see intermittent login failures."
استخدم طلباً آخر للتحقق من بقاء القدرة على التعميم:
اختبار الحالات الفاصلة
textClassify this ticket using one category and one urgency level: "The export works, but finance wants an option to schedule it every Friday."
سجّل المخرجات في جدول تقييم بسيط:
| الطلب | مخرجات النموذج الأساسي | مخرجات النموذج المضبوط | السلوك المتوقع | النتيجة |
|---|---|---|---|---|
| مشكلة شهادة SSO | شرح حر | فئة وأولوية بتنسيق منظم | تنسيق دقيق من سطرين | نعم أو لا |
| طلب جدولة التصدير | تصنيف كعطل | طلب ميزة | قرار صحيح في حالة فاصلة | نعم أو لا |
| طلب عادي لم يظهر سابقاً | إجابة مترابطة | إجابة مترابطة | الاحتفاظ بالقدرات العامة | نعم أو لا |
يتحقق الطلب الأول مما إذا كان المحول قد تعلم التنسيق المطلوب. أما الثاني، فيختبر ما إذا كان قد تعلم الفرق فعلاً بدلاً من حفظ كلمات مثل export.
يحمي الاختبار الثالث من الإفراط في التدريب. فإذا اتبع النموذج الأسلوب الجديد لكنه أصبح متكرراً أو جامداً أو غير مترابط، فهذا يعني أنه ضحّى بقدر كبير من قدراته العامة من أجل المهمة المحددة.
استخدم درجة الحرارة وإعدادات أخذ العينات نفسها في النسختين. وإلا، فقد تبدو اختلافات التوليد العشوائية وكأنها تحسينات ناتجة عن التدريب.
غالباً ما تشير الأخطاء الشائعة إلى مشكلة في البيانات أو إعدادات الذاكرة:
| العَرَض | السبب المحتمل | الإجراء العملي |
|---|---|---|
| خطأ نفاد الذاكرة عند بدء التشغيل | النموذج كبير جداً | استخدم نموذجاً أصغر أو QLoRA بدقة 4-bit |
| فشل بعد عدة دفعات | مثال طويل أو ارتفاع مفاجئ في استهلاك الذاكرة | ضع حداً لطول التسلسل وافحص أحجام السجلات |
| المخرجات المضبوطة تبدو بلا تغيير | إشارة البيانات ضعيفة أو التدريب غير كافٍ | أضف أمثلة أوضح وتحقق من تحميل المحول |
| المخرجات تنسخ إجابات التدريب | مجموعة البيانات صغيرة جداً أو متكررة | أزل التكرارات وقلل شدة التدريب |
| النموذج يتبع الأسلوب لكنه يخطئ في الحقائق | الحقائق قليلة أو غير مستقرة | أضف أمثلة مركزة أو استخدم الضبط مع RAG |
| النتائج تختلف بين الاختبارات | تغيّرت إعدادات أخذ العينات | ثبّت درجة الحرارة والبذرة وتنسيق الطلب |
| تعذر تحميل المحول | النموذج الأساسي غير مطابق | استخدم النموذج الأصلي وإصداره الدقيقين |
هناك نقطة يغفل عنها كثيرون: تأكد من تفعيل المحول فعلياً أثناء الاستدلال. قد ينجح تحميل النموذج الأساسي، لكن نسيان إرفاق المحول ينتج مقارنة تبدو مقنعة لكنها بلا معنى.
احفظ معرّف النموذج الأساسي، وإصدار النموذج، وأداة تقسيم النص إلى رموز، وإصدار مجموعة البيانات، وإعدادات المحول، وطلبات التقييم مع كل تجربة. من دون هذا السجل، يصعب إعادة إنتاج نتيجة جيدة.
استخدم الضبط الدقيق عندما تريد من النموذج أن يجيب بطريقة مختلفة. واستخدم التوليد المعزز بالاسترجاع (Retrieval-Augmented Generation)، أو RAG، عندما يحتاج النموذج إلى معلومات حديثة أو مرتبطة بمصادر محددة داخل الطلب.
| المتطلب | الضبط الدقيق | RAG | النهج المدمج |
|---|---|---|---|
| فرض تنسيق محدد للاستجابة | مناسب جداً | قدرته محدودة | مفيد عندما تتغير الحقائق أيضاً |
| اعتماد مصطلحات المجال | مناسب جداً | مناسب بدرجة متوسطة | فعال غالباً |
| الإجابة اعتماداً على مستندات متغيرة | غير مناسب وحده | مناسب جداً | مناسب جداً |
| إرجاع الاستشهادات | غير مناسب | مناسب جداً | مناسب جداً |
| الاحتفاظ بقواعد ثابتة داخل النموذج | مناسب | ممكن، لكنه يتطلب طلبات طويلة | مناسب |
| تحديث المعرفة فوراً | يتطلب إعادة التدريب | تحديث فهرس المستندات | تحديث الاسترجاع فقط |
يمكن للضبط الدقيق تخزين الحقائق، خصوصاً إذا كانت ثابتة ومتكررة بشكل متسق في الأمثلة. لكن المشكلة تكمن في الصيانة: تصحيح حقيقة تعلمها النموذج أو حذفها يتطلب جولة تدريب أخرى، ولا يضمن محوها بدقة.
يضع RAG المستندات المختارة داخل الطلب عند وقت التنفيذ. وهو يدعم البيانات الحديثة والاستشهادات، لكن نظام الاسترجاع قد يعيد مقاطع غير مرتبطة أو يفشل في العثور على المستند الصحيح.
تحل الطريقتان جانبين مختلفين من النظام نفسه. يمكن للمحول المضبوط فرض بنية الاستجابة والمصطلحات، بينما يوفر RAG الإجراءات الحالية أو سجلات العملاء أو نصوص السياسات.
مساعد الدعم مثال واضح. يمكن للمحول تعليم النموذج إرجاع ملخص ثابت للعطل، بينما يوفر الاسترجاع أحدث حالة للخدمة ومعلومات الحساب.

اختر التدريب المحلي عندما تكون خصوصية البيانات، أو قابلية تكرار التجارب، أو الاستخدام المستمر للمحول أهم من الوقت اللازم للإعداد.
لا تفرض عملية التشغيل المحلية رسوماً محسوبة حسب استخدام GPU، لكن الكهرباء واستهلاك العتاد ووقت الموظفين تظل لها تكلفة.
كذلك، يُبقي الضبط الدقيق المحلي مجموعات البيانات ونقاط التحقق بعيداً عن خوادم التدريب التابعة لجهات خارجية. قد يبسّط ذلك التعامل الداخلي مع البيانات، لكنه لا يلغي الحاجة إلى ضوابط الوصول والتشفير وسياسات الاحتفاظ.
تُعد جلسة مجانية على Google Colab بديلاً مناسباً لجهاز يملك 8 GB من RAM أو لا يحتوي على GPU مدعوم. لكن حدود الجلسات، وتوفر العتاد، واستمرارية التخزين، وانقطاع الاتصال تجعلها أقل قابلية للتوقع من العتاد المحلي.
يصبح استئجار GPU سحابي مفيداً عند الحاجة إلى اختبار نموذج أكبر لفترة قصيرة. قد يكون أقل تكلفة من شراء عتاد لتجربة واحدة، لكن رسوم التشغيل المتكرر وتخزين نقاط التحقق قد تتراكم.
لا يكون الضبط الدقيق المحلي منطقياً عندما تتغير الحقائق المطلوبة يومياً. فنظام استرجاع المستندات أو كتابة طلب أفضل يكون عادةً أقل تكلفة في الصيانة.
كما أنه لا يقدم فائدة كبيرة إذا كان النموذج الأساسي ينفذ المهمة بكفاءة من البداية. جرّب عدة طلبات مباشرة قبل بناء مجموعة بيانات، فأفضل مهمة تدريب هي التي يمكنك تجنبها.
ابدأ من هنا
تحقق من ذاكرة VRAM المتاحة في GPU أو الذاكرة الموحدة في Apple، ثم اختر حجم نموذج واحداً من جدول الأجهزة. اجعل التجربة الأولى على نموذج 8B أو أصغر، إلا إذا كان الجهاز يملك أكثر من 16 GB متاحة.
نتائج سريعة
تجربة متعمقة
تكفي ذاكرة بحجم 6 GB تقريباً لضبط نموذج يتراوح حجمه بين 3B و4B. وتجعل ذاكرة 10 GB تقريباً نماذج 7B و8B خياراً عملياً، بينما تفتح ذاكرة بين 16 و20 GB المجال أمام نماذج 12B إلى 14B.
بالنسبة إلى معظم أجهزة العمل الشخصية، يُعد نموذج 8B المدرّب باستخدام QLoRA الهدف العملي. فهو كبير بما يكفي لإحداث تغييرات مفيدة في السلوك، وصغير بما يكفي لاختباره من دون بنية تحتية متخصصة.
تحدد مجموعة البيانات ما إذا كان المحول سيتعلم مهارة حقيقية أم سيغير نبرة النموذج فقط. قارن مخرجات النموذج الأساسي والمضبوط جنباً إلى جنب، باستخدام طلبات لم تظهر مطلقاً في بيانات التدريب.
اختر نموذجاً يناسب جهازك، وحدد سلوكاً واحداً واضحاً، وتعامل مع الجولة الأولى كتجربة. الهدف ليس بناء نموذج مثالي، بل الحصول على دليل واضح يثبت أن محولاً صغيراً يستطيع تغيير سلوك النموذج عند الطلب.