Vai al contenuto principale
Questo articolo introdurrà le istruzioni per l’integrazione dell’API Producer Audios Generation, che consente di generare musica ufficiale di Producer inserendo parametri personalizzati.

Procedura di richiesta

Per utilizzare l’API Producer Audios Generation, per prima cosa vai alla console di Ace Data Cloud per ottenere il tuo API Token e conservarlo come riserva. Se non hai ancora effettuato l’accesso o la registrazione, verrai automaticamente reindirizzato alla pagina di accesso per invitarti a registrarti e ad accedere; una volta completato, tornerai automaticamente alla pagina corrente. Un solo API Token può richiamare tutti i servizi della piattaforma, senza necessità di richiederne uno separatamente per ciascun servizio. Alla prima richiesta verrà assegnato un credito gratuito, che consente di provare il servizio gratuitamente; quando il credito è insufficiente, puoi ricaricare il saldo generale nella console.
📘 Documentazione completa: Producer Audios Generation API →

Utilizzo di base

Per qualsiasi canzone tu voglia, puoi inserire liberamente un testo, ad esempio se voglio generare una canzone sul Natale, posso inserire a song for Christmas, come mostrato nell’immagine:

Qui possiamo vedere che abbiamo impostato i Request Headers, tra cui:
  • accept: il formato del risultato della risposta che si desidera ricevere; qui è compilato come application/json, ovvero il formato JSON.
  • authorization: la chiave per richiamare l’API, che può essere selezionata direttamente dal menu a discesa dopo la richiesta.
Inoltre, i parametri del Request Body includono:
  • action: l’azione di questa attività di generazione musicale; per generare una canzone è generate.
  • model: il modello utilizzato per creare la canzone; attualmente comprende principalmente: 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: il contenuto del testo della canzone.
  • custom: se utilizzare un metodo personalizzato per generare la canzone.
  • prompt: il prompt in modalità ispirazione.
  • title: le informazioni sul titolo della canzone.
  • audio_id: l’ID della canzone di riferimento, utilizzato per operazioni quali continuazione/versione cover.
  • continue_at: continua la canzone a partire dal numero di secondi specificato.
  • replace_section_start/replace_section_end: orario di inizio e fine del segmento da sostituire, in secondi.
  • lyrics_strength: intensità del testo, indica il grado di influenza del testo nella generazione audio; opzionale tra 0 e 1, il valore predefinito è 0.7.
  • sound_strength: intensità del prompt audio, opzionale tra 0.2 e 1, il valore predefinito è 0.7.
  • cover_strength: intensità della cover, tra 0.2 e 1, il valore predefinito è 1.
  • weirdness: grado di eccentricità dello stile, opzionale tra 0 e 1, il valore predefinito è 0.5
  • callback_url: l’URL per il risultato della callback.
  • async: opzionale; quando è impostato su true, l’interfaccia restituisce immediatamente task_id, senza necessità di fornire callback_url, quindi ottiene il risultato eseguendo il polling tramite la relativa interfaccia di query delle attività.
  • instrumental: se è in modalità senza testo.
Dopo la selezione, si può notare che anche sulla destra viene generato il codice corrispondente, come mostrato nell’immagine:

Fai clic sul pulsante «Try» per eseguire il test; come mostrato nell’immagine sopra, qui otteniamo il seguente risultato:
Il risultato restituito contiene più campi, descritti come segue:
  • success, lo stato dell’attività di generazione musicale in questo momento.
    • data, il risultato di questa attività musicale.
      • id, l’ID dell’attività di generazione musicale in questo momento.
      • sound, il prompt dell’attività di generazione musicale in questo momento.
      • seed, il valore seed dell’attività di generazione musicale in questo momento.
      • audio_url, il link audio dell’attività di generazione musicale in questo momento.
      • image_url, il link della copertina dell’attività di generazione musicale in questo momento.
      • image_id, l’ID della copertina dell’attività di generazione musicale in questo momento.
      • state, lo stato dell’attività di generazione musicale in questo momento.
      • duration, le informazioni sulla durata della musica in questo momento.
      • progress, il valore di avanzamento dell’attività musicale in questo momento.
      • model, le informazioni sul modello utilizzato dall’attività di generazione musicale in questo momento.
      • lyric, le informazioni sul testo dell’attività di generazione musicale in questo momento.
