Passer au contenu principal
Cet article présentera une méthode d’intégration de l’API Producer Audios Generation, qui permet de générer de la musique officielle Producer en saisissant des paramètres personnalisés.

Processus de demande

Pour utiliser l’API Producer Audios Generation, obtenez d’abord votre API Token dans la console Ace Data Cloud, et conservez-le pour une utilisation ultérieure. Si vous n’êtes pas encore connecté ou inscrit, vous serez automatiquement redirigé vers la page de connexion afin de vous inviter à vous inscrire et à vous connecter, puis vous reviendrez automatiquement sur la page actuelle une fois cela terminé. Un seul API Token permet d’appeler tous les services de la plateforme, sans avoir besoin d’en demander un séparément pour chaque service. Lors de la première demande, un quota gratuit sera offert pour permettre un essai gratuit ; lorsque le quota est insuffisant, vous pouvez recharger votre solde général dans la console.
📘 Documentation complète : API Producer Audios Generation →

Utilisation de base

Pour toute chanson à laquelle vous pensez, vous pouvez saisir librement un texte, par exemple si je veux générer une chanson sur Noël, je peux saisir a song for Christmas, comme illustré ci-dessous :

Vous pouvez voir que nous avons défini ici les Request Headers, notamment :
  • accept:le format de résultat de réponse que vous souhaitez recevoir, renseignez ici application/json, c’est-à-dire le format JSON.
  • authorization:la clé pour appeler l’API, qui peut être directement sélectionnée dans la liste déroulante après la demande.
En outre, les paramètres du Request Body comprennent :
  • action:l’action de cette tâche de génération musicale, la génération d’une chanson est generate.
  • model:le modèle utilisé pour créer la chanson, actuellement les principaux sont : FUZZ-2.0 Pro、FUZZ-2.0、FUZZ-2.0 Raw,FUZZ-1.1 Pro、FUZZ-1.0 Pro、FUZZ-1.0、FUZZ-1.1、FUZZ-0.8。
  • lyric:le contenu des paroles de la chanson.
  • custom:indique si la chanson est générée de manière personnalisée.
  • prompt:le texte d’invite en mode inspiration.
  • title:les informations du titre de la chanson.
  • audio_id:l’ID de la chanson de référence, utilisé pour des opérations telles que la continuation/la reprise.
  • continue_at:continuer l’écriture de la chanson à partir du nombre de secondes spécifié.
  • replace_section_start/replace_section_end:les heures de début et de fin du segment à remplacer, en secondes.
  • lyrics_strength:l’intensité des paroles, qui indique le degré d’influence des paroles dans la génération audio, facultatif entre 0 et 1, 0,7 par défaut.
  • sound_strength:l’intensité du texte d’invite audio, facultative entre 0,2 et 1, 0,7 par défaut.
  • cover_strength:l’intensité de la reprise, entre 0,2 et 1, 1 par défaut.
  • weirdness:le degré d’étrangeté du style, facultatif entre 0 et 1, 0,5 par défaut
  • callback_url:l’URL nécessitant un résultat de rappel.
  • async:facultatif, lorsque défini sur true, l’interface renvoie immédiatement task_id, sans avoir besoin de fournir callback_url, puis le résultat est obtenu par interrogation via l’interface de requête de tâche correspondante.
  • instrumental:indique s’il s’agit du mode sans paroles.
Après la sélection, vous pouvez constater que le code correspondant est également généré à droite, comme illustré ci-dessous :

Cliquez sur le bouton « Try » pour effectuer un test. Comme illustré ci-dessus, nous obtenons alors le résultat suivant :
Le résultat renvoyé comporte plusieurs champs, présentés comme suit :
  • success,l’état de la tâche de génération musicale à ce moment-là.
    • data,le résultat de cette tâche musicale
      • id,l’ID de la tâche de génération musicale à ce moment-là.
      • sound,le texte d’invite de la tâche de génération musicale à ce moment-là.
      • seed,la valeur de graine de la tâche de génération musicale à ce moment-là.
      • audio_url,le lien audio de la tâche de génération musicale à ce moment-là.
      • image_url,le lien de couverture de la tâche de génération musicale à ce moment-là.
      • image_id,l’ID de couverture de la tâche de génération musicale à ce moment-là.
      • state,l’état de la tâche de génération musicale à ce moment-là.
      • duration,les informations de durée de la musique à ce moment-là.
      • progress,la valeur de progression de la tâche musicale à ce moment-là.
      • model,les informations du modèle utilisé par la tâche de génération musicale à ce moment-là.
      • lyric,les informations des paroles de la tâche de génération musicale à ce moment-là.
