Antragsprozess
Um die Producer Audios Generation API zu verwenden, rufen Sie zunächst die Ace Data Cloud-Konsole auf, um Ihren API-Token zu erhalten, und bewahren Sie ihn zur späteren Verwendung auf.
Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, um sich zu registrieren und anzumelden. Nach Abschluss kehren Sie automatisch zur aktuellen Seite zurück.
Ein API-Token kann alle Dienste der Plattform aufrufen, ohne dass Sie jeden Dienst einzeln beantragen müssen. Beim ersten Antrag erhalten Sie ein kostenloses Guthaben, das Sie kostenlos ausprobieren können; wenn das Guthaben nicht ausreicht, können Sie in der Konsole ein allgemeines Guthaben aufladen.
📘 Vollständige Dokumentation: Producer Audios Generation API →
Grundlegende Verwendung
Welche Songs Sie sich auch wünschen, Sie können beliebig einen Text eingeben. Wenn ich zum Beispiel einen Song über Weihnachten generieren möchte, kann icha song for Christmas eingeben, wie in der Abbildung gezeigt:

accept: In welchem Format das Antwortergebnis empfangen werden soll; hier wirdapplication/jsoneingetragen, also das JSON-Format.authorization: Der Schlüssel zum Aufrufen der API, der nach dem Antrag direkt über das Dropdown ausgewählt werden kann.
action: Das Verhalten dieser Musikgenerierungsaufgabe; zum Generieren eines Songs ist esgenerate.model: Das zum Erstellen des Songs verwendete Modell, derzeit hauptsächlich: 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: Der Liedtext des Songs.custom: Ob der Song auf benutzerdefinierte Weise generiert wird.prompt: Der Prompt im Inspirationsmodus.title: Informationen zum Songtitel.audio_id: Referenz-Song-ID, für Vorgänge wie Fortsetzung/Neuinterpretation.continue_at: Den Song ab der angegebenen Sekunde fortsetzen.replace_section_start/replace_section_end: Start- und Endzeit des zu ersetzenden Abschnitts, in Sekunden.lyrics_strength: Liedtextstärke, die den Einfluss des Liedtexts auf die Audiogenerierung angibt, optional zwischen 0 und 1, Standardwert 0,7.sound_strength: Stärke des Audio-Prompts, optional zwischen 0,2 und 1, Standardwert 0,7.cover_strength: Stärke der Coverversion zwischen 0,2 und 1, Standardwert 1.weirdness: Grad der stilistischen Eigenart, optional zwischen 0 und 1, Standardwert 0,5.callback_url: Die URL, an die das Ergebnis zurückgerufen werden soll.async: Optional; wenn auftruegesetzt, gibt die Schnittstelle soforttask_idzurück, ohne dasscallback_urlangegeben werden muss. Anschließend wird das Ergebnis durch Abfragen der entsprechenden Task-Abfrageschnittstelle per Polling abgerufen.instrumental: Ob es sich um einen Modus ohne Liedtext handelt.

success, der Status der aktuellen Musikgenerierungsaufgabe.data, das Ergebnis dieser Musikaufgabe.id, die ID der aktuellen Musikgenerierungsaufgabe.sound, der Prompt der aktuellen Musikgenerierungsaufgabe.seed, der Seed-Wert der aktuellen Musikgenerierungsaufgabe.audio_url, der Audio-Link der aktuellen Musikgenerierungsaufgabe.image_url, der Cover-Link der aktuellen Musikgenerierungsaufgabe.image_id, die Cover-ID der aktuellen Musikgenerierungsaufgabe.state, der Status der aktuellen Musikgenerierungsaufgabe.duration, die Längeninformationen der aktuellen Musik.progress, der Fortschrittswert der aktuellen Musikaufgabe.model, die Modellinformationen, die von der aktuellen Musikgenerierungsaufgabe verwendet werden.lyric, die Liedtextinformationen der aktuellen Musikgenerierungsaufgabe.
data des Ergebnisses abrufen.
Wenn Sie außerdem den entsprechenden Anbindungscode generieren möchten, können Sie ihn direkt kopieren und generieren, zum Beispiel lautet der CURL-Code wie folgt:
Benutzerdefinierte Generierung
Wenn Sie Liedtexte benutzerdefiniert generieren möchten, können Sie Liedtexte eingeben: Zu diesem Zeitpunkt kann das Feldlyric ähnliche Inhalte wie die folgenden übergeben:
- lyric: Liedtext
- custom: Auf
truesetzen, steht für benutzerdefinierte Generierung; dieser Parameter ist standardmäßig false, was für die Generierung mitpromptsteht. - title: Der Titel des Liedes.


Songs covern
Wenn Sie einen bereits generierten Song covern möchten, können Sie den oben generierten Song für das Cover verwenden; als Nächstes werden wir basierend auf Liedtext und Titel einen Song benutzerdefiniert generieren. Wenn Sie einen selbst hochgeladenen Song weiter covern möchten, können Sie den Parameteraction auf upload_cover setzen und die ID des selbst hochgeladenen Songs eingeben, der weiter gecovert werden soll. Die Song-ID wird über die Producer Upload API abgerufen, wie in der folgenden Abbildung gezeigt:

- action: Das Verhalten dieser Song-Aufgabe, derzeit unterstützt: generate, cover, extend, upload_cover, upload_extend, replace_section, swap_vocals, swap_instrumentals, variation; für dieses Cover wird der Parameter
coververwendet. - lyric: Liedtext
- title: Der Titel des Liedes.
- custom: Ob die Generierung im benutzerdefinierten Modus erfolgt, standardmäßig ist false.
- audio_id: Die Song-ID des zu covernden Songs.


