GGUF: التنسيق الذي يُحدث ثورة في تنفيذ نماذج الذكاء الاصطناعي محليًا

  • GGUF هو تنسيق موحد يعمل على تحسين كفاءة استدلال نموذج LLM.
  • إنه يوفر التوافق مع أطر عمل متعددة مثل Llama.cpp أو C Transformers.
  • يسمح بمستويات متقدمة من القياس لتقليل الحجم واستهلاك الموارد.
  • يسهل تنفيذ نماذج الذكاء الاصطناعي على وحدات المعالجة المركزية دون فقدان المرونة أو الدقة.

جي جي يو إف

لقد أدى ظهور نماذج لغة الذكاء الاصطناعي إلى تطوير تنسيقات ملفات جديدة تتيح تنفيذًا أكثر كفاءة ومرونة وقابلية للصيانة. هذه هي الطريقة ملفات GGUF، وهو تنسيق يتم تقديمه على أنه الخليفة الطبيعي لـ GGMLتتميز بقدرتها على التكيف مع الاحتياجات الحالية والمستقبلية للذكاء الاصطناعي.

اكتسب هذا التنسيق الجديد أهمية خاصة في البيئات التي تكون فيها الموارد محدودة، مثل أجهزة الكمبيوتر ذات وحدات المعالجة المركزية (CPU) دون تسريع وحدة معالجة الرسومات (GPU) أو أجهزة Edge.. في هذه المقالة، سنقوم بتحليل كل ما يتعلق بملفات GGUF.:ما هي، وكيف تعمل، وما هي المزايا التي تقدمها مقارنة بسابقاتها، وأين يمكننا الحصول عليها. تنسيق يجب أن يعرفه أي شخص مهتم بنماذج الذكاء الاصطناعي.

ما هو تنسيق GGUF؟

جي جي يو إف (تنسيق موحد تم إنشاؤه بواسطة GPT) إنه ملف ثنائي مُحسَّن تم تصميمه خصيصًا لتخزين نماذج اللغة. وتسمح بإدراجها في كل من وحدة المعالجة المركزية ووحدة معالجة الرسومات. إنه تطور مباشر ومحسن لتنسيق GGML (لغة النموذج المُولَّدة بواسطة GPT)، وخاصة فيما يتعلق بالتوافق والمرونة والكفاءة.

كان أحد الدوافع الرئيسية لنشأة أرشيفات GGUF هو حل قيود GGML، والتي كانت تفتقر إلى القدرة على استضافة بيانات تعريفية إضافية، أعاقت التوافق الأمامي وأجبرت المستخدم على إجراء تعديلات يدوية على معلمات معينة.

يتيح GGUF إضافة ميزات جديدة دون انتهاك التوافق مع الإصدارات السابقة. إن هذه القدرة على التوسع تجعلها منصة مثالية لمستقبل التعلم الآلي.

ملفات GGUF

المزايا الرئيسية لملف GGUF

يتميز تنسيق GGUF بعدد من الفوائد التي تجعله جذابًا بشكل خاص للمطورين والباحثين وعشاق الذكاء الاصطناعي:

  • التوافق الموسع: يدعم أطر العمل مثل Llama.cpp، وKobold AI، وLM Studio، وChatbox وغيرها الكثير، ويتكامل بسهولة مع خطوط أنابيب الاستدلال.
  • التركيز على الأجهزة منخفضة الطاقة: مثالي لتشغيل نماذج LLM على وحدات المعالجة المركزية دون الحاجة إلى موارد كبيرة أو وحدات معالجة رسومية، مما يجعلها متاحة لعدد أكبر من المستخدمين.
  • زيادة الكفاءة: من خلال تخزين الأوزان والهياكل بطريقة محسنة، يتم تقليل حجم النموذج وتسريع التحميل والاستدلال بشكل كبير.
  • نمطية: يسمح بتخصيص الاستعلامات ويتجنب التعديلات اليدوية غير الضرورية للمعلمات المعقدة.

يدعم التخطيط الثنائي للملف مستويات متعددة من القياس الكمي، التكيف مع التوازن بين الأداء واستهلاك الموارد والدقة. تجعل هذه الميزة الحل الأمثل لبعض البيئات والأنظمة المحمولة، حيث تكون الطاقة والذاكرة محدودة.

التكميم في GGUF: الضغط دون المساس بالأداء

