Skip to main content
تنشئ أداة music_generate موسيقى أو صوتًا من خلال القدرة المشتركة لتوليد الموسيقى، والمدعومة من ComfyUI وfal وGoogle وMiniMax و OpenRouter.
لا تظهر music_generate إلا عند توفر موفر واحد على الأقل لتوليد الموسيقى: إما إعداد agents.defaults.musicGenerationModel صريح، أو موفر جرى تكوين مصادقته (مثل تعيين مفتاح API).
بالنسبة إلى عمليات تشغيل الوكيل المدعومة بجلسة، تبدأ music_generate كمهمة في الخلفية، وتتتبّع التقدم في سجل المهام، ثم توقظ الوكيل عندما يصبح المقطع جاهزًا كي يتمكن من إبلاغ المستخدم وإرفاق الصوت النهائي. يتبع وكيل الإكمال عقد الرد المرئي للجلسة: رد نهائي تلقائي عند تكوينه، أو message(action="send") عندما تتطلب الجلسة أداة الرسائل. إذا كانت جلسة مقدم الطلب غير نشطة أو فشل إيقاظها، وظل الصوت المولّد غير مضمّن في الرد، فيرسل OpenClaw إجراءً احتياطيًا مباشرًا متكرر التنفيذ بأمان يحتوي فقط على الصوت المفقود.

البدء السريع

1

تكوين المصادقة

عيّن مفتاح API لموفر واحد على الأقل — مثل GEMINI_API_KEY أو MINIMAX_API_KEY.
2

اختيار نموذج افتراضي (اختياري)

3

الطلب من الوكيل

“أنشئ مقطع سينثبوب مبهجًا عن قيادة ليلية عبر مدينة مضاءة بالنيون.”يستدعي الوكيل music_generate تلقائيًا. لا حاجة إلى إدراج الأداة في قائمة السماح.
من دون عملية تشغيل وكيل مدعومة بجلسة (في السياقات المباشرة/المحلية)، تعمل الأداة ضمن السياق نفسه وتعيد مسار الوسائط النهائي في نتيجة الأداة ذاتها.
أمثلة على المطالبات:
استخدم action: "list" لفحص الموفرين/النماذج المتاحة، و action: "status" لفحص مهمة الموسيقى النشطة المدعومة بجلسة:
مثال على التوليد المباشر:

الموفرون المدعومون

يسجّل MiniMax معرّفي موفر يشتركان في النماذج نفسها: minimax للمصادقة بمفتاح API وminimax-portal لـ OAuth. تتبع مراجع النماذج مسار المصادقة (minimax/music-2.6 مقابل minimax-portal/music-2.6)؛ راجع MiniMax. يتيح fal أيضًا fal-ai/ace-step/prompt-to-audio (بتنسيق wav، من دون كلمات، ومن دون مفتاح تبديل للآلات الموسيقية فقط) و fal-ai/stable-audio-25/text-to-audio (بتنسيق wav، وبمطالبة فقط) إلى جانب نموذجه الافتراضي المدعوم من MiniMax. لا يُخرج نموذج Google الافتراضي lyria-3-clip-preview إلا mp3؛ ويدعم lyria-3-pro-preview أيضًا wav. يتيح MiniMax أيضًا music-2.6-free وmusic-cover و music-cover-free. ويتيح OpenRouter أيضًا google/lyria-3-clip-preview.

مصفوفة القدرات

عقد الأوضاع الصريح الذي تستخدمه music_generate واختبارات العقود والمسح المباشر المشترك:

معاملات الأداة

