Monday, 10 August 2026 | التحديث اليومي نظرة ثاقبة للذكاء الاصطناعي، مكتوبة للبناة

ComfyUI GGUF: تشغيل نماذج الانتشار الكبيرة على وحدات معالجة رسومات منخفضة الذاكرة (VRAM)

  • يقلِّص تكميم GGUF نماذج الانتشار الكبيرة مثل FLUX.1 من حجم يقارب 24 غيغابايت إلى نطاق يتراوح بين 5 و12 غيغابايت، ما يسمح بتشغيلها على وحدات معالجة رسومات استهلاكية تتراوح سعة ذاكرتها (VRAM) بين 6 و16 غيغابايت.
  • ثبِّت العقدة المخصصة ComfyUI-GGUF المطوَّرة من قِبل city96، وانسخ ملفات النموذج إلى .gguf المجلد ComfyUI/models/unet/، واستخدم عقدة UnetLoaderGGUF بدلًا من عقدة UNETLoader القياسية.
  • توفر مستويات التكميم Q4_K_S أو Q5_K_S أفضل نسبة بين الجودة وسعة ذاكرة VRAM لمعظم بطاقات الرسومات. أما Q8_0 فهي قريبة جدًّا من فقدان الصلاحية (near-lossless) لكنها توفر أقل قدر من الذاكرة. وتستهدف Q2_K بطاقات الرسومات التي تتراوح سعة ذاكرتها بين 4 و6 غيغابايت، مع وجود تنازلات مرئية في الجودة.
  • يمكن أيضًا تحميل مُشفِّر النصوص T5-XXL الخاص بنموذج FLUX (~9 غيغابايت بصيغة fp16) بصيغة GGUF عبر DualCLIPLoaderGGUF، مما يحرِّر كمية كبيرة إضافية من ذاكرة VRAM.

GGUF هو تنسيق ثنائي طورته مشروع llama.cpp لتخزين أوزان الشبكات العصبية المُكمَّمة. ورغم أنه كان مُوجَّهًا في الأصل لنماذج اللغة الكبيرة (LLMs)، فقد تم تكييفه لاستخدامه مع وحدات UNet في نماذج الانتشار، كما أن العقدة المخصصة التي طوَّرها city96 تتيح دعم هذا التنسيق داخل بيئة ComfyUI. والنتيجة العملية هي أن نموذج FLUX.1-dev، الذي يحتاج عادةً إلى نحو 24 غيغابايت من ذاكرة VRAM عند التشغيل الكامل بدقة BF16، أصبح قابلاً للتشغيل على وحدات معالجة رسومات سعتها 6–8 غيغابايت باستخدام تكميم Q4 — مع جودة صور غالبًا ما تكون غير قابلة للتمييز بالعين المجردة عن تلك الناتجة عن النموذج الكامل الدقة. العقدة المخصصة ComfyUI-GGUF عُقدة مخصصة من قِبل city96 تُوفّر هذه الميزة في بيئة ComfyUI. والنتيجة العملية هي أن نموذج FLUX.1-dev، الذي يتطلب ما يقارب 24 غيغابايت من ذاكرة VRAM عند التشغيل بدقة BF16 كاملة، يصبح قابلاً للتشغيل على وحدة معالجة رسومية (GPU) سعة ٦–٨ غيغابايت باستخدام كمية التكميم Q4 — مع جودة صور غالبًا ما تكون غير قابلة للتمييز بالعين المجردة عن تلك الناتجة عن النموذج ذي الدقة الكاملة.

لماذا يكتسب تنسيق GGUF أهميةً في مجال توليد الصور؟

تُوزَّع نقاط التحقق القياسية (checkpoints) لنماذج الانتشار عادةً بصيغة .safetensors الملفات بتنسيق FP16 أو BF16. أما بالنسبة للنماذج الأقدم (مثل SD1.5 بحجم ~2 جيجابايت، وSDXL بحجم ~7 جيجابايت)، فيمكن التعامل معها بسلاسة على أجهزة متوسطة المواصفات. أما نموذجا FLUX.1 وSD3 فتبلغ أحجام ملفاتهما الكاملة الدقة 24 جيجابايت و16 جيجابايت على التوالي — وهي تتجاوز سقف الذاكرة المخصصة للرسوميات (VRAM) لأي وحدة معالجة رسوميات استهلاكية واحدة.

