Wprowadzenie
Wyślij tekst do odczytania i opcjonalnie głos, akcent, styl mówienia, tempo, scenę i krótką uwagę o sposobie wykonania; w przypadku rozmowy wyślij kwestie i mówców zamiast tekstu. Zadanie zwraca jeden plik WAV (24 kHz, 16 bitów, mono) z tekstem odczytanym tym głosem albo, przy dialogu, w maksymalnie dwóch głosach. Model stosuje się do wskazówek prostym językiem (wolniej, bliżej mikrofonu, rozbawiony, zmęczony) i wykonuje znaczniki w nawiasach kwadratowych, jak [sighs], zamiast czytać je na głos. SpicyAPI nie stosuje filtra treści: każdy skrypt jest odczytywany tak, jak napisano. Rozliczenie za sekundę zwróconego audio.
| Pole | Wartość |
|---|---|
| Wejście | Tekst |
| Wyjście | Audio |
| Pole wymagane | text (od 1 do 5000 znaków) lub dialogue (do 20 kwestii) |
| Pola opcjonalne |
|
| Wynik | Jeden plik WAV, 24 kHz, 16 bitów, mono |
| Najdłuższy klip | Około 655 sekund (16 384 tokeny audio) |
| Rozliczana ilość | Sekundy zwróconego audio, mierzone na pliku |
| Przechowywanie | Wygenerowane audio jest przechowywane przez 14 dni |
Parametry żądania
| Parametr | Wymagane | Uwaga |
|---|---|---|
text | Nie | Słowa do wypowiedzenia, dokładnie tak, jak je napisano. Znaczniki w nawiasach kwadratowych, takie jak [sighs], są odgrywane, a nie czytane. od 1 znaków · do 5000 znaków |
dialogue | Nie | Rozpisany dialog maksymalnie dwóch głosów, używany zamiast text: do 20 kwestii, każda z speaker (imię z speakers) i text o długości do 250 znaków. Kwestie są odgrywane po kolei. od 1 elementów · do 20 elementów |
speakers | Nie | Obsada dla dialogue: jeden lub dwa wpisy, każdy z name, do którego odwołują się kwestie, |
voice_id | Nie | Jeden z 30 gotowych głosów, każdy o stałym charakterze. Domyślnie Kore. |
style | Nie | Ogólny sposób mówienia. Zostaw puste, aby głos czytał w swoim domyślnym stylu. |
pace | Nie | Rytm odczytu: natural, |
accent | Nie | Angielski akcent używany podczas lektury. Domyślnie neutral. |
instructions | Nie | Dowolna wskazówka do lektury: tempo, nastrój, odległość od mikrofonu, słuchacz. Kształtuje wykonanie i nie jest wypowiadana. do 1000 znaków |
scene | Nie | Gdzie i do kogo padają słowa, np. „cichy pokój hotelowy po północy”. do 500 znaków |
temperature | Nie | Zróżnicowanie między podejściami, od 0 do 2: wyższe wartości sprawiają, że interpretacja jest mniej przewidywalna. Bez ustawienia obowiązuje wartość domyślna modelu. |
Cennik
$0.00045 / sekunda
Opłata za każdą sekundę zwróconego audio. Podczas zadania blokowana jest kwota za 660 sekund, a niewykorzystana część jest zwalniana po zmierzeniu audio.
Zastosowania
Audiobooki i długa narracja
Rozdziały, bajki na dobranoc i powieści w odcinkach czytane równym głosem narratora. Wybierz głos raz i trzymaj się go: ten sam głos z tymi samymi wskazówkami brzmi spójnie w każdym rozdziale.
Głosy postaci i towarzyszy
Nadaj postaci z czatu własny głos. Szeptany styl i krótka wskazówka zmieniają płaski tekst w kwestie, które brzmią, jakby były mówione do jednej osoby, a nie ogłaszane.
Historie audio bez cenzury
Skrypty są odczytywane tak, jak napisano, bez filtra treści. W naszych testach model wypowiadał każde słowo zarówno kwestii w pierwszej osobie, jak i opisanych scen, bez pomijania słów i bez wcześniejszego kończenia klipu.
Ścieżki głosowe do wideo
Wygeneruj kwestię tutaj, a potem przekaż plik WAV modelowi mówiącego awatara albo synchronizacji ust, aby twarz ją wypowiedziała. Długość audio wyznacza długość klipu w kolejnym kroku.
Wskazówki
Wyślij scenariusz w polu text
Napisz go dokładnie tak, jak ma zostać wypowiedziany, z interpunkcją w miejscach pauz. Do 5000 znaków.
Wybierz głos, a w razie potrzeby styl i akcent
Domyślnie
voice_idto Kore, a accent to neutral. Ustaw style tylko wtedy, gdy chcesz konkretnego sposobu mówienia, na przykład whisper.Wyreżyseruj lekturę w instructions
Jedno lub dwa zdania o tempie, nastroju i słuchaczu działają lepiej niż lista przymiotników. Wskazówka nie jest odczytywana.
Co zwraca
Jeden plik WAV na zadanie: PCM 24 kHz, 16 bitów, mono. Plik jest kopiowany do magazynu SpicyAPI i przechowywany przez 14 dni. Wynik nie zawiera znaczników czasu słów ani napisów.
Wybór głosu
voice_id przyjmuje jeden z 30 gotowych głosów, domyślnie Kore. Każdy głos ma stały charakter, na przykład Kore stanowczy, Charon rzeczowy, Puck energiczny, Enceladus z przydechem, Achernar miękki, Algenib chropowaty, Sulafat ciepły, Gacrux dojrzały. Głos nie zmienia się wraz z językiem scenariusza.
Reżyseria lektury
styleustala ogólny sposób mówienia:whisper,empathetic,vocal_smile,newscaster,promo_hypelubdeadpan. Bez niego głos czyta w swoim domyślnym stylu.accentwybiera angielski akcent, domyślnieneutral.pacenadaje rytm:natural,rapid_fire,the_driftlubstaccato.instructionsprzyjmuje dowolny tekst o tym, jak czytać: tempo, nastrój, odległość od mikrofonu, adresat.scenemówi, gdzie i do kogo padają słowa. Żadne z nich nie jest czytane na głos.temperature(0–2) określa, jak bardzo wykonanie różni się między podejściami.- W
textwskazówki w nawiasach kwadratowych, takie jak[sighs]czy[whispering], są odgrywane, a nie czytane.
Dwa głosy w jednym klipie
Dla rozmowy wyślij dialogue zamiast text oraz speakers z obsadą: jeden lub dwa wpisy, każdy z name, voice_id i opcjonalnie accent, style, pace oraz profile, czyli krótkim opisem mówiącej osoby, który nie jest odczytywany. Każda kwestia w dialogue to {speaker, text}, gdzie speaker jest jednym z tych imion; kwestie są odgrywane po kolei, do 20 kwestii po 250 znaków. Czego wpis nie ustawia, jest brane z pól accent, style i pace najwyższego poziomu. Cała rozmowa wraca jako jeden plik WAV i jest rozliczana za sekundę jak każde inne żądanie.
Długość i czas realizacji
text przyjmuje do 5000 znaków. W naszych testach akapit o długości 270 znaków dawał 23–29 sekund audio, zależnie od głosu i stylu. Model zatrzymuje się na 16 384 tokenach audio, czyli po około 655 sekundach. Większość zadań kończy się w niecałą minutę.
Rozliczenie
Opłata za każdą sekundę zwróconego audio, mierzoną na pliku. Podczas wykonywania zadania na saldzie blokowana jest kwota za 660 sekund — najdłuższy klip, jaki model może wygenerować — a niewykorzystana część jest zwalniana przy rozliczeniu zadania. Nieudane żądania nie są rozliczane.
Treść
SpicyAPI nie dodaje filtra treści. W naszych testach skrypty, które inne usługi odrzucają, zostały odczytane słowo w słowo, bez pomijania czegokolwiek i bez przedwcześnie urwanych klipów.
SpicyAPI nie dodaje filtra treści: skrypty są odczytywane tak, jak napisano, cokolwiek zawierają. Odpowiadasz za skrypty, które wysyłasz, i za sposób wykorzystania uzyskanego audio, w tym za to, by nie przedstawiać go jako słów prawdziwej osoby.
Szybki start z API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "google/gemini-2.5-pro-tts/text-to-speech",
"input": {
"text": "Welcome back. Your files finished rendering a minute ago and are ready to download.",
"accent": "neutral",
"voice_id": "Kore"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
Uwierzytelnianie, pełny schemat, odpytywanie i obsługę błędów opisuje dokumentacja API.