Vous pouvez voir que nous avons obtenu les informations de la musique souhaitée ; il suffit de récupérer la musique Producer générée selon l’adresse du lien musical dans data du résultat. De plus, si vous souhaitez générer le code d’intégration correspondant, vous pouvez le copier directement. Par exemple, le code CURL est le suivant :

Génération personnalisée

Si vous souhaitez générer des paroles personnalisées, vous pouvez saisir les paroles : À ce moment-là, le champ lyric peut recevoir un contenu semblable au suivant :
Ensuite, si nous voulons générer une chanson personnalisée selon les paroles, le titre et le style, nous pouvons spécifier le contenu suivant :
  • lyric : texte des paroles
  • custom : renseignez true, ce qui représente une génération personnalisée ; ce paramètre est par défaut à false, ce qui représente une génération à l’aide de prompt.
  • title : le titre de la chanson.
L’exemple de remplissage est le suivant :

Une fois le remplissage terminé, le code suivant est généré automatiquement :

Le code correspondant :
Le test est autorisé, et l’effet généré est similaire.

Reprise de chanson

Si vous souhaitez effectuer une reprise d’une chanson déjà générée, vous pouvez saisir la chanson générée ci-dessus pour en faire une reprise ; ensuite, nous allons générer une chanson personnalisée selon les paroles et le titre. Si vous souhaitez poursuivre la reprise d’une chanson que vous avez vous-même téléversée, vous pouvez définir le paramètre action sur upload_cover, et saisir l’ID de la chanson téléversée personnalisée dont vous souhaitez poursuivre la reprise. L’obtention de l’ID de la chanson se fait à l’aide de Producer Upload API, comme indiqué dans l’image ci-dessous :

Vous pouvez alors spécifier le contenu suivant :
  • action : le comportement de cette tâche de chanson prend actuellement en charge : generate, cover, extend, upload_cover, upload_extend, replace_section, swap_vocals, swap_instrumentals, variation ; cette reprise utilise le paramètre cover.
  • lyric : texte des paroles
  • title : le titre de la chanson.
  • custom : si la génération utilise le mode personnalisé, la valeur par défaut est false.
  • audio_id : l’ID de la chanson à reprendre.
L’exemple de remplissage est le suivant :

Une fois le remplissage terminé, le code suivant est généré automatiquement :

Le code correspondant :
Le test est autorisé, et l’effet généré est similaire.

Continuer une chanson

Si vous souhaitez continuer une chanson, nous devons transmettre la valeur du paramètre action : extend, puis nous devons générer une chanson personnalisée en fonction des paroles, du titre et du style. Si vous souhaitez continuer une chanson que vous avez vous-même téléversée, vous pouvez définir le paramètre action sur upload_extend, et saisir l’ID de la chanson personnalisée téléversée que vous souhaitez continuer. L’obtention de l’ID de la chanson se fait à l’aide de Producer Upload API, comme illustré ci-dessous :

L’exemple de remplissage est le suivant :

Après avoir rempli les informations, le code suivant est généré automatiquement :

Le code correspondant :
Le test est autorisé, l’effet généré est similaire.

Variation musicale

Si vous souhaitez générer une nouvelle musique avec un effet similaire en fonction de la valeur seed de la musique précédente, nous devons transmettre la valeur du paramètre action : variation, puis vous pouvez personnaliser la génération d’une nouvelle musique avec un effet similaire. L’exemple de remplissage est le suivant :

Après avoir rempli les informations, le code suivant est généré automatiquement :

Le code correspondant :
Le test est accepté, l’effet généré est similaire.

Remplacer un segment

Si vous souhaitez remplacer un segment de la chanson, nous devons transmettre la valeur du paramètre action : replace_section, ensuite nous devons générer une chanson personnalisée selon les paroles et le titre. Si vous souhaitez continuer à remplacer un segment d’une chanson que vous avez vous-même téléversée, vous pouvez définir le paramètre action sur upload_replace_section, et saisir l’ID de la chanson personnalisée téléversée dont vous souhaitez continuer l’écriture. L’obtention de l’ID de la chanson se fait à l’aide de Producer Upload API, comme indiqué ci-dessous :

L’exemple de remplissage est le suivant :