تُحوِّل تقنية التكمين GGUF كل وزن إلى تمثيل عددي صحيح أصغر. فعلى سبيل المثال، يستخدم الوزن من النوع Q8_0 8 بت بدلًا من 16 بت، ما يقلِّل حجم النموذج تقريبًا إلى النصف دون خسارة ملحوظة في الجودة. أما المتغيرات من النوع Q4 فتستخدم 4 بت لكل وزن، مما يخفض الحجم إلى نحو ربع حجم التنسيق fp16. وتتضاعف هذه التوفيرات بشكل كبير في النماذج التي تحتوي على مليارات المعلمات. ويمكنك استخدام حاسبة ذاكرة VRAM لتقدير كمية ذاكرة وحدة معالجة الرسوميات (GPU) التي سيتطلبها مستوى التكمين المحدد قبل تنزيل أي ملف.

ويحتوي نموذج FLUX.1 أيضًا على مشفر نصي قوي من نوع T5-XXL بحجم كبير (~9.3 جيجابايت بصيغة fp16). وبدمج نموذج UNet المكمَّن بصيغة GGUF مع مشفر T5-XXL المكمَّن بنفس الصيغة، يصبح بإمكان خط أنابيب FLUX.1 الكامل التشغيل على بطاقات رسوميات كانت ستكون عاجزة تمامًا عن تشغيله لولا ذلك. ويمكن تحميل هذين المكوِّنين بصيغة GGUF بشكل مستقل.

تثبيت العقدة المخصصة ComfyUI-GGUF

عبر ComfyUI Manager (مُوصى به)

  1. افتح برنامج ComfyUI ثم انقر على Manager في الشريط الجانبي.
  2. انتقل إلى تثبيت العُقد المخصصة (Install Custom Nodes).
  3. ابحث عن العقدة المخصصة ComfyUI-GGUF.
  4. انقر تثبيت بجانب الإدخال الخاص بالمستخدم city96، ثم أعد تشغيل ComfyUI.

التثبيت اليدوي

انسخ المستودع (clone) إلى دليلك الخاص custom_nodes ثم ثبِّت تبعيته البرمجية بلغة بايثون:

cd ComfyUI/custom_nodes
git clone https://github.com/city96/ComfyUI-GGUF

لينكس / ماك أو إس (بيئة افتراضية venv):

source ComfyUI/venv/bin/activate
pip install -r ComfyUI/custom_nodes/ComfyUI-GGUF/requirements.txt

ويندوز (نسخة ComfyUI المحمولة):

ComfyUIpython_embedspython.exe -m pip install -r ComfyUIcustom_nodesComfyUI-GGUFrequirements.txt

ويندوز (بيئة افتراضية venv):

ComfyUIvenvScriptsactivate.bat
pip install -r ComfyUIcustom_nodesComfyUI-GGUFrequirements.txt

أما التبعية الأساسية فهي حزمة بايثون gguf ، وبعد الانتهاء من التثبيت، أعد تشغيل ComfyUI.

الحصول على ملفات نماذج GGUF

يقوم المستخدم city96 برفع إصدارات GGUF من نموذجي FLUX.1-dev وFLUX.1-schnell إلى منصة Hugging Face ضمن اسم المستخدم city96، لذا ابحث عن city96 FLUX.1-dev-gguf على منصة Hugging Face للعثور على المستودع المقابل. ويحتوي كل مستودع على عدة ملفات، وكل ملف منها يتوافق مع مستوى تكمين مختلف. قم بتنزيل الملف الوحيد الذي يتطابق مع مستوى التكمين المطلوب — ولا حاجة لتنزيل جميع الملفات. .gguf ملفات GGUF الخاصة بمشفر النص T5-XXL متوفرة أيضًا على منصة Hugging Face (ابحث عن

t5-v1_1-xxl-encoder-gguf )، أما مشفر CLIP-L فهو صغير الحجم بما يكفي (~240 ميجابايت) لدرجة أن تكمينه نادرًا ما يكون مجديًّا من حيث الجهد المبذول.كما يقوم أعضاء المجتمع أيضًا برفع إصدارات GGUF من نماذج FLUX المُحسَّنة (fine-tuned) على منصة CivitAI. وينطبق نفس هيكل العُقد والأدلة بغض النظر عن مصدر ملف التنزيل.

