Tools

संगीत जनरेशन

music_generate टूल एजेंट को कॉन्फ़िगर किए गए प्रदाताओं — ComfyUI, fal, Google, MiniMax, और आज OpenRouter — के साथ साझा संगीत-जनरेशन क्षमता के माध्यम से संगीत या ऑडियो बनाने देता है।

सेशन-समर्थित एजेंट रन के लिए, OpenClaw संगीत जनरेशन को बैकग्राउंड टास्क के रूप में शुरू करता है, उसे टास्क लेजर में ट्रैक करता है, फिर ट्रैक तैयार होने पर एजेंट को फिर से जगाता है ताकि एजेंट उपयोगकर्ता को बता सके और तैयार ऑडियो संलग्न कर सके। पूर्णता एजेंट सेशन के सामान्य दृश्यमान-उत्तर मोड का पालन करता है: कॉन्फ़िगर होने पर स्वचालित अंतिम उत्तर डिलीवरी, या message(action="send") जब सेशन को message टूल की आवश्यकता होती है। यदि अनुरोधकर्ता सेशन निष्क्रिय है या उसका सक्रिय वेक विफल हो जाता है, और कुछ जनरेट किया गया ऑडियो अभी भी पूर्णता उत्तर से गायब है, तो OpenClaw केवल गायब ऑडियो के साथ एक इडेम्पोटेंट प्रत्यक्ष फ़ॉलबैक भेजता है।

त्वरित शुरुआत