Possiamo vedere che abbiamo ottenuto le informazioni sulla musica che desideriamo generare; ci basta ottenere la musica Producer generata in base all’indirizzo del link musicale in data nel risultato. Inoltre, se desideri generare il codice di integrazione corrispondente, puoi copiarlo direttamente; ad esempio, il codice CURL è il seguente:

Generazione personalizzata

Se desideri generare un testo personalizzato, puoi inserire il testo: A questo punto, il campo lyric può ricevere contenuti simili ai seguenti:
Successivamente, per generare una canzone personalizzata in base al testo, al titolo e allo stile, è possibile specificare il seguente contenuto:
  • lyric:testo della canzone
  • custom:impostare su true, indica la generazione personalizzata; questo parametro è false per impostazione predefinita, indicando la generazione tramite prompt.
  • title:il titolo della canzone.
L’esempio di compilazione è il seguente:

Dopo aver completato la compilazione, il codice viene generato automaticamente come segue:

Il codice corrispondente:
Il test è consentito e l’effetto generato è simile.

Cover di canzoni

Se si desidera eseguire un’operazione di cover su una canzone già generata, è possibile inserire la canzone generata sopra per eseguire la cover; successivamente, genereremo una canzone personalizzata in base al testo e al titolo. Se si desidera continuare a eseguire la cover di una canzone caricata personalmente, è possibile impostare il parametro action su upload_cover e inserire l’ID della canzone caricata personalizzata per cui continuare la cover. L’ID della canzone si ottiene utilizzando la Producer Upload API, come mostrato nell’immagine seguente:

È quindi possibile specificare i seguenti contenuti:
  • action:l’azione di questa attività musicale; attualmente supporta: generate、cover、extend、upload_cover、upload_extend、replace_section、swap_vocals、swap_instrumentals、variation; questa cover utilizza il parametro cover.
  • lyric:testo della canzone
  • title:il titolo della canzone.
  • custom:se generare utilizzando la modalità personalizzata; il valore predefinito è false.
  • audio_id:l’ID della canzone di cui eseguire la cover.
L’esempio di compilazione è il seguente:

Dopo aver completato la compilazione, il codice viene generato automaticamente come segue:

Il codice corrispondente:
Il test è consentito e l’effetto generato è simile.

Continua la canzone

Se si desidera continuare la canzone, dobbiamo passare il valore del parametro action come: extend, quindi possiamo generare una canzone personalizzata in base al testo, al titolo e allo stile. Se si desidera continuare una canzone caricata personalmente, è possibile impostare il parametro action su upload_extend e inserire l’ID della canzone personalizzata caricata che deve essere continuata. L’ID della canzone si ottiene utilizzando la Producer Upload API, come mostrato nell’immagine seguente:

L’esempio di compilazione è il seguente:

Dopo aver completato la compilazione, il codice viene generato automaticamente come segue:

Il codice corrispondente:
Il test ha avuto successo e l’effetto generato è simile.

Variazione musicale

Se si desidera generare una nuova musica con un effetto simile in base al valore seed della musica precedente, dobbiamo passare il valore del parametro action come: variation, quindi è possibile generare una nuova musica personalizzata con un effetto simile. L’esempio di compilazione è il seguente:

Dopo aver completato la compilazione, il codice viene generato automaticamente come segue:

Il codice corrispondente:
Il test è consentito e l’effetto generato è simile.

Sostituzione di sezioni

Se si desidera sostituire sezioni della canzone, è necessario passare il parametro action con valore: replace_section, successivamente possiamo generare una canzone personalizzata in base al testo e al titolo. Se si desidera continuare a sostituire sezioni di una canzone caricata personalmente, è possibile impostare il parametro action su upload_replace_section, e inserire l’ID della canzone caricata personalizzata di cui si desidera continuare la scrittura. L’ID della canzone si ottiene utilizzando la Producer Upload API, come mostrato nell’immagine seguente:

L’esempio di compilazione è il seguente:

Dopo aver completato la compilazione, il codice viene generato automaticamente come segue:

Il codice corrispondente:
Il test è consentito e l’effetto generato è simile.

Rifacimento dell’accompagnamento