كما يقوم أعضاء المجتمع أيضًا برفع إصدارات GGUF من نماذج FLUX المُحسَّنة دقيقًا على منصة CivitAI. وينطبق نفس الهيكل الخاص بالعقدة والمجلدات بغض النظر عن المصدر الذي تم تنزيل الملف منه.

مكان وضع ملفات النماذج

نوع الملفالدليل
نموذج UNet الانتشاري بصيغة GGUF (مثل: flux1-dev-Q4_K_S.gguf)ComfyUI/models/unet/
مشفر نصي بصيغة GGUF (مثل T5-XXL .gguf)ComfyUI/models/clip/
وحدة تحليل التباين المُتغيرة (VAE) (.safetensorsتبقى دون تغيير)ComfyUI/models/vae/

لا يُكمَّن نموذج VAE الخاص بـ FLUX، ويظل في موقعه الطبيعي. أما الاستفادة من تحميل ملفات GGUF فتقتصر فقط على نموذج UNet ومشفر النص.

استخدام عقد تحميل GGUF

بعد تثبيت مكوِّن ComfyUI-GGUF وإعادة تشغيل البرنامج، تظهر عُقد جديدة في مستعرض العُقد. وهذه العُقد تحل محل نظيراتها القياسية في سير عملك — فلا يمكن تحميل ملف .gguf باستخدام العقدة القياسية UNETLoader.

العقدةتحل محلتقبل
UnetLoaderGGUFUNETLoader.gguf نماذج الانتشار
UnetLoaderGGUFAdvancedUNETLoader.gguf مع خيارات إضافية
DualCLIPLoaderGGUFDualCLIPLoaderملفات GGUF أو .safetensors CLIP/T5
CLIPLoaderGGUFCLIPLoaderمشفر CLIP واحد بصيغة GGUF

لتدفق عمل FLUX القياسي: استبدل UNETLoader لـ UnetLoaderGGUF، واستبدل DualCLIPLoader لـ DualCLIPLoaderGGUF إذا كنت تستخدم أيضًا نموذج T5-XXL بتنسيق GGUF. وصِل المخرجات إلى نفس العُقد التالية كما كان من قبل — فأشكال المتجهات متوافقة.

اختيار مستوى التكميم

يعرض الجدول أدناه أرقامًا تقريبية لأوزان وحدة UNet في FLUX.1 فقط. ويجب أن يغطي إجمالي ميزانيتك من ذاكرة VRAM أيضًا وحدة VAE (حوالي ٣٥٠ ميغابايت)، ومشفرات النصوص (٢٤٠ ميغابايت لـ CLIP-L، بالإضافة إلى ما تخصصه لنموذج T5-XXL)، والمتجهات المؤقتة أثناء التوليد. استخدم مرجع احتياجات ذاكرة VRAM جنباً إلى جنب مع هذا الجدول، واستشر دليل بطاقات الرسوميات إذا كنت تقرر أي بطاقة شراء.

التكميمالحجم التقريبي للملف (أوزان UNet في FLUX.1)كمية ذاكرة VRAM المطلوبة عادةًالجودة مقارنةً بـ BF16
BF16 (مرجع)حوالي ٢٤ جيجابايت٢٤ جيجابايت فأكثرمرجع
Q8_0حوالي ١٢ جيجابايتحوالي ١٣ جيجابايتشبيهة جدًّا بالنسخة الأصلية
Q5_K_S~8 غيغابايتحوالي ٨–٩ جيجابايتتدهور ضئيل جدًّا
Q4_K_Sحوالي ٧ جيجابايتحوالي ٧–٨ جيجابايتتدهور طفيف، غالبًا غير ملحوظ
Q4_0حوالي ٦٫٥ جيجابايتحوالي ٧ جيجابايتتدهور طفيف
Q3_K_Sحوالي ٥٫٥ جيجابايتحوالي ٦ جيجابايتمتوسط
Q2_K~4.5 غيغابايت~5 غيغابايتملاحظ بوضوح