string
مطلوب
مطالبة توليد الموسيقى. مطلوبة لـ action: "generate".
"generate" | "status" | "list"
افتراضي:"generate"
يعيد "status" مهمة الجلسة الحالية؛ ويفحص "list" الموفرين.
string
تجاوز الموفر/النموذج (مثل google/lyria-3-pro-preview، comfy/workflow).
string
كلمات اختيارية عندما يدعم الموفر إدخال الكلمات صراحةً.
boolean
طلب إخراج بالآلات الموسيقية فقط عندما يدعم الموفر ذلك.
string
مسار صورة مرجعية واحدة أو عنوان URL لها.
string[]
صور مرجعية متعددة (حتى 10 لدى الموفرين الداعمين).
number
المدة المستهدفة بالثواني عندما يدعم الموفر تلميحات المدة.
"mp3" | "wav"
تلميح تنسيق الإخراج عندما يدعمه الموفر.
string
تلميح اسم ملف الإخراج.
لا يدعم جميع الموفرين كل المعاملات. مع ذلك، يتحقق OpenClaw من الحدود القطعية، مثل أعداد المدخلات، قبل الإرسال. عندما يدعم موفر المدة لكنه يستخدم حدًا أقصى أقصر من القيمة المطلوبة، يضبط OpenClaw القيمة إلى أقرب مدة مدعومة. تُتجاهل التلميحات الاختيارية غير المدعومة فعليًا مع تحذير عندما يتعذر على الموفر أو النموذج المحدد تطبيقها. تعرض نتائج الأداة الإعدادات المطبقة؛ ويسجل details.normalization أي تحويل من القيمة المطلوبة إلى القيمة المطبقة.
المهل الزمنية لطلبات الموفر هي إعداد للمشغّل فقط. يستخدم OpenClaw agents.defaults.musicGenerationModel.timeoutMs عند تكوينه، ويرفع القيم الأقل من 120000ms إلى 120000ms، وإلا يعيّن مهلة طلبات الموفر افتراضيًا إلى 300000ms.

السلوك غير المتزامن

يعمل توليد الموسيقى المدعوم بجلسة كمهمة في الخلفية:
  • مهمة في الخلفية: تنشئ music_generate مهمة في الخلفية، وتعيد فورًا استجابة بدء/مهمة، ثم تنشر المقطع النهائي لاحقًا في رسالة متابعة من الوكيل.
  • منع التكرار: ما دامت المهمة في حالة queued أو running، تعيد استدعاءات music_generate اللاحقة في الجلسة نفسها حالة المهمة بدلًا من بدء عملية توليد أخرى. استخدم action: "status" للتحقق صراحةً. كما يُزال تكرار الطلب المطابق المكتمل حديثًا لمدة دقيقتين.
  • البحث عن الحالة: يفحص openclaw tasks list أو openclaw tasks show <taskId> حالات الانتظار والتشغيل والحالات النهائية.
  • إيقاظ الإكمال: يحقن OpenClaw حدث إكمال داخليًا مرة أخرى في الجلسة نفسها كي يتمكن النموذج من كتابة المتابعة الموجهة إلى المستخدم بنفسه.
  • تلميح المطالبة: تتلقى دورات المستخدم/الدورات اليدوية اللاحقة في الجلسة نفسها تلميحًا صغيرًا أثناء التشغيل عندما تكون مهمة موسيقى قيد التنفيذ بالفعل، كي لا يستدعي النموذج music_generate مرة أخرى دون تمييز.
  • الإجراء الاحتياطي عند غياب الجلسة: تعمل السياقات المباشرة/المحلية التي لا تحتوي على جلسة وكيل فعلية ضمن السياق نفسه، وتعيد نتيجة الصوت النهائية في الدورة ذاتها.

دورة حياة المهمة

تعرض مهمة الموسيقى الحالات نفسها التي يعرضها سجل المهام العام (راجع المهام في الخلفية للاطلاع على آلة الحالات الكاملة، بما في ذلك timed_out وcancelled وlost). تمر معظم عمليات تشغيل الموسيقى عبر: تحقق من الحالة عبر CLI:

التكوين

اختيار النموذج

ترتيب اختيار الموفر

يجرّب OpenClaw الموفرين بالترتيب التالي:
  1. معامل model من استدعاء الأداة (إذا حدّد الوكيل واحدًا).
  2. musicGenerationModel.primary من التكوين.
  3. إدخالات musicGenerationModel.fallbacks بالترتيب.
  4. الاكتشاف التلقائي باستخدام الإعدادات الافتراضية للموفرين المدعومين بالمصادقة فقط:
    • موفر نموذج النص الافتراضي الحالي أولًا، إذا كان يتيح أيضًا توليد الموسيقى؛
    • بقية موفري توليد الموسيقى المسجلين، مرتبين أبجديًا حسب معرّف الموفر.
إذا فشل موفر، تُجرّب الجهة المرشحة التالية تلقائيًا. وإذا فشلت جميعها، يتضمن الخطأ تفاصيل كل محاولة. عيّن agents.defaults.mediaGenerationAutoProviderFallback: false لاستخدام إدخالات model وprimary وfallbacks الصريحة فقط.

ملاحظات الموفرين

