LoRA Training

دليل تدريب LoRA لـ ACE-Step

اضبط ACE-Step دقيقاً بمحولات LoRA مخصصة لتوليد الموسيقى بأسلوبك الفريد.

آخر تحديث: فبراير 2026

ما هو الضبط الدقيق LoRA؟

LoRA (التكيف ذو الرتبة المنخفضة) هو تقنية تتيح ضبط النماذج الكبيرة بكفاءة من خلال تدريب مجموعة صغيرة فقط من أوزان المحول. بالنسبة لـ ACE-Step، هذا يعني أنك تستطيع تعليم النموذج أسلوباً موسيقياً محدداً باستخدام 20-50 مسار مرجعي فقط.

تحضير مجموعة البيانات

البيانات عالية الجودة هي العامل الأهم في تدريب LoRA. يجب أن يكون كل ملف صوتي 30-120 ثانية، آلة واحدة أو مختلطاً بوضوح، ويمثل الأسلوب المستهدف باتساق.

  • 20 عينة على الأقل للتقاط الأسلوب الأساسي
  • 50-100 عينة لتعميم الأسلوب بشكل قوي
  • استخدم أدوات فصل الجذوع لعزل الصوت أو الآلات النظيفة
  • ضع وسوم لكل ملف بتعليقات نصية دقيقة
  • طبّع مستوى الصوت إلى -14 LUFS للاتساق
# Using Demucs for stem separation
pip install demucs
python -m demucs --two-stems=vocals audio/mixed_track.wav

Stem separation with Demucs for cleaner vocal isolation

# Normalize to -14 LUFS using ffmpeg
ffmpeg -i input.wav -filter:a loudnorm=I=-14:TP=-1.5:LRA=11 output.wav

Loudness normalization to -14 LUFS

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

تعمل هذه المعاملات الموصى بها لمعظم LoRAs الأسلوب الموسيقي. اضبط بناءً على حجم مجموعة البيانات وخصوصية الأسلوب المستهدف.

ParameterRecommendedRangeNote
LoRA Rank164–64Higher = more capacity, slower training
LoRA Alpha328–128Usually 2× rank value
Learning Rate1e-45e-5 – 5e-4Lower for small datasets
Batch Size41–16Reduce if OOM errors occur
Epochs50–15020–500Monitor for overfitting
Warmup Steps500–200Stabilizes early training

خطوات التدريب

  1. 1

    تحضير بيانات التدريب

    اجمع 20-100 عينة صوتية تمثل أسلوبك المستهدف. استخدم فصل الجذوع للحصول على إشارة تدريب أنظف. صدّر كـ WAV/FLAC بتردد 44.1 كيلوهرتز.

    # Recommended directory structure:
    dataset/
      audio/
        track_001.wav
        track_002.wav
        ...
      metadata.json
  2. 2

    إنشاء تعليقات نصية

    اكتب تعليقات وصفية دقيقة لكل ملف صوتي: النوع والآلات والإيقاع والمزاج والمقام. جودة التعليقات تؤثر مباشرة على فاعلية LoRA.

    [
      {
        "file": "audio/track_001.wav",
        "caption": "upbeat indie folk, acoustic guitar, female vocals, 120 BPM, C major, energetic"
      },
      {
        "file": "audio/track_002.wav",
        "caption": "melancholic jazz, piano and double bass, slow tempo, 70 BPM, F minor, introspective"
      }
    ]
  3. 3

    تهيئة سكريبت التدريب

    انسخ configs/lora_training_template.yaml إلى configs/my_lora.yaml. اضبط data_dir على مسار مجموعة البيانات وعدّل num_epochs بناءً على الحجم.

    # configs/my_lora.yaml
    model:
      base_model: "ace-step-1.5"
      lora_rank: 16
      lora_alpha: 32
      target_modules: ["q_proj", "v_proj", "k_proj", "out_proj"]
    
    training:
      num_epochs: 100
      batch_size: 4
      learning_rate: 1.0e-4
      warmup_steps: 50
      save_every: 25
    
    data:
      data_dir: "./dataset"
      sample_rate: 44100
      max_duration: 120
  4. 4

    تشغيل التدريب

    نفّذ: python train_lora.py --config configs/my_lora.yaml. راقب منحنيات الخسارة — يجب أن تنخفض خسارة التدريب باطراد دون ارتفاعات مفاجئة.

    python train_lora.py \
      --config configs/my_lora.yaml \
      --data_dir ./dataset \
      --output_dir ./lora_output \
      --num_epochs 100 \
      --batch_size 4 \
      --learning_rate 1e-4 \
      --lora_rank 16
  5. 5

    الاختبار والتكرار

    حمّل نقطة تفتيش LoRA واختبر بمطالبات متنوعة. إذا لم تتطابق النتائج مع الأسلوب المستهدف، زد بيانات التدريب أو الحقب.

    # Load and use your trained LoRA
    python generate.py \
      --prompt "upbeat indie folk with acoustic guitar" \
      --lora_path ./lora_output/checkpoint-100 \
      --lora_weight 0.8

FAQ

التحكم في الأسلوب دون تدريب مع FM9

يتطلب تدريب LoRA 20-50 مساراً مرجعياً ووحدة معالجة رسومات 8GB+ وساعات من الحوسبة. يتيح لك FM9 التحكم في الأسلوب الموسيقي بمطالبات وصفية — بدون تدريب، بدون جمع بيانات، بدون انتظار.

ابدأ الإنشاء مجاناً