Lied fortsetzen
Wenn Sie ein Lied fortsetzen möchten, müssen wir den Wert des Parametersaction auf extend setzen. Anschließend können wir basierend auf Liedtext, Titel und Stil ein Lied individuell generieren.
Wenn Sie ein selbst hochgeladenes Lied weiter fortsetzen möchten, können Sie den Parameter action auf upload_extend setzen und die ID des selbst hochgeladenen Liedes eingeben, das weiter fortgesetzt werden soll. Die Lied-ID erhalten Sie über die Producer Upload API, wie in der folgenden Abbildung dargestellt:



Musikvariation
Wenn Sie anhand des Seed-Werts der vorherigen Musik eine neue Musik mit einem ähnlichen Effekt generieren möchten, müssen wir den Wert des Parametersaction auf variation setzen. Anschließend können Sie eine neue Musik mit einem ähnlichen Effekt individuell generieren.
Das Ausfüllbeispiel lautet wie folgt:


Abschnitt ersetzen
Wenn Sie einen Abschnitt eines Liedes ersetzen möchten, müssen wir den Wert des Parametersaction auf replace_section setzen. Anschließend passen wir die Generierung des Liedes anhand von Liedtext und Titel an.
Wenn Sie einen Abschnitt eines selbst hochgeladenen Liedes weiter ersetzen möchten, können Sie den Parameter action auf upload_replace_section setzen und die ID des selbst hochgeladenen Liedes eingeben, das weiter fortgesetzt werden soll. Die Lied-ID wird über die Producer Upload API abgerufen, wie in der folgenden Abbildung gezeigt:



Instrumental-Remake
Wenn Sie die offizielle Instrumental-Remake-Funktion verwenden möchten, können Sie den Wert des Parametersaction auf swap_instrumentals setzen. Anschließend können wir basierend auf Liedtext und Titel einen Song individuell generieren.
Das Ausfüllbeispiel lautet wie folgt:


Gesangs-Remake
Wenn Sie die offizielle Gesangs-Remake-Funktion verwenden möchten, können Sie den Wert des Parametersaction auf swap_vocals setzen. Anschließend können wir basierend auf Liedtext, Titel und Stil einen Song individuell generieren.
Das Ausfüllbeispiel lautet wie folgt:


Trennung von Liedtext und Musik
Wenn Sie die offizielle Trennung von Liedtext und Musik verwenden möchten, können Sie den Parameterwert vonaction auf stems setzen. Als Nächstes führen wir die Trennung von Liedtext und Musik anhand der Song-ID durch.
Das Ausfüllbeispiel lautet wie folgt:


Asynchroner Rückruf
Da die Generierungszeit der Producer Audios Generation API manchmal relativ lang sein kann, bleibt die HTTP-Anfrage bei längerer Nichtreaktion der API dauerhaft verbunden, was zu zusätzlichem Verbrauch von Systemressourcen führt. Daher bietet diese API auch Unterstützung für asynchrone Rückrufe. Der gesamte Ablauf ist: Wenn der Client eine Anfrage startet, gibt er zusätzlich ein Feldcallback_url an. Nachdem der Client eine API-Anfrage gestartet hat, gibt die API sofort ein Ergebnis zurück, das ein Feld task_id enthält, welches die aktuelle Aufgaben-ID darstellt. Nachdem die Aufgabe abgeschlossen ist, wird das Ergebnis der Generierungsaufgabe in Form von POST JSON an die vom Client angegebene callback_url gesendet, wobei es ebenfalls das Feld task_id enthält, sodass die Aufgabenergebnisse über die ID zugeordnet werden können.
Im Folgenden erfahren wir anhand eines Beispiels, wie genau vorzugehen ist.
Zunächst ist der Webhook-Rückruf ein Dienst, der HTTP-Anfragen empfangen kann. Entwickler sollten ihn durch die URL ihres selbst eingerichteten HTTP-Servers ersetzen. Zur einfachen Demonstration wird hier eine öffentliche Webhook-Beispielwebsite https://webhook.site/ verwendet. Durch Öffnen dieser Website erhalten Sie eine Webhook-URL, wie in der Abbildung gezeigt:
Kopieren Sie diese URL, dann kann sie als Webhook verwendet werden. Das Beispiel hier ist https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1.
Als Nächstes können wir das Feld callback_url auf die oben genannte Webhook-URL setzen und gleichzeitig die entsprechenden Parameter eingeben. Der konkrete Inhalt ist in der Abbildung dargestellt:

Der Inhalt lautet wie folgt:
task_id, die anderen Felder sind alle ähnlich wie oben. Über dieses Feld kann die Zuordnung der Aufgabe realisiert werden.
Fehlerbehandlung
Wenn bei der API-Aufruf ein Fehler auftritt, gibt die API den entsprechenden Fehlercode und die entsprechenden Informationen zurück. Zum Beispiel:400 token_mismatched: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.400 api_not_implemented: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.401 invalid_token: Nicht autorisiert, ungültiges oder fehlendes Autorisierungstoken.429 too_many_requests: Zu viele Anfragen, Sie haben das Ratenlimit überschritten.500 api_error: Interner Serverfehler, auf dem Server ist etwas schiefgelaufen.