يعتمد على سير العمل، ويتوقف على الرسم البياني المُهيأ إلى جانب تعيين العُقد لحقول الموجّه/الإخراج. يتكامل Plugin ‏comfy المضمّن مع أداة music_generate المشتركة عبر سجل موفّري توليد الموسيقى.
يستخدم نقاط نهاية نماذج fal عبر مسار مصادقة الموفّر المشترك. يستخدم الموفّر المضمّن fal-ai/minimax-music/v2.6 افتراضيًا، ويتيح أيضًا fal-ai/ace-step/prompt-to-audio و fal-ai/stable-audio-25/text-to-audio لطلبات تحويل الموجّه إلى صوت. تقتصر الكلمات ووضع الموسيقى الآلية على نموذج MiniMax؛ أما النموذجان الآخران فيعتمدان على الموجّه فقط.
يستخدم التوليد الدفعي عبر Lyria 3. يدعم المسار المضمّن الحالي الموجّه ونص كلمات اختياريًا وصورًا مرجعية اختياريًا. يُخرج نموذج lyria-3-clip-preview الافتراضي تنسيق mp3 فقط؛ كما يدعم نموذج lyria-3-pro-preview تنسيق wav.
يستخدم نقطة النهاية الدفعية music_generation. يدعم الموجّه والكلمات الاختيارية ووضع الموسيقى الآلية وإخراج mp3، إما عبر مصادقة مفتاح API ‏minimax أو OAuth ‏minimax-portal. ويتيح أيضًا نماذج music-2.6-free وmusic-cover وmusic-cover-free.
يستخدم إخراج الصوت من إكمالات محادثة OpenRouter مع تفعيل البث. يستخدم الموفّر المضمّن google/lyria-3-pro-preview افتراضيًا، ويتيح أيضًا openrouter/google/lyria-3-clip-preview.

اختيار المسار المناسب

  • المسار المشترك المدعوم بموفّر عندما تريد اختيار النموذج، والتبديل الاحتياطي بين الموفّرين، وتدفق المهام/الحالة غير المتزامن المضمّن.
  • مسار Plugin ‏(ComfyUI) عندما تحتاج إلى رسم بياني مخصص لسير العمل أو موفّر ليس جزءًا من قدرة الموسيقى المشتركة المضمّنة.
إذا كنت تصحح سلوكًا خاصًا بـ ComfyUI، فراجع ComfyUI. وإذا كنت تصحح سلوك الموفّر المشترك، فابدأ بـ fal أو Google (Gemini) أو MiniMax أو OpenRouter.

أوضاع قدرات الموفّر

يدعم عقد توليد الموسيقى المشترك إعلانات صريحة للأوضاع:
  • generate للتوليد باستخدام الموجّه فقط.
  • edit عندما يتضمن الطلب صورة مرجعية واحدة أو أكثر.
ينبغي أن تفضّل تطبيقات الموفّرين الجديدة كتل الأوضاع الصريحة:
الحقول المسطحة القديمة مثل maxInputImages وsupportsLyrics و supportsFormat ليست كافية للإعلان عن دعم التحرير. ينبغي للموفّرين إعلان generate وedit صراحةً كي تتمكن الاختبارات الحية واختبارات العقد وأداة music_generate المشتركة من التحقق من دعم الأوضاع بصورة حتمية.

الاختبارات الحية

تغطية حية اختيارية للموفّرين المشتركين المضمّنين (fal وGoogle وMiniMax وOpenRouter):
غلاف المستودع المكافئ، الذي يشغّل ملف الاختبار نفسه:
يستخدم ملف الاختبارات الحية هذا متغيرات بيئة الموفّر المُصدَّرة مسبقًا قبل ملفات تعريف المصادقة المخزّنة افتراضيًا، ويشغّل تغطية كل من generate وedit المُعلن عنها عندما يفعّل الموفّر وضع التحرير. التغطية الحالية:
  • google: ‏generate بالإضافة إلى edit
  • fal: ‏generate فقط
  • minimax: ‏generate فقط
  • openrouter: ‏generate بالإضافة إلى edit
  • comfy: تغطية حية منفصلة لـ Comfy، وليست ضمن الفحص الشامل للموفّرين المشتركين
تغطية حية اختيارية لمسار موسيقى ComfyUI المضمّن:
يغطي ملف Comfy الحي أيضًا مسارات عمل الصور والفيديو في comfy عند تهيئة تلك الأقسام.

ذو صلة