عن المشروع
يُعد PowerInfer بيئة تشغيل للاستنتاج مخصصة لنشر النماذج اللغوية الكبيرة على أجهزة الكمبيوتر الشخصية. يعتمد تصميمه على مبدأ محلية التنشيط (activation locality)، حيث يتم الاحتفاظ بالنيرونات النشطة باستمرار على وحدة معالجة الرسومات (GPU)، بينما تُحسب النيرونات المعتمدة على المدخلات على وحدة المعالجة المركزية (CPU). توجه التنبؤات التكيفية والمشغلات المتناثرة الواعية بالنيرونات هذه التقسيم، مما يقلل من ضغط ذاكرة GPU ونقل البيانات بين CPU وGPU. يمكن للاستنتاج الهجين استخدام جميع موارد VRAM المتاحة أو اتباع حد ميزانية VRAM القابل للتكوين (--vram-budget)، كما يتوفر خيار الاستنتاج المعتمد على CPU فقط.
يستخدم المشروع ملفات PowerInfer GGUF التي تحتوي على أوزان النموذج والتنبؤ، مع أدوات لتحويل مستودعات النماذج وأوزان التنبؤ الأصلية. يدعم التكميم INT4 Q4_0، ووضع الاستنتاج الكثيف المحدود، والاستضافة المحلية، والتوليد المجمّع، وتقييم الارتباك (perplexity evaluation). تتبع أمثلة سطر الأوامر إلى حد كبير استخدام llama.cpp، باستثناء أن --vram-budget يحل محل -ngl في تحميل PowerInfer.
تشمل عائلات النماذج المسجلة Falcon-40B، ومتغيرات Llama 2 القائمة على ReLU، وProSparse Llama 2، وBamboo-7B. التوافق ليس عامًا؛ حيث تنص الأسئلة الشائعة على أنه يجب أن تستخدم النماذج تنشيطات ReLU أو ReGLU أو Squared ReLU، لذا فإن المعماريات غير المدعومة مثل Mistral وLlama الأصلي وQwen غير مغطاة حاليًا.
يتم بناء PowerInfer باستخدام CMake وPython على أنظمة Linux أو Windows بمعالجات x86-64 تدعم AVX2، ويوفر مسارات NVIDIA CUDA وAMD ROCm/HIP بالإضافة إلى التشغيل المعتمد على CPU فقط. يُذكر دعم استنتاج CPU على Apple Silicon لنظام macOS، لكن ملف README يوضح أنه غير محسّن هناك ويبقى استنتاج Metal المتناثر قيد التخطيط. يبلغ ملف README عن نتائج المعايير في اختبارات محددة على RTX 4090 وRTX 2080 Ti ويربط بورقة بحثية لتفاصيل التقييم.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.