ACE-Step: نموذج أساسي لتوليد الموسيقى

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

موارد الحوسبة المستخدمة في هذا البرنامج التعليمي هي بطاقة RTX 4090 واحدة.
تم تطوير ACE-Step-v1-3.5B بشكل مشترك بين شركة الذكاء الاصطناعي StepFun ومنصة الموسيقى الرقمية ACE Studio وتم فتح المصدر له في 7 مايو 2025. يمكن للنموذج توليف ما يصل إلى 4 دقائق من الموسيقى في 20 ثانية فقط على وحدة معالجة الرسومات A100، أي أسرع بـ 15 مرة من خط الأساس القائم على LLM، مع تحقيق تماسك موسيقي متفوق ومحاذاة غنائية من حيث المقاييس اللحنية والتوافقية والإيقاعية. علاوة على ذلك، يحافظ النموذج على التفاصيل الصوتية الدقيقة، مما يتيح آليات تحكم متقدمة مثل استنساخ الصوت، وتحرير الكلمات، وإعادة المزج، وتوليد المسار.
2. الوظائف الأساسية

أنماط وأنواع متنوعة
- يدعم جميع أنماط الموسيقى السائدة، ويمكن إدخاله في أشكال مختلفة مثل العلامات القصيرة/نص الوصف/سيناريوهات الاستخدام
- يمكن تكييف مجموعات الآلات وخصائص الأسلوب تلقائيًا وفقًا لأنواع مختلفة (مثل ساكسفون الجاز القياسي وإيقاع السوينج)
دعم متعدد اللغات
- يدعم إدخال 19 لغة، وتشمل أفضل 10 لغات: 🇺🇸 الإنجليزية، 🇨🇳 الصينية، 🇷🇺 الروسية، 🇪🇸 الإسبانية، 🇯🇵 اليابانية، 🇩🇪 الألمانية، 🇫🇷 الفرنسية، 🇵🇹 البرتغالية، 🇮🇹 الإيطالية، 🇰🇷 الكورية
التعبير الآلي
- يدعم إنشاء الآلات الموسيقية عبر الأنواع، ويمكنه استعادة خصائص جرس الآلات الموسيقية بدقة (مثل رنين دواسة البيانو وضوضاء انزلاق الجيتار)
- إنشاء موسيقى متعددة المسارات مع ترتيبات معقدة، والحفاظ على الانسجام والوحدة الإيقاعية بين الأجزاء
- تتكيف تلقائيًا مع تقنيات العزف على الآلات الموسيقية (مثل اهتزاز الأوتار، وعزف اللسان النحاسي)
التعبير الصوتي
- يدعم أنماط الغناء المتعددة (الغناء الشعبي، بيل كانتو، غناء الأوبرا، وما إلى ذلك)
- القدرة على التحكم في شدة التعبير العاطفي (على سبيل المثال، الغناء المنخفض المكبوت مقابل النغمات العالية المتفجرة)
3. خطوات التشغيل
1. ابدأ تشغيل الحاوية
إذا تم عرض "بوابة سيئة"، فهذا يعني أن النموذج قيد التهيئة. نظرًا لأن النموذج كبير الحجم، يرجى الانتظار لمدة 1-2 دقيقة وتحديث الصفحة.

2. أمثلة الاستخدام
إرشادات الاستخدام
عند استخدام متصفح Safari، قد لا يتم تشغيل الصوت مباشرة ويجب تنزيله قبل التشغيل.
يوفر المشروع لوحات إنشاء متعددة المهام: علامة التبويب Text2Music، علامة التبويب Retake، علامة التبويب Repainting، علامة التبويب Edit وعلامة التبويب Extend.
وظائف كل وحدة هي كما يلي:
علامة تبويب Text2Music
- حقول الإدخال
- العلامات: أدخل العلامات الوصفية أو أنواع الموسيقى أو أوصاف المشهد، مفصولة بفواصل
- كلمات الأغاني: أدخل كلمات الأغاني مع علامات البنية، مثل [الآية]، [الكورس]، [الجسر]
- مدة الصوت: قم بتعيين مدة الصوت الناتج (-1 يعني إنشاء عشوائي)
- إعدادات
- الإعدادات الأساسية: ضبط عدد خطوات الاستدلال ونسبة التوجيه وقيمة البذرة
- الإعدادات المتقدمة: ضبط نوع المجدول، ونوع CFG، وإعدادات ERG والمعلمات الأخرى
- جيل
- انقر فوق الزر "إنشاء" لإنشاء موسيقى استنادًا إلى المحتوى المدخل


توليد النتائج

علامة التبويب إعادة الالتقاط
- تجديد الموسيقى بقيم بذور مختلفة وإنتاج اختلافات طفيفة
- قم بضبط معلمات التباين للتحكم في مدى اختلاف الإصدار الجديد عن الإصدار الأصلي

علامة تبويب إعادة الطلاء
- تجديد مقاطع موسيقية محددة بشكل انتقائي
- حدد وقت البداية والنهاية للجزء المراد تجديده
- حدد مصدر الصوت (text2music أو last_repaint أو upload)

تحرير علامة التبويب
- قم بتعديل الموسيقى الموجودة عن طريق تغيير علامات التبويب أو الكلمات
- يمكنك الاختيار بين وضع "only_lyrics" (الاحتفاظ باللحن الأصلي) أو وضع "remix" (تغيير اللحن)
- التحكم في درجة الحفاظ على الأغنية الأصلية عن طريق ضبط معلمات التحرير

تمديد علامة التبويب
- أضف قطعة موسيقية في بداية أو نهاية الموسيقى الموجودة
- حدد مدة التمديد على الجانبين الأيسر والأيمن
- حدد مصدر الصوت الذي يحتاج إلى التوسع

4. المناقشة
🖌️ إذا رأيت مشروعًا عالي الجودة، فيرجى ترك رسالة في الخلفية للتوصية به! بالإضافة إلى ذلك، قمنا أيضًا بتأسيس مجموعة لتبادل الدروس التعليمية. مرحبًا بالأصدقاء لمسح رمز الاستجابة السريعة وإضافة [برنامج تعليمي SD] للانضمام إلى المجموعة لمناقشة المشكلات الفنية المختلفة ومشاركة نتائج التطبيق↓

معلومات الاستشهاد
شكرًا لمستخدم Github سوبر يانغ نشر هذا البرنامج التعليمي. معلومات الاستشهاد لهذا المشروع هي كما يلي:
@misc{gong2025acestep,
title={ACE-Step: A Step Towards Music Generation Foundation Model},
author={Junmin Gong, Wenxiao Zhao, Sen Wang, Shengyuan Xu, Jing Guo},
howpublished={\url{https://github.com/ace-step/ACE-Step}},
year={2025},
note={GitHub repository}
}