music_generate crée de la musique ou de l’audio grâce à la
fonctionnalité partagée de génération musicale, reposant sur ComfyUI, fal,
Google, MiniMax et OpenRouter.
music_generate n’apparaît que lorsqu’au moins un fournisseur de génération
musicale est disponible : une configuration explicite
agents.defaults.musicGenerationModel ou un fournisseur configuré avec une
authentification (par exemple, une clé API définie).music_generate démarre
sous forme de tâche en arrière-plan, suit sa progression dans le registre des
tâches, puis réveille l’agent lorsque la piste est prête afin qu’il puisse en
informer l’utilisateur et joindre l’audio final. L’agent d’achèvement respecte
le contrat de réponse visible de la session : réponse finale automatique
lorsqu’elle est configurée, ou message(action="send") lorsque la session
requiert l’outil de messagerie. Si la session du demandeur est inactive ou si
son réveil échoue et que l’audio généré manque toujours dans la réponse,
OpenClaw envoie directement un message de secours idempotent contenant
uniquement l’audio manquant.
Démarrage rapide
- Avec fournisseur partagé
- Workflow ComfyUI
1
Configurer l’authentification
Définissez une clé API pour au moins un fournisseur, par exemple
GEMINI_API_KEY ou MINIMAX_API_KEY.2
Choisir un modèle par défaut (facultatif)
3
Demander à l’agent
« Générez une piste synthpop entraînante sur un trajet nocturne dans
une ville illuminée de néons. »L’agent appelle automatiquement
music_generate. Il n’est pas
nécessaire d’ajouter l’outil à une liste d’autorisation.action: "list" pour consulter les fournisseurs et modèles
disponibles, et action: "status" pour consulter la tâche musicale active
adossée à la session :
Fournisseurs pris en charge
MiniMax enregistre deux identifiants de fournisseur partageant les mêmes
modèles :
minimax pour l’authentification par clé API et minimax-portal
pour OAuth. Les références de modèle suivent le mode d’authentification
(minimax/music-2.6 ou minimax-portal/music-2.6) ; consultez
MiniMax.
fal propose également fal-ai/ace-step/prompt-to-audio (wav, sans paroles,
sans option de sortie instrumentale) et
fal-ai/stable-audio-25/text-to-audio (wav, requête uniquement), en plus de
son modèle par défaut reposant sur MiniMax. Le modèle par défaut de Google,
lyria-3-clip-preview, produit uniquement du mp3 ;
lyria-3-pro-preview prend aussi en charge le wav. MiniMax propose également
music-2.6-free, music-cover et music-cover-free. OpenRouter propose
également google/lyria-3-clip-preview.
Matrice des fonctionnalités
Le contrat explicite des modes utilisé parmusic_generate, les tests de
contrat et la campagne de tests en conditions réelles partagée :
Paramètres de l’outil
string
requis
Requête de génération musicale. Requise pour
action: "generate"."generate" | "status" | "list"
défaut:"generate"
"status" renvoie la tâche actuelle de la session ; "list" consulte les
fournisseurs.string
Remplacement du fournisseur/modèle (par exemple
google/lyria-3-pro-preview, comfy/workflow).string
Paroles facultatives lorsque le fournisseur accepte une entrée explicite
de paroles.
boolean
Demande une sortie uniquement instrumentale lorsque le fournisseur la
prend en charge.
string
Chemin ou URL d’une seule image de référence.
string[]
Plusieurs images de référence (jusqu’à 10 pour les fournisseurs qui les
prennent en charge).
number
Durée cible en secondes lorsque le fournisseur prend en charge les
indications de durée.
"mp3" | "wav"
Indication du format de sortie lorsque le fournisseur la prend en charge.
string
Indication du nom du fichier de sortie.
Tous les fournisseurs ne prennent pas en charge tous les paramètres.
OpenClaw valide néanmoins les limites strictes, comme le nombre d’entrées,
avant l’envoi. Lorsqu’un fournisseur prend en charge la durée, mais impose un
maximum inférieur à la valeur demandée, OpenClaw ramène celle-ci à la durée
prise en charge la plus proche. Les indications facultatives réellement non
prises en charge sont ignorées avec un avertissement lorsque le fournisseur
ou le modèle sélectionné ne peut pas les respecter. Les résultats de l’outil
indiquent les paramètres appliqués ;
details.normalization consigne toute
correspondance entre les valeurs demandées et appliquées.agents.defaults.musicGenerationModel.timeoutMs lorsqu’il est configuré,
porte les valeurs inférieures à 120000ms à 120000ms et, dans le cas
contraire, applique par défaut un délai de 300000ms aux requêtes des
fournisseurs.
Comportement asynchrone
La génération musicale adossée à une session s’exécute sous forme de tâche en arrière-plan :- Tâche en arrière-plan :
music_generatecrée une tâche en arrière-plan, renvoie immédiatement une réponse indiquant le démarrage et la tâche, puis publie ultérieurement la piste terminée dans un message de suivi de l’agent. - Prévention des doublons : tant qu’une tâche est
queuedourunning, les appels ultérieurs àmusic_generatedans la même session renvoient l’état de la tâche au lieu de démarrer une autre génération. Utilisezaction: "status"pour effectuer une vérification explicite. Une requête correspondante récemment terminée est également dédupliquée pendant 2 minutes. - Consultation de l’état :
openclaw tasks listouopenclaw tasks show <taskId>permet de consulter les états en attente, en cours et terminaux. - Réveil à l’achèvement : OpenClaw réinjecte un événement interne d’achèvement dans la même session afin que le modèle puisse rédiger lui-même le message de suivi destiné à l’utilisateur.
- Indication dans la requête : les interactions utilisateur/manuelles
ultérieures de la même session reçoivent une petite indication d’exécution
lorsqu’une tâche musicale est déjà en cours, afin que le modèle ne rappelle
pas aveuglément
music_generate. - Solution de secours sans session : les contextes directs/locaux sans véritable session d’agent s’exécutent directement et renvoient le résultat audio final dans la même interaction.
Cycle de vie des tâches
La tâche musicale présente les mêmes états que le registre général des tâches (consultez Tâches en arrière-plan pour le diagramme d’états complet, notammenttimed_out, cancelled et lost). La
plupart des exécutions musicales passent par les états suivants :
Consultez l’état depuis la CLI :
Configuration
Sélection du modèle
Ordre de sélection des fournisseurs
OpenClaw essaie les fournisseurs dans l’ordre suivant :- Paramètre
modelde l’appel de l’outil (si l’agent en précise un). musicGenerationModel.primaryprovenant de la configuration.musicGenerationModel.fallbacksdans l’ordre indiqué.- Détection automatique utilisant uniquement les valeurs par défaut des
fournisseurs disposant d’une authentification :
- d’abord, le fournisseur actuel du modèle de texte par défaut, s’il propose également la génération musicale ;
- puis les autres fournisseurs de génération musicale enregistrés, par ordre alphabétique de leur identifiant.
agents.defaults.mediaGenerationAutoProviderFallback: false pour
utiliser uniquement les entrées explicites model, primary et fallbacks.
Notes sur les fournisseurs
ComfyUI
ComfyUI
Piloté par des workflows et dépendant du graphe configuré ainsi que du mappage des nœuds
pour les champs d’invite et de sortie. Le plugin
comfy inclus s’intègre à l’outil
partagé music_generate par l’intermédiaire du registre des fournisseurs
de génération musicale.fal
fal
Utilise les points de terminaison des modèles fal via le mécanisme partagé d’authentification des fournisseurs. Le
fournisseur inclus utilise par défaut
fal-ai/minimax-music/v2.6 et expose également
fal-ai/ace-step/prompt-to-audio et
fal-ai/stable-audio-25/text-to-audio pour les requêtes de génération audio à partir d’une invite.
Les paroles et le mode instrumental sont réservés au modèle MiniMax ; les deux autres
modèles acceptent uniquement une invite.Google (Lyria 3)
Google (Lyria 3)
Utilise la génération par lots de Lyria 3. Le flux inclus actuel prend en charge
une invite, un texte de paroles facultatif et des images de référence facultatives. Le
modèle
lyria-3-clip-preview par défaut produit uniquement des fichiers mp3 ; le
modèle lyria-3-pro-preview prend également en charge le format wav.MiniMax
MiniMax
Utilise le point de terminaison par lots
music_generation. Prend en charge une invite, des
paroles facultatives, le mode instrumental et une sortie mp3 via l’authentification par clé
d’API minimax ou OAuth minimax-portal. Expose également les modèles music-2.6-free,
music-cover et music-cover-free.OpenRouter
OpenRouter
Utilise la sortie audio des complétions de conversation OpenRouter avec la diffusion en continu activée. Le
fournisseur inclus utilise par défaut
google/lyria-3-pro-preview et expose également
openrouter/google/lyria-3-clip-preview.Choisir la bonne approche
- Avec un fournisseur partagé lorsque vous souhaitez sélectionner un modèle, bénéficier du basculement entre fournisseurs et utiliser le flux asynchrone intégré de tâches et d’état.
- Via un Plugin (ComfyUI) lorsque vous avez besoin d’un graphe de workflow personnalisé ou d’un fournisseur qui ne fait pas partie de la fonctionnalité musicale partagée incluse.
Modes de fonctionnalité des fournisseurs
Le contrat partagé de génération musicale prend en charge des déclarations de mode explicites :generatepour la génération à partir d’une invite uniquement.editlorsque la requête comprend une ou plusieurs images de référence.
maxInputImages, supportsLyrics et
supportsFormat ne suffisent pas à annoncer la prise en charge de l’édition. Les fournisseurs
doivent déclarer explicitement generate et edit afin que les tests en conditions réelles, les tests de
contrat et l’outil partagé music_generate puissent valider la prise en charge des modes
de manière déterministe.
Tests en conditions réelles
Couverture facultative en conditions réelles pour les fournisseurs partagés inclus (fal, Google, MiniMax, OpenRouter) :generate et edit déclaré lorsque
le fournisseur active le mode d’édition. Couverture actuelle :
google:generateeteditfal:generateuniquementminimax:generateuniquementopenrouter:generateeteditcomfy: couverture Comfy en conditions réelles distincte, hors de la campagne partagée des fournisseurs
Pages connexes
- Tâches en arrière-plan — suivi des tâches pour les exécutions détachées de
music_generate - ComfyUI
- Référence de configuration — configuration de
musicGenerationModel - Google (Gemini)
- MiniMax
- Modèles — configuration des modèles et basculement
- Présentation des outils