Home
Login

أداة مفتوحة المصدر للتدريب اللاحق لنماذج الذكاء الاصطناعي، تدعم طرق تدريب متعددة مثل الضبط الدقيق و LoRA و QLoRA وغيرها.

Apache-2.0Python 9.7kaxolotl-ai-cloud Last Updated: 2025-06-19

Axolotl - أداة تدريب ما بعد النماذج الذكاء الاصطناعي القوية

نظرة عامة على المشروع

Axolotl هي أداة مفتوحة المصدر مصممة خصيصًا لتبسيط عمليات التدريب اللاحق المختلفة لنماذج الذكاء الاصطناعي. يشير التدريب اللاحق إلى أي تعديلات أو تدريب إضافي يتم إجراؤه على نموذج مُدرَّب مسبقًا، بما في ذلك الضبط الدقيق للنموذج بأكمله، والضبط الفعال للمعلمات (مثل LoRA و QLoRA)، والضبط الدقيق الخاضع للإشراف (SFT)، وضبط التعليمات، وتقنيات المحاذاة. تدعم هذه الأداة العديد من هياكل النماذج وتكوينات التدريب، مما يتيح للمستخدمين البدء بسهولة في استخدام هذه التقنيات التدريبية المتقدمة.

الميزات الأساسية

دعم النموذج

  • هياكل نماذج متنوعة: تدعم تدريب مجموعة متنوعة من نماذج Hugging Face، بما في ذلك LLaMA و Pythia و Falcon و MPT و Mistral و Mixtral وغيرها من نماذج اللغة الكبيرة السائدة.
  • طرق تدريب مرنة: تدعم الضبط الدقيق الكامل (Full Fine-tuning) و LoRA و QLoRA و ReLoRA و GPTQ والعديد من طرق التدريب الأخرى.

إدارة التكوين

  • ملفات تكوين YAML: استخدم ملفات YAML بسيطة تحتوي على جميع التكوينات الضرورية مثل المعالجة المسبقة لمجموعة البيانات، وتدريب/ضبط النموذج، والاستدلال أو التقييم.
  • تجاوز CLI: يدعم تجاوز الإعدادات في ملف التكوين عبر معلمات سطر الأوامر.
  • تكوين مرن: يمكن تخصيص معلمات التدريب المختلفة وإعدادات النموذج.

قدرات معالجة البيانات

  • مجموعات بيانات متعددة التنسيقات: يدعم تحميل مجموعات البيانات المحلية و HuggingFace والسحابية (S3 و Azure و GCP و OCI).
  • تنسيقات مخصصة: يمكن استخدام تنسيقات مخصصة أو استيراد مجموعات البيانات المميزة بالفعل.
  • المعالجة المسبقة لمجموعة البيانات: وظائف قوية مدمجة للمعالجة المسبقة للبيانات.

تحسين الأداء

  • تقنيات التحسين المتقدمة: دمج xformers و Flash Attention و Liger Kernel و Rope Scaling وتقنيات التعبئة المتعددة.
  • دعم GPU متعدد: يدعم التدريب على وحدة معالجة رسومات واحدة أو وحدات معالجة رسومات متعددة عبر FSDP أو DeepSpeed.
  • تدريب فعال: مُحسَّن لوحدات معالجة الرسومات NVIDIA (Ampere أو أحدث، يدعم bf16 و Flash Attention) ووحدات معالجة الرسومات AMD.

النشر والمراقبة

  • جاهزية سحابية: يوفر صور Docker وحزم PyPI، ويمكن استخدامه على الأنظمة الأساسية السحابية والأجهزة المحلية.
  • تسجيل النتائج: يدعم تسجيل النتائج ونقاط التفتيش في WandB أو MLflow أو Comet.
  • دعم المراقبة: دمج العديد من أدوات تتبع ومراقبة التجارب.

المتطلبات التقنية

متطلبات الأجهزة

  • NVIDIA GPU (Ampere أو أحدث، لـ bf16 و Flash Attention) أو AMD GPU.
  • ذاكرة GPU كافية لتدريب النموذج.

متطلبات البرامج

  • Python 3.11
  • PyTorch ≥2.4.1
  • حزم التبعيات ذات الصلة.

طريقة التثبيت

التثبيت السريع

pip3 install -U packaging==23.2 setuptools==75.8.0 wheel ninja
pip3 install --no-build-isolation axolotl[flash-attn,deepspeed]

# تنزيل ملفات التكوين النموذجية
axolotl fetch examples
axolotl fetch deepspeed_configs  # اختياري

التثبيت من المصدر

git clone https://github.com/axolotl-ai-cloud/axolotl.git
cd axolotl
pip3 install -U packaging setuptools wheel ninja
pip3 install --no-build-isolation -e '.[flash-attn,deepspeed]'

طريقة Docker

docker run --gpus '"all"' --rm -it axolotlai/axolotl:main-latest

طريقة الاستخدام

سير العمل الأساسي

  1. الحصول على تكوين نموذجي:

    axolotl fetch examples
    
  2. تدريب النموذج:

    axolotl train examples/llama-3/lora-1b.yml
    
  3. تكوين مخصص: قم بتعديل المعلمات في ملف تكوين YAML حسب الحاجة.

هيكل ملف التكوين

يستخدم Axolotl ملفات تكوين YAML للتحكم في عملية التدريب بأكملها، بما في ذلك:

  • اختيار النموذج والمعلمات
  • تكوين مجموعة البيانات والمعالجة المسبقة
  • المعلمات الفائقة للتدريب
  • إعدادات المُحسِّن
  • المراقبة وتسجيل الأحداث

مصفوفة توافق النماذج المدعومة

النموذج fp16/fp32 LoRA QLoRA GPTQ Flash Attn xformers
LLaMA
Mistral
Mixtral-MoE
Pythia
Falcon
Qwen
Gemma

✅: مدعوم ❌: غير مدعوم ❓: لم يتم اختباره

سيناريوهات التطبيق

مجال البحث

  • البحث عن الضبط الدقيق لنماذج اللغة الكبيرة
  • تجارب طرق التدريب الفعالة للمعلمات
  • محاذاة النموذج وأبحاث السلامة

التطبيقات الصناعية

  • تخصيص نماذج على مستوى المؤسسة
  • تدريب نماذج خاصة بالمجال
  • تحسين نماذج وظائف المنتج

التعليم والتدريب

  • تدريس دورات الذكاء الاصطناعي/التعلم الآلي
  • تطوير المشاريع العملية
  • تحسين القدرات التقنية

مزايا المشروع

  1. سهولة الاستخدام: التحكم في عمليات التدريب المعقدة من خلال ملفات تكوين YAML بسيطة.
  2. المرونة: يدعم العديد من هياكل النماذج وطرق التدريب.
  3. الأداء: يدمج أحدث تقنيات التحسين، ويوفر تجربة تدريب فعالة.
  4. قابلية التوسع: يدعم نطاقات تدريب مختلفة من وحدة معالجة رسومات واحدة إلى عقد متعددة.
  5. مفتوح المصدر: ترخيص Apache 2.0، مفتوح المصدر ومجاني للاستخدام بالكامل.