tts-1
TTS-1 paverčia paruoštą tekstą kalbos garsu su pasirenkamais balsais, atkūrimo greičiu ir išvesties formatais. OpenAI šią versiją optimizuoja mažesnės delsos kalbos generavimui, todėl ji praktiška greitiems garsiniams skaitymams, trumpam pasakojimui ir jau parašyto teksto srautiniam pateikimui.
Apie modelį
Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.
TTS-1 yra OpenAI teksto įgarsinimo modelis, optimizuotas greičiui. Jis gauna žodžius, kuriuos reikia ištarti, ir sukuria garsą, o ne transkripciją ar rašytinį atsakymą. Gamintojo pavyzdžiai apima rašytinių straipsnių įgarsinimą, kalbos kūrimą keliomis kalbomis ir garso atkūrimą jam atkeliaujant. TTS-1 yra mažesnės delsos pasirinkimas, palyginti su TTS-1 HD; HD modelis pabrėžia išvesties kokybę. Todėl naudingas sprendimas yra tai, ar užduočiai svarbesnis greitas atkūrimas, ar aukštesnės kokybės pasakojimo profilis.
Kalbos generavimo procesas remiasi modeliu, įvesties tekstu ir pasirinktu balsu. OpenAI žinynas teksto įvestį apriboja iki 4096 ženklų – tai ženklų riba, o ne žetonų konteksto langas. Prieš sintezę paruoškite faktinį tekstą: parašykite sakinius, kuriuos klausytojas turi girdėti, išspręskite santrumpų dviprasmybes ir nuspręskite, kaip tariami vardai, kiekiai bei antraštės. Ilgo straipsnio skyrius suskirstykite į savarankiškai suprantamas ištraukas, užuot ilgą dokumentą laikę viena kalbos užklausa.
Dabartinis OpenAI konkrečiam TTS-1 modeliui skirtas balsų sąrašas yra alloy, ash, coral, echo, fable, onyx, nova, sage ir shimmer. Tai iš anksto nustatyti balsai; jie nėra visas kiekvieno naujesnio kalbos modelio balsų rinkinys. Balsai optimizuoti anglų kalbai, o daugiakalbė kalba palaikoma pateikiant įvestį ta kalba, kuria reikia kalbėti. Balsą pasirinkite pagal reprezentatyvią ištrauką su tokiu pačiu žodynu ir tempu kaip galutiniame tekste. Tą pasirinkimą išlaikykite nuoseklų susijusiuose klipuose, kai svarbus tęstinumas.
Garsą galima perduoti srautiniu būdu dalimis, todėl atkūrimas prasideda dar nebaigus generuoti viso failo. Tai iš teksto sukurtos kalbos srautinis perdavimas, o ne abipusis sakytinis pokalbis. Dokumentuoti išvesties formatai yra MP3, Opus, AAC, FLAC, WAV ir PCM; numatytasis – MP3. MP3 ir AAC suteikia suspaustą garsą; Opus tinka srautiniam perdavimui ir komunikacijai; FLAC yra be nuostolių. WAV leidžia išvengti suspausto garso dekodavimo, o neapdorotas PCM turi 24 kHz, 16 bitų ėminius su ženklu be failo antraštės; baitai išdėstomi little-endian tvarka, mažiausiai reikšmingą baitą pateikiant pirmą. OpenAI rekomenduoja WAV ar PCM, kai svarbiausias atsako laikas.
Kalbos žinynas pateikia greičio nustatymą nuo 0.25 iki 4.0 su numatytąja reikšme 1.0. Papildomas natūraliosios kalbos instrukcijų laukas su TTS-1 neveikia, o įvykių tipo SSE išvestis šiam modeliui nepalaikoma. Dokumentuoti jo valdikliai yra tekstas, balsas, greitis ir garso formatas; naujesnių modelių akcento, emocijų ar šnabždesio valdiklių nereikėtų priskirti šiai versijai. Ruošdami klipą greitį pasirinkite suprantamumui užtikrinti, tada patikrinkite sugeneruotus žodžius bei pauzes, užuot manę, kad teksto ženklų skaičius nustato tikslią trukmę.
Kalbų vadovas apima anglų, rusų, ukrainiečių, prancūzų, vokiečių, ispanų, portugalų, italų, arabų, kinų, japonų, korėjiečių, hindi, kazachų ir daug kitų kalbų. Kalba seka pateikto teksto kalbą. Todėl daugiakalbio pasakojimo užduotis prasideda išverstu tekstu ir numatyta auditorija; teksto įgarsinimas yra perteikimo žingsnis, o ne instrukcija jį išversti ar perrašyti. Praktiniam pranešimui paruoškite tikslų tekstą ir vardus. Mokomajame pasakojime aiškiai perteikite skyrių ribas bei apibrėžtis žodžiais, kurie bus skaitomi.
Užbaigtas rezultatas gali būti trumpa sakytinė instrukcija, įgarsinta ištrauka ar garso segmentas didesniam montažui. Pagal faktinę išvestį patikrinkite tarimą, pilnumą, tempą ir pasirinktą formatą. Tekstą išsaugokite kartu su garsu, kad vėlesnes pataisas būtų galima lokalizuoti paveiktoje ištraukoje. OpenAI gairės reikalauja klausytojams aiškiai pasakyti, kad balsas sugeneruotas dirbtinio intelekto. Toks atskleidimas priklauso klausymosi patirčiai; jis nepaverčia TTS-1 žmogaus balso įrašu ir neprideda modeliui balso klonavimo valdiklių.
Ailoot Ultra · Įgarsinimas POST /v1/audio/speech openai/tts-1
openai/tts-1Pradžia
TTS-1 paverčia paruoštą tekstą kalbos garsu su pasirenkamais balsais, atkūrimo greičiu ir išvesties formatais. OpenAI šią versiją optimizuoja mažesnės delsos kalbos generavimui, todėl ji praktiška greitiems garsiniams skaitymams, trumpam pasakojimui ir jau parašyto teksto srautiniam pateikimui.
- Leidžiamos įvestys
- Tekstas
- Rezultatai
- Garsas
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · Įgarsinimas POST /v1/audio/speech
- Įvestis
text- Išvestis
audio- Išvesties formatas
- mp3
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos openai/tts-1 | Numatyta— |
Laukasinput | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos Mažiausias ilgis: 1 Didžiausias ilgis: 4 096 Vienetas: Unicode simboliai | Numatyta— |
Laukasvoice | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos alloy | Numatyta— |
Įvesties medžiagos deriniai
text_to_speech · Privaloma: input
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrascontent_type | Specifikacijaapplication/json |
Parametrasrequired | Specifikacijamodel, input, voice |
Parametrasvoice_ids | Specifikacijaalloy |
Parametrasmax_input_characters | Specifikacija4096 |
Parametrasother_options | Specifikacijafalse |
Parametrasinput | Specifikacijatikslus UTF-8 tekstas; Unicode simbolių skaičius be normalizavimo |
Parametrasmaterial_types | Specifikacijatext |
Gyvavimo ciklas: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · faktiškai grąžinta task_id reikšmė arba medijos bibliotekos įrašas
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Pasirinkite tikslų balsą iš šio modelio profilio.
Įvesties simboliai ir garso sekundės yra skirtingi apskaitos vienetai.
Planai
Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.
- Spartusis režimas
- Nenurodyta Pasirinkus spartųjį režimą
- Flex režimas
- Nenurodyta Pasirinkus flex režimą
- Didžiausios samprotavimo pastangos
- Nenurodyta Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)
Ailoot įkainiai
Kainos pagal konfigūraciją
Kiekvieną mokestį susiekite su nurodytomis sąlygomis. Kiekvienam alternatyvių konfigūracijų rinkiniui taikykite vieną įkainį.
| Konfigūracija | Įkainių lentelė | Apmokestinamas kiekis | Apskaitos kiekis | Apskaitos vienetas | Mokestis |
|---|---|---|---|---|---|
| KonfigūracijaBaziniai žetonų įkainiai | Įkainių lentelėBazinis įkainis | Apmokestinamas kiekis— | Apskaitos kiekis— | Apskaitos vienetas— | Mokestis Įvestis · Įvesties tokenai — / 1K tokenų Išvestis · Išvesties tokenai — / 1K tokenų Įvestis · Talpyklos skaitymas — / 1K tokenų Įvestis · Rašymas į talpyklą — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų |
| KonfigūracijaUltra | Įkainių lentelė— | Apmokestinamas kiekisKiekvienas Unicode kodo taškas, įskaitant Han simbolius, skaičiuojamas kaip vienas simbolis. | Apskaitos kiekis— | Apskaitos vienetasuž 1K įvesties simbolių | Mokestis Įvestis · įvesties simbolis $0.03 už 1K įvesties simbolių |
| KonfigūracijaUž užklausą | Įkainių lentelė— | Apmokestinamas kiekis— | Apskaitos kiekisviena užklausa | Apskaitos vienetas— | Mokestis Įvestis $0 už užklausą |
Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →
Užklausų pavyzdžiai
Ailoot Ultra · Įgarsinimas
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "openai/tts-1", "input": "Good afternoon! This is a short voice take.", "voice": "alloy"}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
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 speech.mp3
Gauti ir išsaugoti rezultatus
Ailoot Ultra · Įgarsinimas
mp3
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Kito turinio skaitymas
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 media-assets.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
Išsaugoti visus baigtus rezultatus
Išsaugokite kiekvieną visą grąžintą atsakymą, failą ir turinio dalį.
Išsaugokite visą dvejetainį rezultatą ir antraštes. Jei grąžinamas JSON arba keli rezultatai, išsaugokite kiekvieną duomenų elementą ir atsisiųskite kiekvieną išteklių pagal faktiškai grąžintą pasirašytą URL.
Jei reikia patikrinti pradinį atsakymą
Išsaugokite pradinį operation_id/X-Client-Request-ID duomenims sutikrinti, pakartotinai neteikdami užklausos; atskiro garso būsenos tikrinimo maršruto nėra.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukasbinary audio | Tipasbytes |
Laukasresponse headers | Tipasheaders |
Klaidos ir tolesni veiksmai
| Atsakymas | Sąlyga | Kitas žingsnis |
|---|---|---|
Atsakymas400 · invalid_request_error | SąlygaNetinkami privalomi laukai, medžiagos pateikimo forma arba parametro reikšmė | Kitas žingsnisPrieš naują kūrimo užklausą pataisykite nurodytus laukus. |
Atsakymasserver_error | SąlygaGrąžintame atsakyme nurodoma, kad operaciją arba rezultatą reikia patikrinti | Kitas žingsnisIšsaugokite pradinį grąžintą operacijos ar užduoties ID, užklausos antraštes ir atsakymą; toliau tikrinkite tos pačios pradinės operacijos duomenis palaikomais būdais. Kūrimo užklausos pakartotinai neteikite. |
Pseudonimai
Modelių pseudonimai
Ailoot Ultra openai/tts-1
Metodų kelių pseudonimai
Naudokite aukščiau nurodytus metodų kelius.
Susiję ID iškvietimui
FAQ · tts-1
- Kokios įvestys ir rezultatai prieinami?
POST /v1/audio/speech·openai/tts-1:text→audio- Kokius laukus naudoja užklausa?
POST /v1/audio/speech·openai/tts-1:model,input,voice- Kokie apribojimai taikomi?
POST /v1/audio/speech·openai/tts-1:input.maximum_length:4096