Une fois le remplissage terminé, le code suivant est généré automatiquement :

Le code correspondant :
Le test est accepté, l’effet généré est similaire.

Reprise de l’accompagnement

Si vous souhaitez utiliser l’opération officielle de reprise de l’accompagnement, vous pouvez définir la valeur du paramètre action sur : swap_instrumentals, ensuite nous allons générer des chansons personnalisées selon les paroles et le titre. L’exemple de remplissage est le suivant :

Une fois le remplissage terminé, le code suivant est généré automatiquement :

Le code correspondant :
Les tests sont autorisés, l’effet généré est similaire.

Reprise vocale

Si vous souhaitez utiliser l’opération officielle de reprise vocale, vous pouvez définir la valeur du paramètre action sur : swap_vocals, ensuite nous allons générer des chansons personnalisées selon les paroles, le titre et le style. L’exemple de remplissage est le suivant :

Une fois le remplissage terminé, le code suivant est généré automatiquement :

Le code correspondant :
Les tests sont autorisés, l’effet généré est similaire.

Séparation des paroles et de la musique

Si vous souhaitez utiliser l’opération officielle de séparation des paroles et de la musique, vous pouvez définir la valeur du paramètre action sur : stems. Ensuite, nous allons effectuer la séparation des paroles et de la musique selon l’ID de la chanson. L’exemple de remplissage est le suivant :

Une fois le remplissage terminé, le code suivant est généré automatiquement :

Le code correspondant :
Le test est autorisé, et l’effet généré est similaire.

Rappel asynchrone

Comme le temps de génération de l’API Producer Audios Generation peut parfois être relativement long, si l’API ne répond pas pendant une longue période, la requête HTTP maintiendra constamment la connexion, entraînant une consommation supplémentaire de ressources système. Cette API prend donc également en charge les rappels asynchrones. Le processus global est le suivant : lorsque le client lance une requête, il spécifie en plus un champ callback_url. Après que le client a lancé une requête API, l’API renvoie immédiatement un résultat, contenant un champ task_id, qui représente l’ID de la tâche actuelle. Une fois la tâche terminée, le résultat de la tâche de génération sera envoyé sous forme de POST JSON vers le callback_url spécifié par le client, incluant également le champ task_id, afin que les résultats de la tâche puissent être associés via l’ID. Ci-dessous, nous allons comprendre plus précisément comment procéder à travers un exemple. Tout d’abord, le rappel Webhook est un service capable de recevoir des requêtes HTTP ; les développeurs doivent le remplacer par l’URL de leur propre serveur HTTP. Pour faciliter la démonstration, nous utilisons ici un site d’exemple Webhook public https://webhook.site/. Ouvrez ce site pour obtenir une URL Webhook, comme illustré ci-dessous : Copiez cette URL, elle peut alors être utilisée comme Webhook. L’exemple ici est https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1. Ensuite, nous pouvons définir le champ callback_url sur l’URL Webhook ci-dessus, tout en renseignant les paramètres correspondants. Le contenu spécifique est illustré ci-dessous :

Cliquez sur Exécuter, vous constaterez qu’un résultat est immédiatement obtenu, comme suit :
Après un court instant, nous pouvons observer le résultat de la tâche de génération sur https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1, comme illustré ci-dessous : Le contenu est le suivant :
On peut voir qu’il y a un champ task_id dans le résultat, les autres champs sont similaires à ceux ci-dessus, et ce champ permet d’établir l’association des tâches.

Gestion des erreurs

Lors de l’appel de l’API, en cas d’erreur, l’API renvoie le code d’erreur et les informations correspondants. Par exemple :
  • 400 token_mismatched:Requête incorrecte, probablement en raison de paramètres manquants ou non valides.
  • 400 api_not_implemented:Requête incorrecte, probablement en raison de paramètres manquants ou non valides.
  • 401 invalid_token:Non autorisé, jeton d’autorisation non valide ou manquant.
  • 429 too_many_requests:Trop de requêtes, vous avez dépassé la limite de débit.
  • 500 api_error:Erreur interne du serveur, un problème est survenu sur le serveur.

Exemple de réponse d’erreur

Conclusion

Grâce à ce document, vous avez appris comment utiliser l’API Producer Audios Generation pour générer de la musique en saisissant des mots-clés. Nous espérons que ce document vous aidera à mieux intégrer et utiliser cette API. Si vous avez des questions, veuillez contacter notre équipe d’assistance technique à tout moment.