Nunchaku Lite: استدلال رباعي البتات لنماذج الانتشار في المكتبة "ديفيوزرز"
Hugging Face
Baidu
Nunchaku هي طريقة تكثيف (الكمية) تسمى SVDQuant (W4A4) لمحولات الانتشار. يتيح تكامل Nunchaku Lite الجديد تحميل نقاط التفتيش المكثّفة مباشرة عبر from_pretrained() في المكتبة "ديفيوزرز"، دون الحاجة إلى محرك منفصل. تزداد سرعة التوليد حتى 1.8 مرة، وتنخفض ذروة استهلاك الذاكرة الافتراضية بنسبة تصل إلى 50%.
أعلنت Hugging Face في مدونتها عن دمج طريقة التكميم Nunchaku (القائمة على SVDQuant) في مكتبة Diffusers. تعمل SVDQuant مع الأوزان والتنشيطات ذات 4 بت (W4A4)، وتعالج القيم الشاذة عن طريق نقلها إلى الأوزان مع الاحتفاظ بفرع منخفض الرتبة صغير ذي 16 بت. كان محرك Nunchaku الأصلي يتطلب تكاملاً منفصلاً لكل بنية. يحل Nunchaku Lite هذه المشكلة عن طريق استبدال وحدات nn.Linear في نموذج الانتشار بطبقات خطية خاصة تحتوي على نوى CUDA (svdq_w4a4 للحسابات الرئيسية و awq_w4a16 لطبقات التطبيع). يتم تحميل نقطة التحقق عبر استدعاء from_pretrained() القياسي، ويتم تخزين إعدادات التكميم في ملف config.json للنموذج. يوفر Nunchaku Lite زيادة في السرعة تبلغ حوالي 30% وتقليلاً في استخدام VRAM يصل إلى 50% مقارنة بـ BF16. مع torch.compile، يصل التسريع إلى 1.8x. تدعم الطريقة وحدات معالجة الرسوميات Blackwell (NVFP4) و Turing/Ampere/Ada (INT4). لتكميم النماذج الخاصة، تُقدَّم مجموعة أدوات diffuse-compressor التي تحدد أهداف التكميم تلقائياً وتُغلف النتيجة بتنسيق Diffusers.
المصدر: Hugging Face blog —
الأصلي