القياس الكمي هو المفتاح في تنسيق GGUF، لأنه يسمح بتقليل حجم النموذج وتسريع الاستدلال، والتضحية بجزء ضئيل من الدقة. هناك مستويات وأنواع متعددة من التكميم التي يدعمها GGUF، ولكل منها توازنها الخاص بين الضغط والدقة:

  • 2 بت: أقصى قدر من الضغط، مثالي للأجهزة ذات الذاكرة القليلة جدًا، على الرغم من التضحية ببعض الدقة.
  • 4 بت: يعد هذا المخطط واحدًا من أكثر المخططات شيوعًا نظرًا لتوازنه بين الضغط والموثوقية للاستخدامات في العالم الحقيقي.
  • 8 بت: دقة فائقة مع ضغط أقل، تستخدم على نطاق واسع في المهام التي تتطلب نتائج أكثر دقة.

ستوديو إل إم

الأطر والأدوات المتوافقة مع GGUF

واحدة من نقاط القوة العظيمة لـ GGUF هي التوافق مع الأطر المتعددة وأدوات التطوير. وهذه بعض من أبرزها:

  • Llama.cpp: يسمح بتشغيل نماذج LLM على وحدة المعالجة المركزية ووحدة معالجة الرسومات، وهي متوافقة بشكل مباشر مع GGUF.
  • Gradio: مثالي لإنشاء واجهات دردشة رسومية مع نماذج GGUF المتكاملة.
  • ستوديو إل إم y أي شيءLLM: تركز منصات سطح المكتب على استنتاج النموذج المحلي، مع الدعم الكامل لملفات GGUF.

يتيح تكامل GGUF مع هذه البيئات النشر السريع دون الحاجة إلى تكوينات معقدة أو تعديلات تقنية غير ضرورية.

كيف أستخدم ملف GGUF؟

العمل مع نموذج بتنسيق GGUF انها ليست معقدة بشكل خاص، خاصة إذا استخدمنا المكتبات الصحيحة. في Python، باستخدام مكتبة C Transformers، ستكون الخطوات الأساسية هي:

  1. تثبيت المكتبة المحدثة: لتضمين الدعم لـ GGUF.
  2. تحميل النموذج: باستخدام فئة مثل GgufModel، مما يشير إلى نوع النموذج (على سبيل المثال، "اللهب").
  3. تعريف دالة الاستدلال: الذي يتلقى الإدخال من المستخدم، ويستفسر عن النموذج، ويعيد الاستجابة الناتجة.
  4. إنشاء الواجهة: استخدام Gradio كجسر بديهي لكتابة الأسئلة ورؤية الإجابات المولدة في الوقت الفعلي.

لقد أثبتت هذه المنهجية فعاليتها في تنفيذ واجهات العالم الحقيقي مثل برامج الدردشة الآلية ومساعدي التعليمات البرمجية ومولدات النصوص الطبيعية.

أين يمكن تحميل النماذج بصيغة GGUF؟

المصدر الأكثر أهمية للحصول على النماذج بتنسيق GGUF هو مستودع وجوه العناق. ويضم قسمها المتخصص إصدارات محولة من النماذج الشهيرة مثل LLaMA، وGPT-J، وغيرها الكثير.

بدلا من ذلك، بعض تسمح التطبيقات بالتنزيل المباشر للنماذج من الواجهة نفسهاكما هو الحال مع LM Studio، الذي يبحث تلقائيًا عن النماذج ويقوم بتنزيلها في GGUF.  إذا كان لديك بالفعل نموذج بتنسيق GGML أو تنسيق ثنائي قياسييمكنك استخدام أدوات تحويل محددة لتحويله إلى GGUF والاستفادة من فوائده.

القيود والجوانب التي يجب أخذها في الاعتبار

على الرغم من أن GGUF يمثل خطوة كبيرة إلى الأمام، ليس كل شيء على ما يرام. هناك عوامل معينة يجب مراعاتها قبل اعتمادها بالكامل:

  • منحنى التكيف: نظرًا لكونه تنسيقًا جديدًا، فإنه يتطلب بعض التعرف على خصوصياته والأدوات المتوافقة معه.
  • التحويل من النماذج غير المدعومة: قد يتضمن خطوات إضافية لتعديل أو تكييف الملفات الموجودة.
  • الاستدلال على وحدة المعالجة المركزية الأبطأ: على الرغم من إمكانية تحقيق ذلك، إلا أن السرعة ليست قابلة للمقارنة دائمًا بتلك التي تم الحصول عليها باستخدام النماذج غير الكمية على وحدات معالجة الرسومات.

ومع ذلك، ويتم تعويض هذه القيود إلى حد كبير من خلال تنوعها وتوافقها المستقبلي وأفضل ممارسات التطوير.. تم تصميم GGUF للتطور، مما يجعله استثمارًا متوسطًا إلى طويل الأجل لأي متخصص أو متحمس للذكاء الاصطناعي.