Se si desidera utilizzare l’operazione ufficiale di rifacimento dell’accompagnamento, è possibile impostare il valore del parametro action su: swap_instrumentals, quindi possiamo generare canzoni personalizzate in base al testo e al titolo. L’esempio di compilazione è il seguente:

Dopo la compilazione, il codice viene generato automaticamente come segue:

Il codice corrispondente:
Il test è consentito e l’effetto generato è simile.

Rifacimento della voce

Se si desidera utilizzare l’operazione ufficiale di rifacimento della voce, è possibile impostare il valore del parametro action su: swap_vocals, quindi possiamo generare canzoni personalizzate in base al testo, al titolo e allo stile. L’esempio di compilazione è il seguente:

Dopo la compilazione, il codice viene generato automaticamente come segue:

Il codice corrispondente:
Il test è consentito e l’effetto generato è simile.

Separazione di voce e musica

Se si desidera utilizzare l’operazione ufficiale di separazione di voce e musica, è possibile impostare il valore del parametro action su: stems; successivamente, eseguiremo la separazione di voce e musica in base all’ID del brano. L’esempio di compilazione è il seguente:

Dopo aver completato la compilazione, il codice viene generato automaticamente come segue:

Il codice corrispondente:
Il test è consentito e l’effetto generato è simile.

Callback asincrono

Poiché il tempo di generazione di Producer Audios Generation API a volte può essere relativamente lungo, se l’API non risponde per molto tempo, la richiesta HTTP manterrà continuamente la connessione, causando un consumo aggiuntivo di risorse di sistema; pertanto, questa API fornisce anche supporto per callback asincroni. Il flusso complessivo è: quando il client avvia una richiesta, specifica inoltre un campo callback_url; dopo che il client avvia la richiesta API, l’API restituirà immediatamente un risultato, contenente le informazioni di un campo task_id, che rappresenta l’ID dell’attività corrente. Una volta completata l’attività, il risultato dell’attività di generazione verrà inviato tramite POST JSON al callback_url specificato dal client, includendo anch’esso il campo task_id, in modo che il risultato dell’attività possa essere associato tramite ID. Di seguito capiremo come operare nello specifico attraverso un esempio. Innanzitutto, il callback Webhook è un servizio in grado di ricevere richieste HTTP; gli sviluppatori dovrebbero sostituirlo con l’URL del server HTTP che hanno configurato. Qui, per comodità di dimostrazione, viene utilizzato un sito web di esempio Webhook pubblico https://webhook.site/; aprendo questo sito web è possibile ottenere un Webhook URL, come mostrato nell’immagine: Copiare questo URL per utilizzarlo come Webhook; l’esempio qui è https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1. Successivamente, possiamo impostare il campo callback_url sull’URL Webhook sopra indicato, compilando contemporaneamente i parametri corrispondenti; il contenuto specifico è mostrato nell’immagine:

Fare clic su Esegui e si noterà che si ottiene immediatamente un risultato, come segue:
Attendere un momento; possiamo osservare il risultato dell’attività di generazione su https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1, come mostrato nell’immagine: Il contenuto è il seguente:
Si può vedere che nel risultato è presente un campo task_id; gli altri campi sono simili a quelli sopra e, tramite questo campo, è possibile realizzare l’associazione dell’attività.

Gestione degli errori

Durante la chiamata all’API, se si verifica un errore, l’API restituirà il codice e il messaggio di errore corrispondenti. Ad esempio:
  • 400 token_mismatched:Richiesta non valida, probabilmente a causa di parametri mancanti o non validi.
  • 400 api_not_implemented:Richiesta non valida, probabilmente a causa di parametri mancanti o non validi.
  • 401 invalid_token:Non autorizzato, token di autorizzazione non valido o mancante.
  • 429 too_many_requests:Troppe richieste, hai superato il limite di frequenza.
  • 500 api_error:Errore interno del server, qualcosa è andato storto sul server.

Esempio di risposta di errore

Conclusione

Attraverso questo documento, hai già compreso come utilizzare la Producer Audios Generation API per generare musica inserendo parole chiave. Ci auguriamo che questo documento possa aiutarti a integrare e utilizzare meglio questa API. Per qualsiasi domanda, non esitare a contattare il nostro team di supporto tecnico.