نقاط انطلاق عملية: استخدم Q5_K_S أو Q4_K_S للبطاقات ذات سعة ٨–١٢ جيجابايت (أفضل نسبة بين الجودة وسعة VRAM). واستخدم Q3_K_S أو Q2_K للبطاقات ذات سعة ٦ جيجابايت إذا كنت تستخدم أيضًا نموذج T5-XXL مُكمَّن. واستخدم Q8_0 للبطاقات ذات سعة ١٦ جيجابايت عندما ترغب في أعلى دقة ممكنة مع الاحتفاظ بكامل النموذج داخل ذاكرة VRAM.

التجانس بين السرعة والجودة

عند مستوى الكمّنة Q8_0، تكون الاختلافات عن BF16 غير ملحوظة عمليًّا في المقارنات الجانبية. أما عند مستوى Q4_K_S فقد تظهر درجات طفيفة جدًّا من التدهور في التفاصيل الدقيقة والنصوص عند الفحص الدقيق، لكن المخرجات لا تزال مناسبة للإنتاج في معظم حالات الاستخدام. أما Q2_K فيؤدي إلى تبلور مرئي واضحاً وأخطاء ظاهرية أحيانًا، خاصة في الوجوه والتفاصيل الدقيقة — وهو خيار أخيرٌ فقط للأجهزة شديدة القيود الذاكرة.

سرعة التوليد باستخدام تنسيق GGUF قد تكون مماثلة أو أسرع من تحميل نموذج BF16 مع إزاحة بعض العمليات إلى وحدة المعالجة المركزية (CPU offloading)، لأن الأوزان المكمَّنة تقلل الضغط على عرض نطاق الذاكرة. ومع ذلك، إذا كانت بطاقتك الرسومية قادرة على احتواء النموذج الكامل بتنسيق BF16 داخل ذاكرة VRAM دون الحاجة إلى الإزاحة، فستكون هذه الطريقة عمومًا أسرع من استنتاج GGUF. وتظهر ميزة السرعة في GGUF بشكل أوضح عندما يتطلب البديل نقل الطبقات بين ذاكرة VRAM وذاكرة النظام الرئيسية (RAM).

في أجهزة أبل ذات المعالجات المدمجة (macOS)يدعم محرك MPS استنتاج GGUF عبر ComfyUI-GGUF، لكن خصائص الأداء تختلف عن CUDA الخاص بشركة NVIDIA. النتائج وظيفية، لكن سرعة التوليد قد تكون أبطأ من تلك المحققة على بطاقة رسوميات NVIDIA مماثلة. وبفضل بنية الذاكرة الموحَّدة في معالجات أبل المدمجة، يكون الحد العملي لسعة VRAM أعلى من البطاقات الرسومية المنفصلة ذات السعة الاسمية نفسها، لذا قد تتمكن من تشغيل مستويات كمّنة أعلى مما يوحي به الجدول أعلاه.

في بطاقات الرسوميات من AMD (لينكس، ROCm)يعمل استنتاج GGUF عبر محرك ROCm الخاص بـ PyTorch. قم بتثبيت إصدار PyTorch المتوافق مع ROCm لبرنامج ComfyUI قبل تثبيت ComfyUI-GGUF. وتتفاوت الأداء والتوافق حسب جيل البطاقة الرسومية؛ حيث تتمتع بطاقات RDNA 3 (سلسلة RX 7000) بأفضل دعم موثوق.

الأسئلة الشائعة

هل يمكنني تحميل ملف .gguf باستخدام عقدة UNETLoader القياسية؟

لا. إن عقدة UNETLoader القياسية تقبل فقط ملفات .safetensors ، ويجب عليك تثبيت العقدة المخصصة ComfyUI-GGUF واستخدام UnetLoaderGGUF لتحميل .gguf نماذج الانتشار (diffusion models).

هل يجب عليّ تكمين النماذج بنفسي، أم يمكنني تنزيل ملفات مكمَّنة مسبقًا؟

