Proces aplikacji
Aby skorzystać z Producent Audios Generation API, najpierw przejdź do Ace Data Cloud Console, aby uzyskać swój token API, który należy zachować na przyszłość.
Jeśli nie jesteś zalogowany lub zarejestrowany, automatycznie zostaniesz przekierowany na stronę logowania, aby zarejestrować się i zalogować, a po zakończeniu zostaniesz automatycznie przekierowany z powrotem na bieżącą stronę.
Jeden token API wystarczy do korzystania ze wszystkich usług platformy, nie ma potrzeby składania osobnych wniosków dla każdej usługi. Przy pierwszym wniosku otrzymasz darmowy limit, aby móc go przetestować; w przypadku niewystarczającego limitu możesz doładować saldo ogólne w konsoli.
📘 Pełna dokumentacja: Producent Audios Generation API →
Podstawowe użycie
Chcąc stworzyć piosenkę, możesz wprowadzić dowolny tekst, na przykład, jeśli chcesz wygenerować piosenkę o tematyce świątecznej, możesz wpisaća song for Christmas, jak pokazano na obrazku:

accept: w jakim formacie chcesz otrzymać odpowiedź, tutaj wpisujemyapplication/json, czyli format JSON.authorization: klucz do wywołania API, po złożeniu wniosku można go bezpośrednio wybrać z rozwijanej listy.
action: działanie związane z generowaniem muzyki, w przypadku generowania piosenki togenerate.model: model używany do tworzenia piosenki, obecnie dostępne są głównie: 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: treść tekstu piosenki.custom: czy piosenka ma być generowana w sposób niestandardowy.prompt: słowo kluczowe w trybie inspiracji.title: informacja o tytule piosenki.audio_id: ID referencyjnej piosenki, używane do kontynuacji/odtworzenia itp.continue_at: kontynuacja od określonej sekundy.replace_section_start/replace_section_end: czas rozpoczęcia i zakończenia wymiany fragmentu, w sekundach.lyrics_strength: siła tekstu, wskazująca na wpływ tekstu na generowanie audio, opcjonalnie od 0 do 1, domyślnie 0.7.sound_strength: siła słowa kluczowego audio, opcjonalnie od 0.2 do 1, domyślnie 0.7.cover_strength: siła coveru od 0.2 do 1, domyślnie 1.weirdness: stopień dziwności stylu, opcjonalnie od 0 do 1, domyślnie 0.5.callback_url: URL, na który mają być zwracane wyniki.async: opcjonalnie, ustawione natrue, interfejs natychmiast zwracatask_id, nie ma potrzeby podawaniacallback_url, a następnie można uzyskać wyniki, wykonując zapytania do odpowiedniego interfejsu zadań.instrumental: czy ma to być tryb bez tekstu.

success, stan zadania generowania muzyki w danym momencie.data, wynik zadania muzycznegoid, ID zadania generowania muzyki w danym momencie.sound, słowo kluczowe zadania generowania muzyki w danym momencie.seed, wartość nasionka zadania generowania muzyki w danym momencie.audio_url, link do audio zadania generowania muzyki w danym momencie.image_url, link do okładki zadania generowania muzyki w danym momencie.image_id, ID okładki zadania generowania muzyki w danym momencie.state, stan zadania generowania muzyki w danym momencie.duration, informacja o czasie trwania muzyki w danym momencie.progress, wartość postępu zadania muzycznego w danym momencie.model, informacja o modelu używanym w zadaniu generowania muzyki w danym momencie.lyric, informacja o tekście zadania generowania muzyki w danym momencie.
data uzyskamy wygenerowaną muzykę Producenta.
Jeśli chcesz wygenerować odpowiedni kod do integracji, możesz go bezpośrednio skopiować, na przykład kod CURL wygląda następująco:
Niestandardowe generowanie
Jeśli chcesz niestandardowo wygenerować tekst, możesz wprowadzić tekst piosenki: W tym momencie polelyric może przyjąć podobną treść jak poniżej:
- lyric:tekst piosenki
- custom:wypełnij jako
true, co oznacza generację niestandardową, ten parametr domyślnie ma wartość false, co oznacza użyciepromptdo generacji. - title:tytuł piosenki.


Przykład coveru piosenki
Jeśli chcesz wykonać cover już wygenerowanej piosenki, możesz wprowadzić wcześniej wygenerowaną piosenkę do wykonania coveru, następnie musimy dostosować generację piosenki na podstawie tekstu, tytułu. Jeśli chcesz kontynuować wykonywanie coveru swojej przesłanej piosenki, możesz ustawić parametraction na upload_cover i wprowadzić ID piosenki, którą chcesz kontynuować, ID piosenki można uzyskać za pomocą Producer Upload API, jak pokazano na poniższym obrazku:

- action:działanie zadania piosenki, obecnie wspiera: generate, cover, extend, upload_cover, upload_extend, replace_section, swap_vocals, swap_instrumentals, variation, w tym przypadku używamy parametru
cover. - lyric:tekst piosenki
- title:tytuł piosenki.
- custom:czy używać trybu niestandardowego do generacji, domyślnie jest false.
- audio_id:ID piosenki, którą chcesz wykonać cover.


Kontynuacja piosenki
Jeśli chcesz kontynuować piosenkę, musimy przekazać parametraction z wartością: extend, następnie musimy dostosować generowanie piosenki na podstawie tekstu, tytułu i stylu.
Jeśli chcesz kontynuować piosenkę, którą sam przesłałeś, możesz ustawić parametr action na upload_extend i wprowadzić ID piosenki, którą chcesz kontynuować. ID piosenki można uzyskać za pomocą Producer Upload API, jak pokazano na poniższym obrazku:



Muzyczna transformacja
Jeśli chcesz wygenerować nową muzykę o podobnym efekcie na podstawie wartości seed poprzedniej piosenki, musimy przekazać parametraction z wartością: variation, następnie możemy dostosować generowanie nowej muzyki o podobnym efekcie.
Przykład wypełnienia wygląda następująco:


Zastąpienie fragmentu
Jeśli chcesz zastąpić fragment piosenki, musimy przekazać wartość parametruaction jako: replace_section, następnie musimy dostosować tekst piosenki na podstawie tekstu, tytułu.
Jeśli chcesz kontynuować zastępowanie fragmentu w przesłanej przez siebie piosence, możesz ustawić parametr action na upload_replace_section i wprowadzić ID przesłanej piosenki, które można uzyskać za pomocą Producer Upload API, jak pokazano na poniższym obrazku:



Przeróbka podkładu
Jeśli chcesz użyć oficjalnej przeróbki podkładu, możesz ustawić wartość parametruaction na: swap_instrumentals, następnie musimy dostosować generowanie piosenki na podstawie tekstu, tytułu.
Przykład wypełnienia wygląda następująco:


Przeróbka wokalu
Jeśli chcesz użyć oficjalnej przeróbki wokalu, możesz ustawić wartość parametruaction na: swap_vocals, następnie musimy dostosować generowanie piosenki na podstawie tekstu, tytułu, stylu.
Przykład wypełnienia wygląda następująco:


Oddzielanie tekstu od muzyki
Jeśli chcesz użyć oficjalnej operacji oddzielania tekstu od muzyki, możesz ustawić wartość parametruaction na: stems, następnie musimy przeprowadzić oddzielanie tekstu od muzyki na podstawie ID utworu.
Przykład wypełnienia wygląda następująco:


Asynchroniczne wywołanie zwrotne
Ponieważ czas generacji API Producer Audios może być czasami stosunkowo długi, jeśli API nie odpowiada przez dłuższy czas, żądanie HTTP będzie utrzymywać połączenie, co prowadzi do dodatkowego zużycia zasobów systemowych, dlatego to API oferuje również wsparcie dla asynchronicznych wywołań zwrotnych. Cały proces polega na tym, że klient inicjuje żądanie, dodatkowo określając polecallback_url, po zainicjowaniu żądania API, API natychmiast zwraca wynik, zawierający pole task_id, które reprezentuje aktualne ID zadania. Gdy zadanie zostanie zakończone, wynik generacji zadania zostanie wysłany do określonego przez klienta callback_url w formie POST JSON, w tym również zawierając pole task_id, dzięki czemu wynik zadania można powiązać za pomocą ID.
Poniżej przyjrzymy się, jak dokładnie to działa na przykładzie.
Po pierwsze, wywołanie zwrotne Webhook to usługa, która może odbierać żądania HTTP, deweloperzy powinni zastąpić to URL swojego własnego serwera HTTP. W tym celu, dla wygody demonstracji, użyjemy publicznej strony przykładowej Webhook https://webhook.site/, otwierając tę stronę, można uzyskać URL Webhook, jak pokazano na obrazku:
Skopiuj ten URL, aby użyć go jako Webhook, przykładowy URL to https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1.
Następnie możemy ustawić pole callback_url na powyższy URL Webhook, a także wypełnić odpowiednie parametry, szczegóły jak na obrazku:

Treść wygląda następująco:
task_id, a inne pola są podobne do powyższych, dzięki czemu można powiązać zadania.
Obsługa błędów
Podczas wywoływania API, jeśli wystąpi błąd, API zwróci odpowiedni kod błędu i informacje. Na przykład:400 token_mismatched: Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.400 api_not_implemented: Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.401 invalid_token: Nieautoryzowany, nieprawidłowy lub brakujący token autoryzacyjny.429 too_many_requests: Zbyt wiele żądań, przekroczyłeś limit szybkości.500 api_error: Błąd wewnętrzny serwera, coś poszło nie tak na serwerze.