Shared provider-backed

  • Configure auth

    कम से कम एक प्रदाता के लिए API कुंजी सेट करें — उदाहरण के लिए GEMINI_API_KEY या MINIMAX_API_KEY

  • Pick a default model (optional)

    json5
    {  agents: {    defaults: {      musicGenerationModel: {        primary: "google/lyria-3-clip-preview",      },    },  },}
  • Ask the agent

    "Generate an upbeat synthpop track about a night drive through a neon city."

    एजेंट music_generate को स्वचालित रूप से कॉल करता है। किसी टूल allow-listing की आवश्यकता नहीं है।

  • सेशन-समर्थित एजेंट रन के बिना प्रत्यक्ष सिंक्रोनस संदर्भों के लिए, बिल्ट-इन टूल अब भी इनलाइन जनरेशन पर फ़ॉलबैक करता है और टूल परिणाम में अंतिम मीडिया पथ लौटाता है।

    ComfyUI workflow

  • Configure the workflow

    वर्कफ़्लो JSON और prompt/output nodes के साथ plugins.entries.comfy.config.music कॉन्फ़िगर करें।

  • Cloud auth (optional)

    Comfy Cloud के लिए, COMFY_API_KEY या COMFY_CLOUD_API_KEY सेट करें।

  • Call the tool

    text
    /tool music_generate prompt="Warm ambient synth loop with soft tape texture"
  • उदाहरण प्रॉम्प्ट:

    text
    Generate a cinematic piano track with soft strings and no vocals.
    text
    Generate an energetic chiptune loop about launching a rocket at sunrise.

    समर्थित प्रदाता

    प्रदाता डिफ़ॉल्ट मॉडल संदर्भ इनपुट समर्थित नियंत्रण प्रमाणीकरण
    ComfyUI workflow 1 छवि तक वर्कफ़्लो-निर्धारित संगीत या ऑडियो COMFY_API_KEY, COMFY_CLOUD_API_KEY
    fal fal-ai/minimax-music/v2.6 कोई नहीं lyrics, instrumental, durationSeconds, format FAL_KEY या FAL_API_KEY
    Google lyria-3-clip-preview 10 छवियों तक lyrics, instrumental, format GEMINI_API_KEY, GOOGLE_API_KEY
    MiniMax music-2.6 कोई नहीं lyrics, instrumental, format=mp3 MINIMAX_API_KEY या MiniMax OAuth
    OpenRouter google/lyria-3-pro-preview 1 छवि तक lyrics, instrumental, durationSeconds, format OPENROUTER_API_KEY

    क्षमता मैट्रिक्स

    music_generate, अनुबंध परीक्षणों, और साझा लाइव स्वीप द्वारा उपयोग किया जाने वाला स्पष्ट मोड अनुबंध:

    प्रदाता generate edit एडिट सीमा साझा लाइव लेन
    ComfyUI 1 छवि साझा स्वीप में नहीं; extensions/comfy/comfy.live.test.ts द्वारा कवर किया गया
    fal कोई नहीं generate
    Google 10 छवियां generate, edit
    MiniMax कोई नहीं generate
    OpenRouter 1 छवि generate, edit

    रनटाइम पर उपलब्ध साझा प्रदाताओं और मॉडलों की जांच करने के लिए action: "list" का उपयोग करें:

    text
    /tool music_generate action=list

    सक्रिय सेशन-समर्थित संगीत टास्क की जांच करने के लिए action: "status" का उपयोग करें:

    text
    /tool music_generate action=status

    प्रत्यक्ष जनरेशन उदाहरण:

    text
    /tool music_generate prompt="Dreamy lo-fi hip hop with vinyl texture and gentle rain" instrumental=true

    टूल पैरामीटर

    promptstringrequired

    संगीत जनरेशन प्रॉम्प्ट। action: "generate" के लिए आवश्यक।

    action"generate" | "status" | "list"default: generate

    "status" वर्तमान सत्र टास्क लौटाता है; "list" प्रदाताओं की जांच करता है।

    modelstring

    प्रदाता/मॉडल ओवरराइड (जैसे google/lyria-3-pro-preview, comfy/workflow)।

    lyricsstring

    वैकल्पिक बोल, जब प्रदाता स्पष्ट बोल इनपुट का समर्थन करता हो।

    instrumentalboolean

    केवल-वाद्य आउटपुट का अनुरोध करें, जब प्रदाता इसका समर्थन करता हो।

    imagestring

    एकल संदर्भ इमेज पथ या URL।

    imagesstring[]

    अनेक संदर्भ इमेज (समर्थन करने वाले प्रदाताओं पर 10 तक)।

    durationSecondsnumber

    लक्षित अवधि सेकंड में, जब प्रदाता अवधि संकेतों का समर्थन करता हो।

    format"mp3" | "wav"

    आउटपुट फॉर्मेट संकेत, जब प्रदाता इसका समर्थन करता हो।

    filenamestring

    प्रदाता अनुरोध टाइमआउट केवल ऑपरेटर कॉन्फिगरेशन हैं। कॉन्फिगर होने पर 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 फिर से कॉल न करे।
    • बिना-सत्र फॉलबैक: वास्तविक एजेंट सत्र के बिना प्रत्यक्ष/local संदर्भ इनलाइन चलते हैं और अंतिम ऑडियो परिणाम उसी टर्न में लौटाते हैं।

    टास्क जीवनचक्र

    स्थिति अर्थ
    queued टास्क बनाया गया, प्रदाता द्वारा स्वीकार किए जाने की प्रतीक्षा में।
    running प्रदाता प्रोसेस कर रहा है (आमतौर पर प्रदाता और अवधि के आधार पर 30 सेकंड से 3 मिनट)।
    succeeded ट्रैक तैयार है; एजेंट जागता है और उसे बातचीत में पोस्ट करता है।
    failed प्रदाता त्रुटि या टाइमआउट; एजेंट त्रुटि विवरणों के साथ जागता है।

    CLI से स्थिति जांचें:

    bash
    openclaw tasks listopenclaw tasks show <taskId>openclaw tasks cancel <taskId>

    कॉन्फिगरेशन

    मॉडल चयन

    json5
    {  agents: {    defaults: {      musicGenerationModel: {        primary: "google/lyria-3-clip-preview",        fallbacks: ["fal/fal-ai/minimax-music/v2.6", "minimax/music-2.6"],      },    },  },}

    प्रदाता चयन क्रम

    OpenClaw इस क्रम में प्रदाताओं को आजमाता है:

    1. टूल कॉल से model पैरामीटर (यदि एजेंट कोई निर्दिष्ट करता है)।
    2. कॉन्फिग से musicGenerationModel.primary
    3. क्रम में musicGenerationModel.fallbacks
    4. केवल auth-समर्थित प्रदाता डिफॉल्ट का उपयोग करके स्वतः-पहचान:
      • पहले वर्तमान डिफॉल्ट प्रदाता;
      • बाकी पंजीकृत संगीत-जनरेशन प्रदाता, प्रदाता ID क्रम में।

    यदि कोई प्रदाता विफल होता है, तो अगला उम्मीदवार अपने-आप आजमाया जाता है। यदि सभी विफल होते हैं, तो त्रुटि में प्रत्येक प्रयास का विवरण शामिल होता है।

    केवल स्पष्ट model, primary, और fallbacks प्रविष्टियों का उपयोग करने के लिए agents.defaults.mediaGenerationAutoProviderFallback: false सेट करें।

    प्रदाता नोट्स

    ComfyUI

    वर्कफ्लो-चालित है और प्रॉम्प्ट/आउटपुट फील्ड के लिए कॉन्फिगर किए गए ग्राफ और नोड मैपिंग पर निर्भर करता है। बंडल किया गया comfy Plugin साझा music_generate टूल में संगीत-जनरेशन प्रदाता रजिस्ट्री के माध्यम से जुड़ता है।

    fal

    साझा प्रदाता auth पथ के माध्यम से fal मॉडल एंडपॉइंट का उपयोग करता है। बंडल किया गया प्रदाता fal-ai/minimax-music/v2.6 पर डिफॉल्ट करता है और प्रॉम्प्ट-से-ऑडियो अनुरोधों के लिए fal-ai/ace-step/prompt-to-audio और fal-ai/stable-audio-25/text-to-audio भी उजागर करता है।

    Google (Lyria 3)

    Lyria 3 बैच जनरेशन का उपयोग करता है। वर्तमान बंडल किया गया फ्लो प्रॉम्प्ट, वैकल्पिक बोल टेक्स्ट, और वैकल्पिक संदर्भ इमेज का समर्थन करता है।

    MiniMax

    बैच music_generation एंडपॉइंट का उपयोग करता है। प्रॉम्प्ट, वैकल्पिक बोल, वाद्य मोड, और mp3 आउटपुट का समर्थन करता है, या तो minimax API-key auth या minimax-portal OAuth के माध्यम से।

    OpenRouter

    स्ट्रीमिंग सक्षम करके OpenRouter चैट कम्प्लीशन्स ऑडियो आउटपुट का उपयोग करता है। बंडल किया गया प्रदाता google/lyria-3-pro-preview पर डिफॉल्ट करता है और openrouter/google/lyria-3-clip-preview भी उजागर करता है।

    सही पथ चुनना

    • साझा प्रदाता-समर्थित जब आपको मॉडल चयन, प्रदाता फेलओवर, और अंतर्निहित असिंक्रोनस टास्क/स्थिति फ्लो चाहिए।
    • Plugin पथ (ComfyUI) जब आपको कस्टम वर्कफ्लो ग्राफ या ऐसे प्रदाता की आवश्यकता हो जो साझा बंडल की गई संगीत क्षमता का हिस्सा नहीं है।

    यदि आप ComfyUI-विशिष्ट व्यवहार डीबग कर रहे हैं, तो ComfyUI देखें। यदि आप साझा प्रदाता व्यवहार डीबग कर रहे हैं, तो fal, Google (Gemini), MiniMax, या OpenRouter से शुरू करें।

    प्रदाता क्षमता मोड

    साझा संगीत-जनरेशन अनुबंध स्पष्ट मोड घोषणाओं का समर्थन करता है:

    • केवल प्रॉम्प्ट वाली जनरेशन के लिए generate
    • जब अनुरोध में एक या अधिक संदर्भ चित्र शामिल हों, तब edit

    नए प्रदाता कार्यान्वयनों को स्पष्ट मोड ब्लॉक को प्राथमिकता देनी चाहिए:

    typescript
    capabilities: {  generate: {    maxTracks: 1,    supportsLyrics: true,    supportsFormat: true,  },  edit: {    enabled: true,    maxTracks: 1,    maxInputImages: 1,    supportsFormat: true,  },}

    maxInputImages, supportsLyrics, और supportsFormat जैसे पुराने फ्लैट फ़ील्ड edit समर्थन को विज्ञापित करने के लिए पर्याप्त नहीं हैं। प्रदाताओं को generate और edit स्पष्ट रूप से घोषित करने चाहिए ताकि लाइव परीक्षण, अनुबंध परीक्षण, और साझा music_generate टूल मोड समर्थन को निर्धारित रूप से सत्यापित कर सकें।

    लाइव परीक्षण

    साझा बंडल किए गए प्रदाताओं के लिए ऑप्ट-इन लाइव कवरेज:

    bash
    OPENCLAW_LIVE_TEST=1 pnpm test:live -- extensions/music-generation-providers.live.test.ts

    रेपो रैपर:

    bash
    pnpm test:live:media music

    यह लाइव फ़ाइल डिफ़ॉल्ट रूप से संग्रहीत auth प्रोफ़ाइलों से पहले पहले से निर्यात किए गए प्रदाता env vars का उपयोग करती है, और जब प्रदाता edit मोड सक्षम करता है, तब generate और घोषित edit दोनों कवरेज चलाती है। आज की कवरेज:

    • google: generate और edit
    • fal: केवल generate
    • minimax: केवल generate
    • openrouter: generate और edit
    • comfy: अलग Comfy लाइव कवरेज, साझा प्रदाता स्वीप नहीं

    बंडल किए गए ComfyUI संगीत पथ के लिए ऑप्ट-इन लाइव कवरेज:

    bash
    OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.live.test.ts

    जब वे सेक्शन कॉन्फ़िगर किए जाते हैं, तो Comfy लाइव फ़ाइल comfy इमेज और वीडियो वर्कफ़्लो को भी कवर करती है।

    संबंधित

    Was this useful?
    On this page

    On this page