Fish Audio: S2 Pro
Fish Audio S2 Pro tworzy ekspresyjną mowę wielojęzyczną ze wskazówkami na poziomie słów i natywnym dialogiem wielu mówców. Instrukcje w nawiasach kwadratowych sterują wykonaniem w scenariuszu, wzorce głosu identyfikują mówców, a ustawienia wyjścia kształtują wynikowy materiał audio.
O modelu
Ten opis przedstawia możliwości modelu. Dane wejściowe, wyniki i opcje dostępne w Ailoot podano poniżej dla wybranej metody.
S2 Pro to model syntezy mowy drugiej generacji firmy Fish Audio do ekspresyjnej narracji, dialogów postaci i konwersacyjnych wypowiedzi głosowych. Zamienia pisemny scenariusz w dźwięk i obsługuje kierowanie wykonaniem w języku naturalnym na poziomie słowa lub frazy. Poprzednia generacja S1 korzysta ze wskazówek w nawiasach okrągłych, natomiast S2 Pro natywnie wykorzystuje nawiasy kwadratowe i obsługuje wielu mówców w jednym żądaniu syntezy. Producent udostępnia wagi S2 Pro i kod dostrajania do odrębnych prac personalizacyjnych; zwykłe żądanie mowy używa wybranego modelu, zamiast trenować nowy.
Najpierw zapisz treść wypowiedzi, a następnie umieść instrukcję wykonania bezpośrednio przed słowem lub frazą, na które ma wpływać. Wskazówki mogą opisywać szept, reakcję, pauzę, zmianę emocji lub swobodnie określony styl mówienia. Przy krótkim objaśnieniu produktu utrzymuj jasne zdanie faktograficzne i dodawaj akcent tylko tam, gdzie słuchacz powinien zauważyć różnicę. W kwestii postaci opisuj zmianę emocjonalną w chwili jej wystąpienia, zamiast nadawać całemu fragmentowi jeden stały nastrój.
Znaczniki w nawiasach kwadratowych to opisy o otwartym zakresie, a nie zamknięte menu. Przykłady obejmują [whispering], [sigh], [long pause] oraz frazę taką jak [speaking slowly, almost hesitant]. Znaczniki mogą pojawiać się w środku zdania i wpływać na dalszą mowę. Po opisowym znaczniku musi nastąpić rzeczywisty tekst; sama instrukcja może dać nieprzewidywalny wynik. Zacznij od jednej lub dwóch użytecznych wskazówek przed dodaniem kolejnych warstw, ponieważ konkurujące znaczniki mogą zaciemnić zamierzone wykonanie. Różne wzorce głosu mogą reagować na tę samą wskazówkę z różną intensywnością.
Opis wydania S2 wskazuje około 80 języków i podaje przykłady zapisywania wskazówek wykonania w tym samym języku co scenariusz. Przygotuj tekst w języku, który ma być wypowiadany, i zachowaj nazwy, jednostki oraz skróty wymagające konkretnego odczytu. Narracja wielojęzyczna może zachowywać zamierzony głos przy zmianie języka scenariusza, ale materiał końcowy nadal wymaga odsłuchania pod kątem wymowy i ciągłości. Synteza zamienia dostarczoną treść w mowę, zamiast decydować, jakie informacje ma wypowiedzieć aplikacja.
Dla jednego mówcy wybierz zapisany identyfikator głosu albo dostarcz dźwięk referencyjny i odpowiadającą mu transkrypcję. Producent zaleca czystą próbkę trwającą 10–30 sekund do natychmiastowego warunkowania. Dla dialogu używaj znaczników mówców, takich jak <|speaker:0|> i <|speaker:1|>, z uporządkowaną listą identyfikatorów głosów lub osobnymi grupami materiałów referencyjnych dla mówców. Numeryczny znacznik wybiera odpowiednią pozycję głosu; utrzymuj stałą kolejność w miarę rozwoju rozmowy. Wskazówki wykonania w języku naturalnym i wybór mówcy pełnią różne role w scenariuszu.
Dźwięk wyjściowy może mieć postać MP3, WAV, surowego PCM lub Opus. Domyślna przepływność MP3 wynosi 128 kb/s, z opcjami 64 lub 192 kb/s; Opus używa 48 kHz, a WAV i PCM obsługują udokumentowane częstotliwości próbkowania w formacie 16-bitowym mono. Wybierz format zgodnie z rzeczywistym przeznaczeniem: zachowany plik do narracji lub odpowiednie fragmenty audio do odtwarzania. Proces mowy producenta opisuje również strumieniowanie tekstu na żywo, gdy scenariusz napływa stopniowo. Wygenerowany wynik powinien pozostać powiązany z kompletnym scenariuszem i wybranymi głosami.
Prędkość można regulować od 0,5 do 2,0, wraz z głośnością i normalizacją głośności wyjściowej. Normalizacja tekstu poprawia odczyt liczb angielskich i chińskich. Przetwarzanie wykorzystuje fragmenty z zakresu 100–300 oraz budżet tokenów audio na fragment, więc ustawień tych nie należy odczytywać jako stałej maksymalnej długości całej narracji. Warunkowanie na podstawie poprzedniego fragmentu może przenosić kontekst głosu do kolejnego segmentu. Ustawienia próbkowania, takie jak temperature i top-p, wpływają na zmienność; celowo kierowana kwestia nadal wymaga wystarczającego tekstu i kontekstu, aby oddać zamierzone brzmienie.
Użyteczny opis produkcyjny oddziela narrację, dialog i wskazówki wykonania, a następnie określa głos i format wynikowego materiału. Odsłuchaj go pod kątem brakujących słów, powtarzającego się dźwięku, wymowy liczb, zmian mówców i momentu reakcji. Popraw kwestię lub wzorzec głosu odpowiedzialne za rozbieżność, zamiast zakładać, że większa liczba znaczników poprawi każdy fragment. S2 Pro pozostaje odrębnym modelem poprzedniej generacji S2; S2.1 Pro to późniejsza edycja z własnymi usprawnieniami i zachowaniem ustawień właściwym dla tego modelu.
Ailoot Ultra · Mowa POST /v1/audio/speech fish-audio/s2-pro
fish-audio/s2-proStart
Fish Audio S2 Pro tworzy ekspresyjną mowę wielojęzyczną ze wskazówkami na poziomie słów i natywnym dialogiem wielu mówców. Instrukcje w nawiasach kwadratowych sterują wykonaniem w scenariuszu, wzorce głosu identyfikują mówców, a ustawienia wyjścia kształtują wynikowy materiał audio.
- Akceptowane dane wejściowe
- Tekst
- Wyniki
- Audio
Dostępne w Ailoot · dane wejściowe i metody
Ailoot Ultra · Mowa POST /v1/audio/speech
- Wejście
text- Wyjście
audio
| Pole | Typ | Wymaganie | Wartości i limity | Domyślnie |
|---|---|---|---|---|
Polemodel | Typstring | WymaganieWymagane | Wartości i limity fish-audio/s2-pro | Domyślnie— |
Poleinput | Typstring | WymaganieWymagane | Wartości i limity Minimalna długość: 1 | Domyślnie— |
Polevoice | Typstring | WymaganieWymagane | Wartości i limity b347db033a6549378b48d00acb0d06cd Minimalna długość: 1 | Domyślnie— |
Poleresponse_format | Typstring | WymaganieOpcjonalne | Wartości i limity mp3, pcm | Domyślniepcm |
Poleprovider | Typobject | WymaganieOpcjonalne | Wartości i limity | Domyślnie— |
Parametry i cykl życia metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, input, voice |
Parametrmaterial_types | Kontrakttext |
Cykl życia: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Rzeczywiście zwrócony task_id lub wpis w bibliotece multimediów
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Cennik
Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.
- Tryb szybki
- Nie określono Gdy wybrany jest tryb szybki
- Tryb flex
- Nie określono Gdy wybrany jest tryb flex
- Maksymalna intensywność rozumowania
- Nie określono Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)
Stawki Ailoot
Ceny według konfiguracji
Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.
| Konfiguracja | Tabela stawek | Jednostka rozliczeniowa | Opłata |
|---|---|---|---|
| KonfiguracjaBazowe stawki za tokeny | Tabela stawekStawka podstawowa | Jednostka rozliczeniowa— | Opłata Wejście · Tokeny wejściowe — / 1K tokenów Wyjście · Tokeny wyjściowe — / 1K tokenów Wejście · Odczyt cache — / 1K tokenów Wejście · Zapis do cache — / 1K tokenów Wejście · Zapis do cache, 1 godz. — / 1K tokenów |
| Konfiguracjabajt wejściowy UTF-8 | Tabela stawek— | Jednostka rozliczeniowaza wejściowy bajt UTF-8 | Opłata Wejście · bajt wejściowy UTF-8 $0.00003 za wejściowy bajt UTF-8 |
Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →
Przykładowe żądania
Ailoot Ultra · Mowa
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_INPUT_TEXT:?Set the actual documented input value}"
export AILOOT_INPUT_TEXT
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
request={'model': 'fish-audio/s2-pro', 'input': '${ACTUAL_INPUT_TEXT}', 'voice': 'b347db033a6549378b48d00acb0d06cd', 'response_format': 'mp3'}
request['input']=os.environ['AILOOT_INPUT_TEXT']
Path('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o response.bin
# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.
Odbieranie i zapisywanie wyników
Ailoot Ultra · Mowa
Kompletne binarne dane dźwiękowe lub oryginalna odpowiedź audio_url, nagłówki i każdy zasób należący do użytkownika.
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Inne odczyty treści
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Zachowaj wszystkie ukończone wyniki
Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.
Zachowaj pełną odpowiedź i nagłówki, wszystkie rzeczywiście uzyskane wyniki, pierwotnie zwrócone identyfikatory oraz wszystkie pola zużycia. Odzyskaj pierwotną operację bez ponownego wysyłania żądania utworzenia.
Jeśli trzeba sprawdzić pierwotną odpowiedź
Zachowaj zwrócony X-Client-Request-ID do uzgodnienia danych. Odczytuj wyłącznie rzeczywiście zwrócone wartości task_id/asset_id lub własną bibliotekę multimediów; nigdy nie buduj adresu URL zadania na podstawie identyfikatora operacji i nigdy nie wysyłaj ponownie żądania utworzenia.
Aliasy
Aliasy modelu
Ailoot Ultra fish-audio/s2-pro
Aliasy ścieżek metod
Użyj ścieżek metod podanych powyżej.
Powiązane ID modeli
FAQ · Fish Audio: S2 Pro
- Jakie dane wejściowe i wyniki są dostępne?
POST /v1/audio/speech·fish-audio/s2-pro:text→audio- Jakich pól używa żądanie?
POST /v1/audio/speech·fish-audio/s2-pro:model,input,voice,response_format,provider