بالنسبة لطرز FLUX.1-dev وFLUX.1-schnell، يوفِّر city96 ملفات GGUF مكمَّنة مسبقًا على منصة Hugging Face تشمل جميع مستويات الكمّنة الرئيسية. قم بتنزيل ملف .gguf المحدد للمستوى الذي تريده — ولا حاجة لتشغيل أي أدوات تكمين بنفسك.

هل يعمل تنسيق GGUF مع نماذج SD1.5 وSDXL؟

من الناحية التقنية نعم، لكن الفائدة ضئيلة. فحجم نموذج SD1.5 هو حوالي ٢ جيجابايت وحجم SDXL هو حوالي ٧ جيجابايت بتنسيق fp16 — وكلاهما يناسبان بسهولة بطاقات الرسوميات الاستهلاكية متوسطة المواصفات. وتكون فائدة تكمين GGUF أكبر ما يكون مع النماذج الكبيرة جدًّا (مثل FLUX.1 وSD3)، حيث تتجاوز أوزانها بدقة كاملة سعة ذاكرة VRAM في معظم البطاقات.

هل يؤدي استخدام نموذج T5-XXL بتنسيق GGUF إلى تدهور ملحوظ مقارنةً بالإصدار الكامل بتنسيق fp16؟

عند مستويي الكمّنة Q8_0 أو Q5_K_S، تكون جودة اتباع التعليمات والترميز النصي مكافئة تمامًا لإصدار fp16. أما المستويات الأدنى من الكمّنة (مثل Q2_K وQ3_K_S) فقد تؤدي أحيانًا إلى تدهور طفيف في اتباع التعليمات المعقدة، لكن هذا التدهور طفيف مقارنةً بالتأثير المماثل على جودة وحدة UNet عند نفس مستوى الكمّنة.

كنت قد صممت تدفق عملي (workflow) خاصتي لنموذج FLUX بدقة كاملة. هل يجب عليّ إعادة بنائه بالكامل؟

لا. استبدل UNETLoader مع UnetLoaderGGUF و(اختياريًّا) DualCLIPLoader مع DualCLIPLoaderGGUF. وتبقى جميع الروابط التالية دون تغيير — مثل عقدة KSampler وفك ترميز VAE والشروط (conditioning). ومخرجات هذه العقدة متوافقة من حيث أشكال المتجهات مع باقي مكونات تدفق عمل FLUX القياسي.

لماذا تستمر واجهة ComfyUI في استنفاد ذاكرة VRAM حتى عند استخدام نموذج مكمَّن؟

إن وحدة UNet بصيغة GGUF ليست سوى جزء من إجمالي استهلاك ذاكرة VRAM. إذ يحمل تدفق FLUX الكامل أيضًا نموذج CLIP-L (حوالي ٢٤٠ ميغابايت)، ونموذج T5-XXL (حتى ٩٫٣ جيجابايت في تنسيق fp16)، ووحدة VAE (حوالي ٣٥٠ ميغابايت)، بالإضافة إلى المخازن المؤقتة أثناء التوليد. وإذا استمرت المشكلة، فقم بتحميل نموذج T5-XXL أيضًا بصيغة GGUF عبر DualCLIPLoaderGGUF، وفكِّر في تفعيل تقنية تقسيم VAE المدمجة في ComfyUI لمرحلة فك الترميز.

بقلم مصطفى إحسان

مصطفى إحسان هو مؤسس ومُحرِّر موقع Convly.ai. وقد طوَّر قاعدة بيانات النماذج الحية للذكاء الاصطناعي الخاصة بالموقع، ومؤشر الأداء السعري الخاص به، بالإضافة إلى الآلات الحاسبة المجانية لاحتياجات ذاكرة VRAM، وتكاليف واجهات برمجة التطبيقات (API)، والاقتصاديات المرتبطة باستضافة النماذج محليًّا. ويكتب مقالاتٍ عن أسعار النماذج، ونتائج الاختبارات المعيارية، والأجهزة اللازمة لتشغيل نماذج الذكاء الاصطناعي محليًّا، مع إعطائه دائمًا الأولوية للأرقام المُقاسة بدقة على الادعاءات التي تطلقها الشركات المصنِّعة.

انتقل إلى الأعلى
Featured on There's An AI For That