{
  "aboutHtml": "<p>Flux TTS je Deepgramova družina za pretvorbo besedila v govor za pogovor v živo in vnaprej določeno govorno vsebino. Njena opredeljujoča lastnost je pogovorna kontinuiteta: pretočni model prenaša prozodijo med govornimi menjavami, zato lahko podajanje med nadaljevanjem interakcije ohrani dosleden ton. Sprejme pisno besedilo in vrne govorni zvok. Flux TTS in ločeno poimenovani model Flux za prepoznavanje govora opravljata različna dela glasovnega pogovora.</p><h4>Izberite angleški glas</h4><p>Dokumentirani katalog Flux govori angleško z ameriškim, britanskim, irskim, avstralskim, indijskim, singapurskim in filipinskim naglasom. Opisi glasov pomagajo izbrati govorca za podporo strankam, telefonske menije, pripovedovanje ali sproščen pogovor. Razvijalec na primer glas Haley opisuje kot miren ameriški glas, glas Jack pa kot profesionalen britanski glas. Glas izberite glede na občinstvo in vrsto besedila, ki ga bo prebral, nato pa ga ohranite doslednega skozi vsebino ali pogovor. Govor v drugih jezikih zahteva ločeno dokumentirano izbiro modela.</p><h4>Govorne menjave v živo in prekinitve</h4><p>V proizvajalčevem pretočnem poteku lahko besedilo prihaja med sestavljanjem odgovora v aplikaciji, zvok pa se vrača postopoma. Govorna menjava ima lastne dogodke začetka in zaključka; konec menjave zaključi preostalo sintezo. Kontekst med menjavami ohranja prozodijo znotraj te seje. To je uporabno za govornega pomočnika, ki najprej pojasni izbiro, nato pa odgovori na dodatno vprašanje brez spremembe glasovnega značaja.</p><p>Prekinitev prekliče aktivno govorno menjavo in vrne izgovorjeni del ter preostalo besedilo. To razlikovanje aplikaciji pomaga nadaljevati glede na to, kar je poslušalec dejansko slišal. Za praktično interakcijo pripravite kratek odgovor s pomembnim navodilom najprej in razlago za njim. Če poslušalec po prvem navodilu prekine, lahko naslednji odgovor obravnava novo vprašanje, namesto da bi predpostavljal, da je bila podana celotna razlaga.</p><h4>Vnaprej določen zvok in izhodni formati</h4><p>Paketna sinteza sprejme celoten blok besedila in vrne njegov zvok v enem odgovoru. Uporablja isti katalog glasov kot pretakanje in je primerna za posnete telefonske pozive, obvestila ali pripoved, pripravljeno vnaprej. Paketne zahteve so neodvisne; stanje pretočnih govornih menjav in dogodki prekinitev ne veljajo za vnaprej določen izsek.</p><p>Pretočni izhod je surov zvok brez datotečnega vsebnika: 16-bitni PCM, mu-law ali A-law. Razvijalec dokumentira frekvence vzorčenja PCM 8, 16, 24, 32, 44,1 in 48 kHz; mu-law in A-law uporabljata 8 ali 16 kHz. Paketni izhod dodatno podpira MP3, Opus, FLAC in AAC. Izberite kodiranje in vsebnik, ki ju predvideni predvajalnik ali telefonska pot lahko razume, namesto da bi tok surovih vzorcev obravnavali kot navadno zvočno datoteko.</p><h4>Nastavitve podajanja in meje</h4><p>Proizvajalec dokumentira razpon hitrosti govora od 0,5 do 1,5 v korakih po 0,05. Spremembe pretočne hitrosti začnejo veljati na meji segmenta. Ločena nastavitev izraznosti v različici beta premika podajanje od mirnega do živahnega. Navadni SSML in prepoznane oznake konkurentov se odstranijo, namesto da bi bile uporabljene kot izrazna navodila; izvorne nastavitve Flux imajo svoj pomen.</p><p>Premori znotraj besedila sodijo v paketno sintezo, s trajanji 500–3000 ms v korakih po 100 ms in največ osmimi oznakami na zahtevo. Sosednje premore mora ločevati besedilo, ob prisotnem premoru pa je hitrost omejena na 1,15. Izgovarjavo je mogoče določiti po meri z zapisi IPA; ta možnost je v zgodnjem dostopu Early Access; razvijalec opozarja, da se lahko zahtevana izgovarjava med ustvarjanji razlikuje. Nastavitev izgovarjave po meri ni mogoče združiti z neprivzeto hitrostjo ali nastavitvami premorov. Pri scenariju s strokovnimi imeni poslušajte te izraze v izbranem glasu in govorjeno besedilo ohranite izrecno določeno.</p><p>Dokumentirana Deepgramova pretočna seja traja do ene ure in se zapre po šestdesetih sekundah brez vhodnega sporočila, razen če jo ohranja aktivno podprti mehanizem povezave. Te omejitve seje se nanašajo na potek sinteze v živo. Uporaben izdelek so premišljeno izbran glas, poslušalcu prijazno besedilo in zvok, prilagojen cilju, pri čemer aplikacije v živo spremljajo, kaj je bilo dejansko izgovorjeno ob prekinitvi govorne menjave.</p>",
  "aboutText": "Flux TTS je Deepgramova družina za pretvorbo besedila v govor za pogovor v živo in vnaprej določeno govorno vsebino. Njena opredeljujoča lastnost je pogovorna kontinuiteta: pretočni model prenaša prozodijo med govornimi menjavami, zato lahko podajanje med nadaljevanjem interakcije ohrani dosleden ton. Sprejme pisno besedilo in vrne govorni zvok. Flux TTS in ločeno poimenovani model Flux za prepoznavanje govora opravljata različna dela glasovnega pogovora.\n\n### Izberite angleški glas\n\nDokumentirani katalog Flux govori angleško z ameriškim, britanskim, irskim, avstralskim, indijskim, singapurskim in filipinskim naglasom. Opisi glasov pomagajo izbrati govorca za podporo strankam, telefonske menije, pripovedovanje ali sproščen pogovor. Razvijalec na primer glas Haley opisuje kot miren ameriški glas, glas Jack pa kot profesionalen britanski glas. Glas izberite glede na občinstvo in vrsto besedila, ki ga bo prebral, nato pa ga ohranite doslednega skozi vsebino ali pogovor. Govor v drugih jezikih zahteva ločeno dokumentirano izbiro modela.\n\n### Govorne menjave v živo in prekinitve\n\nV proizvajalčevem pretočnem poteku lahko besedilo prihaja med sestavljanjem odgovora v aplikaciji, zvok pa se vrača postopoma. Govorna menjava ima lastne dogodke začetka in zaključka; konec menjave zaključi preostalo sintezo. Kontekst med menjavami ohranja prozodijo znotraj te seje. To je uporabno za govornega pomočnika, ki najprej pojasni izbiro, nato pa odgovori na dodatno vprašanje brez spremembe glasovnega značaja.\n\nPrekinitev prekliče aktivno govorno menjavo in vrne izgovorjeni del ter preostalo besedilo. To razlikovanje aplikaciji pomaga nadaljevati glede na to, kar je poslušalec dejansko slišal. Za praktično interakcijo pripravite kratek odgovor s pomembnim navodilom najprej in razlago za njim. Če poslušalec po prvem navodilu prekine, lahko naslednji odgovor obravnava novo vprašanje, namesto da bi predpostavljal, da je bila podana celotna razlaga.\n\n### Vnaprej določen zvok in izhodni formati\n\nPaketna sinteza sprejme celoten blok besedila in vrne njegov zvok v enem odgovoru. Uporablja isti katalog glasov kot pretakanje in je primerna za posnete telefonske pozive, obvestila ali pripoved, pripravljeno vnaprej. Paketne zahteve so neodvisne; stanje pretočnih govornih menjav in dogodki prekinitev ne veljajo za vnaprej določen izsek.\n\nPretočni izhod je surov zvok brez datotečnega vsebnika: 16-bitni PCM, mu-law ali A-law. Razvijalec dokumentira frekvence vzorčenja PCM 8, 16, 24, 32, 44,1 in 48 kHz; mu-law in A-law uporabljata 8 ali 16 kHz. Paketni izhod dodatno podpira MP3, Opus, FLAC in AAC. Izberite kodiranje in vsebnik, ki ju predvideni predvajalnik ali telefonska pot lahko razume, namesto da bi tok surovih vzorcev obravnavali kot navadno zvočno datoteko.\n\n### Nastavitve podajanja in meje\n\nProizvajalec dokumentira razpon hitrosti govora od 0,5 do 1,5 v korakih po 0,05. Spremembe pretočne hitrosti začnejo veljati na meji segmenta. Ločena nastavitev izraznosti v različici beta premika podajanje od mirnega do živahnega. Navadni SSML in prepoznane oznake konkurentov se odstranijo, namesto da bi bile uporabljene kot izrazna navodila; izvorne nastavitve Flux imajo svoj pomen.\n\nPremori znotraj besedila sodijo v paketno sintezo, s trajanji 500–3000 ms v korakih po 100 ms in največ osmimi oznakami na zahtevo. Sosednje premore mora ločevati besedilo, ob prisotnem premoru pa je hitrost omejena na 1,15. Izgovarjavo je mogoče določiti po meri z zapisi IPA; ta možnost je v zgodnjem dostopu Early Access; razvijalec opozarja, da se lahko zahtevana izgovarjava med ustvarjanji razlikuje. Nastavitev izgovarjave po meri ni mogoče združiti z neprivzeto hitrostjo ali nastavitvami premorov. Pri scenariju s strokovnimi imeni poslušajte te izraze v izbranem glasu in govorjeno besedilo ohranite izrecno določeno.\n\nDokumentirana Deepgramova pretočna seja traja do ene ure in se zapre po šestdesetih sekundah brez vhodnega sporočila, razen če jo ohranja aktivno podprti mehanizem povezave. Te omejitve seje se nanašajo na potek sinteze v živo. Uporaben izdelek so premišljeno izbran glas, poslušalcu prijazno besedilo in zvok, prilagojen cilju, pri čemer aplikacije v živo spremljajo, kaj je bilo dejansko izgovorjeno ob prekinitvi govorne menjave.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "001880a48747ea7fff5569a8c7d8ffb39446c43960417e3d41d614b29b4b9bb7",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "sl",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Deepgram: Flux TTS</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Zapri\">×</button></div><div class=\"idline\"><span>Deepgram /</span><code>deepgram/flux-tts</code><button type=\"button\" id=\"copy-id\">Kopiraj ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Razdelki kartice modela\"><button type=\"button\" data-card-jump=\"overview\">Začetek</button><button type=\"button\" data-card-jump=\"methods\">Vhodi in metode</button><button type=\"button\" data-card-jump=\"pricing\">Cenik</button><button type=\"button\" data-card-jump=\"examples\">Primeri</button><button type=\"button\" data-card-jump=\"results\">Rezultati</button><button type=\"button\" data-card-jump=\"aliases\">Druga imena</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Metode API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|speech|/v1/audio/speech|deepgram%2Fflux-tts\">Pretvorba v govor</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Začetek</h3><p class=\"mdesc-full\">Deepgram Flux TTS pretvori angleško besedilo v pogovorni govor, pri katerem se ton ohranja med govornimi menjavami. Njegov pretočni način obravnava prekinitve; paketna sinteza ustvari zvok za ponovno uporabo z istim katalogom glasov.</p><dl class=\"card-io\" data-card-io><div><dt>Dovoljeni vhodi</dt><dd>Besedilo</dd></div><div><dt>Rezultati</dt><dd>Zvok</dd></div></dl><details class=\"card-about\"><summary>O modelu</summary><p class=\"note-s\" data-model-method-boundary>Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.</p><div class=\"mabout\" id=\"m-about\"><p>Flux TTS je Deepgramova družina za pretvorbo besedila v govor za pogovor v živo in vnaprej določeno govorno vsebino. Njena opredeljujoča lastnost je pogovorna kontinuiteta: pretočni model prenaša prozodijo med govornimi menjavami, zato lahko podajanje med nadaljevanjem interakcije ohrani dosleden ton. Sprejme pisno besedilo in vrne govorni zvok. Flux TTS in ločeno poimenovani model Flux za prepoznavanje govora opravljata različna dela glasovnega pogovora.</p><h4>Izberite angleški glas</h4><p>Dokumentirani katalog Flux govori angleško z ameriškim, britanskim, irskim, avstralskim, indijskim, singapurskim in filipinskim naglasom. Opisi glasov pomagajo izbrati govorca za podporo strankam, telefonske menije, pripovedovanje ali sproščen pogovor. Razvijalec na primer glas Haley opisuje kot miren ameriški glas, glas Jack pa kot profesionalen britanski glas. Glas izberite glede na občinstvo in vrsto besedila, ki ga bo prebral, nato pa ga ohranite doslednega skozi vsebino ali pogovor. Govor v drugih jezikih zahteva ločeno dokumentirano izbiro modela.</p><h4>Govorne menjave v živo in prekinitve</h4><p>V proizvajalčevem pretočnem poteku lahko besedilo prihaja med sestavljanjem odgovora v aplikaciji, zvok pa se vrača postopoma. Govorna menjava ima lastne dogodke začetka in zaključka; konec menjave zaključi preostalo sintezo. Kontekst med menjavami ohranja prozodijo znotraj te seje. To je uporabno za govornega pomočnika, ki najprej pojasni izbiro, nato pa odgovori na dodatno vprašanje brez spremembe glasovnega značaja.</p><p>Prekinitev prekliče aktivno govorno menjavo in vrne izgovorjeni del ter preostalo besedilo. To razlikovanje aplikaciji pomaga nadaljevati glede na to, kar je poslušalec dejansko slišal. Za praktično interakcijo pripravite kratek odgovor s pomembnim navodilom najprej in razlago za njim. Če poslušalec po prvem navodilu prekine, lahko naslednji odgovor obravnava novo vprašanje, namesto da bi predpostavljal, da je bila podana celotna razlaga.</p><h4>Vnaprej določen zvok in izhodni formati</h4><p>Paketna sinteza sprejme celoten blok besedila in vrne njegov zvok v enem odgovoru. Uporablja isti katalog glasov kot pretakanje in je primerna za posnete telefonske pozive, obvestila ali pripoved, pripravljeno vnaprej. Paketne zahteve so neodvisne; stanje pretočnih govornih menjav in dogodki prekinitev ne veljajo za vnaprej določen izsek.</p><p>Pretočni izhod je surov zvok brez datotečnega vsebnika: 16-bitni PCM, mu-law ali A-law. Razvijalec dokumentira frekvence vzorčenja PCM 8, 16, 24, 32, 44,1 in 48 kHz; mu-law in A-law uporabljata 8 ali 16 kHz. Paketni izhod dodatno podpira MP3, Opus, FLAC in AAC. Izberite kodiranje in vsebnik, ki ju predvideni predvajalnik ali telefonska pot lahko razume, namesto da bi tok surovih vzorcev obravnavali kot navadno zvočno datoteko.</p><h4>Nastavitve podajanja in meje</h4><p>Proizvajalec dokumentira razpon hitrosti govora od 0,5 do 1,5 v korakih po 0,05. Spremembe pretočne hitrosti začnejo veljati na meji segmenta. Ločena nastavitev izraznosti v različici beta premika podajanje od mirnega do živahnega. Navadni SSML in prepoznane oznake konkurentov se odstranijo, namesto da bi bile uporabljene kot izrazna navodila; izvorne nastavitve Flux imajo svoj pomen.</p><p>Premori znotraj besedila sodijo v paketno sintezo, s trajanji 500–3000 ms v korakih po 100 ms in največ osmimi oznakami na zahtevo. Sosednje premore mora ločevati besedilo, ob prisotnem premoru pa je hitrost omejena na 1,15. Izgovarjavo je mogoče določiti po meri z zapisi IPA; ta možnost je v zgodnjem dostopu Early Access; razvijalec opozarja, da se lahko zahtevana izgovarjava med ustvarjanji razlikuje. Nastavitev izgovarjave po meri ni mogoče združiti z neprivzeto hitrostjo ali nastavitvami premorov. Pri scenariju s strokovnimi imeni poslušajte te izraze v izbranem glasu in govorjeno besedilo ohranite izrecno določeno.</p><p>Dokumentirana Deepgramova pretočna seja traja do ene ure in se zapre po šestdesetih sekundah brez vhodnega sporočila, razen če jo ohranja aktivno podprti mehanizem povezave. Te omejitve seje se nanašajo na potek sinteze v živo. Uporaben izdelek so premišljeno izbran glas, poslušalcu prijazno besedilo in zvok, prilagojen cilju, pri čemer aplikacije v živo spremljajo, kaj je bilo dejansko izgovorjeno ob prekinitvi govorne menjave.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Na voljo v Ailoot · vhodi in metode</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Pretvorba v govor</b> <code>POST /v1/audio/speech</code></summary><dl class=\"method-capabilities\"><div><dt>Vhod</dt><dd><code>text</code></dd></div><div><dt>Izhod</dt><dd><code>audio</code></dd></div><div><dt>Izhodni format</dt><dd>mp3</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Polje</th><th>Vrsta</th><th>Zahteva</th><th>Vrednosti in omejitve</th><th>Privzeto</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>string</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>deepgram/flux-tts</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>string</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>Najmanjša dolžina: 1</div><div>Enota: znaki Unicode</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">voice</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>string</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>flux-alexis-en, flux-bree-en, flux-brittany-en, flux-brooke-en, flux-bruce-en, flux-cliff-en, flux-cole-en, flux-colin-en, flux-conor-en, flux-donovan-en, flux-drew-en, flux-elise-en, flux-gemma-en, flux-haley-en, flux-hannah-en, flux-heather-en, flux-jack-en, flux-kai-en, flux-kelsey-en, flux-kit-en, flux-maeve-en, flux-marcelo-en, flux-marcus-en, flux-meena-en, flux-meghan-en, flux-miles-en, flux-naveen-en, flux-paige-en, flux-priya-en, flux-rufus-en, flux-sean-en, flux-sharon-en, flux-sienna-en, flux-tanner-en, flux-wade-en, flux-wes-en</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">response_format</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>string</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>mp3</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Kombinacije vhodnih gradiv</summary><p class=\"note-s\"><b>text_to_speech</b> · Obvezno: input</p></details><details class=\"note-s\" data-method-contract><summary>Parametri in življenjski cikel metode</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Specifikacija</th></tr></thead><tbody><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>content_type</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>application/json</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>required</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>model, input, voice, response_format</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>voice_ids</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>flux-alexis-en, flux-bree-en, flux-brittany-en, flux-brooke-en, flux-bruce-en, flux-cliff-en, flux-cole-en, flux-colin-en, flux-conor-en, flux-donovan-en, flux-drew-en, flux-elise-en, flux-gemma-en, flux-haley-en, flux-hannah-en, flux-heather-en, flux-jack-en, flux-kai-en, flux-kelsey-en, flux-kit-en, flux-maeve-en, flux-marcelo-en, flux-marcus-en, flux-meena-en, flux-meghan-en, flux-miles-en, flux-naveen-en, flux-paige-en, flux-priya-en, flux-rufus-en, flux-sean-en, flux-sharon-en, flux-sienna-en, flux-tanner-en, flux-wade-en, flux-wes-en</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>response_format</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>mp3</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>max_input_characters</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>null</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>other_options</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>false</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>input</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>natančno besedilo UTF-8; število znakov Unicode brez normalizacije</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_types</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>text</td></tr></tbody></table></div><p>Življenjski cikel: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · Dejansko vrnjeni task_id ali zapis v medijski knjižnici</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p><p class=\"note-s\">Izberite natančen glas iz profila tega modela.</p><p class=\"note-s\">Vhodni znaki in zvočne sekunde so različni merili porabe.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Cenik</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.</p><dl data-price-conditions><dt>Hitri način</dt><dd>Ni navedeno <span class=\"note-s\">Ko je izbran hitri način</span></dd><dt>Način flex</dt><dd>Ni navedeno <span class=\"note-s\">Ko je izbran način flex</span></dd><dt>Najvišja raven razmišljanja</dt><dd>Ni navedeno <span class=\"note-s\">Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Cene Ailoot</h4><h4>Cene po nastavitvah</h4><p class=\"note-s\">Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Nastavitev</th><th>Cenovna lestvica</th><th>Obračunska enota</th><th>Strošek</th></tr></thead><tbody><tr><th data-cell-label=\"Nastavitev\" scope=\"row\"><span class=\"card-cell-label\">Nastavitev</span>Osnovne cene žetonov</th><td data-cell-label=\"Cenovna lestvica\"><span class=\"card-cell-label\">Cenovna lestvica</span>Osnovna cena</td><td data-cell-label=\"Obračunska enota\"><span class=\"card-cell-label\">Obračunska enota</span>—</td><td data-cell-label=\"Strošek\"><span class=\"card-cell-label\">Strošek</span><div><span>Vhod · Vhodni žetoni</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Izhod · Izhodni žetoni</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Vhod · Branje predpomnilnika</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Vhod · Zapis v predpomnilnik</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Vhod · Zapis v predpomnilnik, 1 ura</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div></td></tr><tr><th data-cell-label=\"Nastavitev\" scope=\"row\"><span class=\"card-cell-label\">Nastavitev</span>vhodni znak</th><td data-cell-label=\"Cenovna lestvica\"><span class=\"card-cell-label\">Cenovna lestvica</span>—</td><td data-cell-label=\"Obračunska enota\"><span class=\"card-cell-label\">Obračunska enota</span>na vhodni znak</td><td data-cell-label=\"Strošek\"><span class=\"card-cell-label\">Strošek</span><div><span>Vhod · vhodni znak</span> <b>$0.00009</b> <span class=\"price-unit\">na vhodni znak</span></div></td></tr></tbody></table></div></div><div data-declared-reference-pricing><h4>Podrobnosti referenčne tarife</h4><p class=\"note-s\">Referenčne lestvice modela ne spreminjajo izbire metode, ocen cen ali stroškov. Veljavni stroški uporabljajo cene izbrane metode Ailoot.</p><details class=\"card-price-reference\" data-declared-reference-group data-client-selectable=\"false\"><summary>Deepgram: Flux TTS</summary><h4>Cene po nastavitvah</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Nastavitev</th><th>Obračunski pogoji</th><th>Strošek</th></tr></thead><tbody><tr><th data-cell-label=\"Nastavitev\" scope=\"row\"><span class=\"card-cell-label\">Nastavitev</span>Deepgram: Flux TTS · Privzeta konfiguracija</th><td data-cell-label=\"Obračunski pogoji\"><span class=\"card-cell-label\">Obračunski pogoji</span>Privzeta konfiguracija</td><td data-cell-label=\"Strošek\"><span class=\"card-cell-label\">Strošek</span><div><span>Vhod · Vhodni znaki</span> <b>0,00009 $</b> <span class=\"price-unit\">na vhodni znak</span></div></td></tr></tbody></table></div></details></div><p class=\"note-s\">Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. <a href=\"/docs/sl/billing/reserve/\">Kako delujeta rezervacija in obračun →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Primeri zahtev</h3><h4>Ailoot Ultra · Pretvorba v govor</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Primeri kode\"><button class=\"cg-tab\" id=\"model-code-1198-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1198-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopiraj kodo\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1198-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1198-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}&quot;\nexport AILOOT_VOICE_ID\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;deepgram/flux-tts&quot;, &quot;input&quot;: &quot;Good afternoon! This is a short voice take.&quot;}&#39;)\nvoice=os.environ[&quot;AILOOT_VOICE_ID&quot;]\nallowed=json.loads(&#39;[&quot;flux-alexis-en&quot;, &quot;flux-bree-en&quot;, &quot;flux-brittany-en&quot;, &quot;flux-brooke-en&quot;, &quot;flux-bruce-en&quot;, &quot;flux-cliff-en&quot;, &quot;flux-cole-en&quot;, &quot;flux-colin-en&quot;, &quot;flux-conor-en&quot;, &quot;flux-donovan-en&quot;, &quot;flux-drew-en&quot;, &quot;flux-elise-en&quot;, &quot;flux-gemma-en&quot;, &quot;flux-haley-en&quot;, &quot;flux-hannah-en&quot;, &quot;flux-heather-en&quot;, &quot;flux-jack-en&quot;, &quot;flux-kai-en&quot;, &quot;flux-kelsey-en&quot;, &quot;flux-kit-en&quot;, &quot;flux-maeve-en&quot;, &quot;flux-marcelo-en&quot;, &quot;flux-marcus-en&quot;, &quot;flux-meena-en&quot;, &quot;flux-meghan-en&quot;, &quot;flux-miles-en&quot;, &quot;flux-naveen-en&quot;, &quot;flux-paige-en&quot;, &quot;flux-priya-en&quot;, &quot;flux-rufus-en&quot;, &quot;flux-sean-en&quot;, &quot;flux-sharon-en&quot;, &quot;flux-sienna-en&quot;, &quot;flux-tanner-en&quot;, &quot;flux-wade-en&quot;, &quot;flux-wes-en&quot;]&#39;)\nif voice not in allowed: raise SystemExit(&quot;Choose an accepted voice ID from this exact model profile&quot;)\np[&quot;voice&quot;]=voice\np[&quot;response_format&quot;]=&quot;mp3&quot;\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o speech.mp3\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Prejmi in shrani rezultate</h3><h4>Ailoot Ultra · Pretvorba v govor</h4><p class=\"note-s\">mp3</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><details class=\"card-about\"><summary>Branje druge vsebine</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Primeri kode\"><button class=\"cg-tab\" id=\"model-code-1199-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1199-panel-0\" aria-selected=\"true\" tabindex=\"0\">Medijska knjižnica</button><button class=\"cg-tab\" id=\"model-code-1199-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1199-panel-1\" aria-selected=\"false\" tabindex=\"-1\">Stanje opravila</button><button class=\"cg-tab\" id=\"model-code-1199-tab-2\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1199-panel-2\" aria-selected=\"false\" tabindex=\"-1\">Podrobnosti gradiva</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopiraj kodo\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1199-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1199-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o media-assets.json\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-1199-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-1199-tab-1\" hidden><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}&quot;\nexport AILOOT_MEDIA_TASK_ID\nresource_id=$(python3 -c &#39;import os,urllib.parse;print(urllib.parse.quote(os.environ[&quot;AILOOT_MEDIA_TASK_ID&quot;],safe=&quot;&quot;))&#39;)\ncurl --fail-with-body --silent --show-error &quot;https://api.ailoot.ai/v1/media/tasks/$resource_id&quot; \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o media-task.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(&quot;media-task.json&quot;).read_text())))\nPY_RESULT\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-1199-panel-2\" role=\"tabpanel\" aria-labelledby=\"model-code-1199-tab-2\" hidden><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}&quot;\nexport AILOOT_ASSET_ID\nresource_id=$(python3 -c &#39;import os,urllib.parse;print(urllib.parse.quote(os.environ[&quot;AILOOT_ASSET_ID&quot;],safe=&quot;&quot;))&#39;)\ncurl --fail-with-body --silent --show-error &quot;https://api.ailoot.ai/v1/media/assets/$resource_id&quot; \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o media-asset.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(&quot;media-asset.json&quot;).read_text())))\nPY_RESULT\n</code></pre></div></div></div></details><div class=\"card-result-process\" data-all-results><h5>Ohrani vse dokončane rezultate</h5><p class=\"note-s\">Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.</p><p class=\"note-s\">Shranite celoten binarni rezultat in glave. Če so vrnjeni podatki JSON ali več izhodov, shranite vsak podatkovni element in pridobite vsebino z vsakega dejanskega podpisanega URL datoteke.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Če je treba preveriti izvirni odgovor</h5><p class=\"note-s\">Shranite izvirni operation_id/X-Client-Request-ID za uskladitev evidenc brez ponovnega pošiljanja; namenska pot za periodično preverjanje zvoka ne obstaja.</p></div><details class=\"card-about\" data-output-fields><summary>Polja odgovora</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Polje</th><th>Vrsta</th></tr></thead><tbody><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">binary audio</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span>bytes</td></tr><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">response headers</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span>headers</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Napake in naslednji koraki</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Odgovor</th><th>Pogoj</th><th>Naslednji korak</th></tr></thead><tbody><tr><th data-cell-label=\"Odgovor\" scope=\"row\"><span class=\"card-cell-label\">Odgovor</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Pogoj\"><span class=\"card-cell-label\">Pogoj</span>Neveljavna obvezna polja, predstavitev gradiva ali vrednost parametra</td><td data-cell-label=\"Naslednji korak\"><span class=\"card-cell-label\">Naslednji korak</span>Pred novo zahtevo za ustvarjanje popravite navedena polja.</td></tr><tr><th data-cell-label=\"Odgovor\" scope=\"row\"><span class=\"card-cell-label\">Odgovor</span><code>server_error</code></th><td data-cell-label=\"Pogoj\"><span class=\"card-cell-label\">Pogoj</span>Vrnjeni odgovor navaja, da je treba operacijo ali rezultat preveriti</td><td data-cell-label=\"Naslednji korak\"><span class=\"card-cell-label\">Naslednji korak</span>Shranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Druga imena</h3><h4>Druga imena modelov</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=deepgram%2Fflux-tts&amp;route=Ultra&amp;caller=deepgram%2Fflux-tts&amp;fmt=speech\"><code>deepgram/flux-tts</code></a></span></p><h4>Druga imena poti metod</h4><p class=\"note-s\">Uporabite zgoraj navedene poti metod.</p><h4>Povezani ID-ji za klic</h4><p class=\"note-s\"><a href=\"#m=deepgram%2Fflux-tts&amp;route=Ultra&amp;caller=deepgram%2Fflux-tts&amp;fmt=speech\"><code>deepgram/flux-tts</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "deepgram/flux-tts",
        "fmt": "speech",
        "http": "POST",
        "path": "/v1/audio/speech",
        "request_model_id": "deepgram/flux-tts",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|speech|/v1/audio/speech|deepgram%2Fflux-tts",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep the complete binary result and headers. If JSON/multiple outputs are returned, retain every data item and fetch each actual signed asset URL.",
            "errors": [
              {
                "code": null,
                "condition": "Neveljavna obvezna polja, predstavitev gradiva ali vrednost parametra",
                "http_status": 400,
                "recovery": "Pred novo zahtevo za ustvarjanje popravite navedena polja.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Vrnjeni odgovor navaja, da je treba operacijo ali rezultat preveriti",
                "http_status": null,
                "recovery": "Shranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova.",
                "type": "server_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Shranite izvirni operation_id/X-Client-Request-ID za uskladitev evidenc brez ponovnega pošiljanja; namenska pot za periodično preverjanje zvoka ne obstaja."
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "text_to_speech",
                "required": [
                  "input"
                ]
              }
            ],
            "media_library": {
              "asset": {
                "fields": [
                  {
                    "description": null,
                    "name": "asset_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "task_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "output_key",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "family",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "model",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "method",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "status",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "content_type",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "sha256",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "size_bytes",
                    "type": "integer"
                  },
                  {
                    "description": null,
                    "name": "content_url",
                    "type": "string"
                  }
                ],
                "http": "GET",
                "id_source": "actual returned asset_id",
                "path": "/v1/media/assets/{asset_id}"
              },
              "content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "range_header_supported": true,
                "url_source": "Use exact returned signed content_url including its token; do not construct a token."
              },
              "expired_link": {
                "code": "link_expired",
                "http_status": 404,
                "recovery": "Read the asset again to obtain its refreshed signed content_url, then fetch that URL. Do not regenerate."
              },
              "list": {
                "all_pages": "Follow every returned next_cursor, then select records by their actual task_id/output_key.",
                "http": "GET",
                "output_fields": [
                  {
                    "description": null,
                    "name": "object",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "data",
                    "type": "asset[]"
                  },
                  {
                    "description": null,
                    "name": "next_cursor",
                    "type": "string|null"
                  }
                ],
                "parameters": [
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "family",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "cursor",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": 20,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": 100,
                    "minimum": 1,
                    "name": "limit",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/media/assets"
              },
              "revoke": {
                "http": "DELETE",
                "meaning": "Revokes/deletes the existing owned file; this is not generation cancellation.",
                "path": "/v1/media/assets/{asset_id}",
                "pending_status": "revoking",
                "success_statuses": [
                  202,
                  204
                ]
              },
              "task": {
                "http": "GET",
                "id_source": "actual returned task_id or media library record; operation_id is not task_id",
                "path": "/v1/media/tasks/{task_id}"
              }
            },
            "operation_modes": [
              "text_to_speech"
            ],
            "outputs": {
              "all_results": "Shranite celoten binarni rezultat in glave. Če so vrnjeni podatki JSON ali več izhodov, shranite vsak podatkovni element in pridobite vsebino z vsakega dejanskega podpisanega URL datoteke.",
              "family": "audio",
              "fields": [
                {
                  "description": null,
                  "name": "binary audio",
                  "type": "bytes"
                },
                {
                  "description": null,
                  "name": "response headers",
                  "type": "headers"
                }
              ],
              "format": "mp3",
              "http_success": 200
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "deepgram/flux-tts"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "limit_known": false,
                "maximum_length": null,
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string",
                "unit": "znaki Unicode"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "flux-alexis-en",
                  "flux-bree-en",
                  "flux-brittany-en",
                  "flux-brooke-en",
                  "flux-bruce-en",
                  "flux-cliff-en",
                  "flux-cole-en",
                  "flux-colin-en",
                  "flux-conor-en",
                  "flux-donovan-en",
                  "flux-drew-en",
                  "flux-elise-en",
                  "flux-gemma-en",
                  "flux-haley-en",
                  "flux-hannah-en",
                  "flux-heather-en",
                  "flux-jack-en",
                  "flux-kai-en",
                  "flux-kelsey-en",
                  "flux-kit-en",
                  "flux-maeve-en",
                  "flux-marcelo-en",
                  "flux-marcus-en",
                  "flux-meena-en",
                  "flux-meghan-en",
                  "flux-miles-en",
                  "flux-naveen-en",
                  "flux-paige-en",
                  "flux-priya-en",
                  "flux-rufus-en",
                  "flux-sean-en",
                  "flux-sharon-en",
                  "flux-sienna-en",
                  "flux-tanner-en",
                  "flux-wade-en",
                  "flux-wes-en"
                ],
                "enum_known": true,
                "name": "voice",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "mp3"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": true,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "every field outside exactmodel,input,voice,response_format",
              "stream/speed/reference speech options"
            ]
          },
          "hints": [
            "Izberite natančen glas iz profila tega modela.",
            "Vhodni znaki in zvočne sekunde so različni merili porabe."
          ],
          "input": {
            "content_type": "application/json",
            "input": "natančno besedilo UTF-8; število znakov Unicode brez normalizacije",
            "material_types": [
              "text"
            ],
            "max_input_characters": null,
            "other_options": false,
            "required": [
              "model",
              "input",
              "voice",
              "response_format"
            ],
            "response_format": [
              "mp3"
            ],
            "voice_ids": [
              "flux-alexis-en",
              "flux-bree-en",
              "flux-brittany-en",
              "flux-brooke-en",
              "flux-bruce-en",
              "flux-cliff-en",
              "flux-cole-en",
              "flux-colin-en",
              "flux-conor-en",
              "flux-donovan-en",
              "flux-drew-en",
              "flux-elise-en",
              "flux-gemma-en",
              "flux-haley-en",
              "flux-hannah-en",
              "flux-heather-en",
              "flux-jack-en",
              "flux-kai-en",
              "flux-kelsey-en",
              "flux-kit-en",
              "flux-maeve-en",
              "flux-marcelo-en",
              "flux-marcus-en",
              "flux-meena-en",
              "flux-meghan-en",
              "flux-miles-en",
              "flux-naveen-en",
              "flux-paige-en",
              "flux-priya-en",
              "flux-rufus-en",
              "flux-sean-en",
              "flux-sharon-en",
              "flux-sienna-en",
              "flux-tanner-en",
              "flux-wade-en",
              "flux-wes-en"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "Dejansko vrnjeni task_id ali zapis v medijski knjižnici",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route."
          },
          "manufacturer_capability": null,
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_speech"
          ],
          "output": {
            "family": "audio",
            "format": "mp3",
            "http_success": 200,
            "response": "full binary MP3 plus response headers",
            "result": "complete playable owned MP3"
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input character"
            },
            "label": "input character",
            "units": [
              {
                "amount": "0.00009",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_character",
                "label": "input character",
                "native_amount_usd_per_unit": "0.00009",
                "native_quantity": 1,
                "public_unit_label": "per input character",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_character"
              }
            ]
          }
        ],
        "declared_tariff_references": [
          {
            "client_selectable": false,
            "key": "e22bd17cd01d6df3f6fa",
            "label": "Deepgram: Flux TTS",
            "profiles": [
              {
                "basis": "",
                "dimensions": {
                  "conditions": "Privzeta konfiguracija"
                },
                "label": "Deepgram: Flux TTS · Privzeta konfiguracija",
                "units": [
                  {
                    "amount": "0.000090",
                    "amount_unit": "usd_per_exact_physical_unit",
                    "billing_input": false,
                    "key": "6972212d8526f21493ca93b5",
                    "label": "Input characters",
                    "public_unit_label": "per input character",
                    "quantity": "1",
                    "rate_role": "declared_tariff_rate",
                    "side": "in",
                    "unit": "input_character"
                  }
                ]
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}\"\nexport AILOOT_VOICE_ID\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"deepgram/flux-tts\", \"input\": \"Good afternoon! This is a short voice take.\"}')\nvoice=os.environ[\"AILOOT_VOICE_ID\"]\nallowed=json.loads('[\"flux-alexis-en\", \"flux-bree-en\", \"flux-brittany-en\", \"flux-brooke-en\", \"flux-bruce-en\", \"flux-cliff-en\", \"flux-cole-en\", \"flux-colin-en\", \"flux-conor-en\", \"flux-donovan-en\", \"flux-drew-en\", \"flux-elise-en\", \"flux-gemma-en\", \"flux-haley-en\", \"flux-hannah-en\", \"flux-heather-en\", \"flux-jack-en\", \"flux-kai-en\", \"flux-kelsey-en\", \"flux-kit-en\", \"flux-maeve-en\", \"flux-marcelo-en\", \"flux-marcus-en\", \"flux-meena-en\", \"flux-meghan-en\", \"flux-miles-en\", \"flux-naveen-en\", \"flux-paige-en\", \"flux-priya-en\", \"flux-rufus-en\", \"flux-sean-en\", \"flux-sharon-en\", \"flux-sienna-en\", \"flux-tanner-en\", \"flux-wade-en\", \"flux-wes-en\"]')\nif voice not in allowed: raise SystemExit(\"Choose an accepted voice ID from this exact model profile\")\np[\"voice\"]=voice\np[\"response_format\"]=\"mp3\"\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o speech.mp3\n",
            "label": "curl",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-assets.json\n",
            "label": "List actual media assets",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}\"\nexport AILOOT_MEDIA_TASK_ID\nresource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ[\"AILOOT_MEDIA_TASK_ID\"],safe=\"\"))')\ncurl --fail-with-body --silent --show-error \"https://api.ailoot.ai/v1/media/tasks/$resource_id\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-task.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"media-task.json\").read_text())))\nPY_RESULT\n",
            "label": "Read actual media task",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}\"\nexport AILOOT_ASSET_ID\nresource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ[\"AILOOT_ASSET_ID\"],safe=\"\"))')\ncurl --fail-with-body --silent --show-error \"https://api.ailoot.ai/v1/media/assets/$resource_id\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-asset.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"media-asset.json\").read_text())))\nPY_RESULT\n",
            "label": "Read actual asset metadata",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Select exact voice from this model profile.",
          "Input characters and audio seconds are different meters."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Озвучка текста",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "out": null,
        "output": [
          "audio"
        ],
        "path": "/v1/audio/speech",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_character": 9e-05
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input character"
            },
            "label": "input character",
            "units": [
              {
                "amount": "0.00009",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_character",
                "label": "input character",
                "native_amount_usd_per_unit": "0.00009",
                "native_quantity": 1,
                "public_unit_label": "per input character",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_character"
              }
            ]
          }
        ],
        "request_model_id": "deepgram/flux-tts",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}",
          "GET /v1/media/assets/{asset_id}/content"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.00009",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_character",
            "label": "input character",
            "native_amount_usd_per_unit": "0.00009",
            "native_quantity": 1,
            "public_unit_label": "per input character",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_character"
          }
        ]
      }
    }
  ],
  "model_id": "deepgram/flux-tts",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "08a9cb48b8326dae1b4db6864d5f789a8d2d0356dc764e7e4a8d3ac0d4c3ecbe",
    "input_html_sha256": "bbe0f9aec17d0e740f85f7ba1b56af4d4850176574dd4941b25d359d4661105d",
    "private_audit_sha256": "a5f7ee9342fcad565fda58aed3f103dd9ef12cf595d28a68a5464bcb6113d22e",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/sl/deepgram-flux-tts/",
    "description": "Deepgram Flux TTS pretvori angleško besedilo v pogovorni govor, pri katerem se ton ohranja med govornimi menjavami. Njegov pretočni način obravnava prekinitve; paketna sinteza ustvari zvok za ponovno uporabo z istim katalogom glasov.",
    "locale": "sl",
    "md_url": "https://ailoot.ai/models/sl/deepgram-flux-tts/index.md",
    "title": "Deepgram: Flux TTS — Ailoot",
    "url": "https://ailoot.ai/models/sl/deepgram-flux-tts/"
  },
  "rawModel": {
    "about": "Flux TTS je Deepgramova družina za pretvorbo besedila v govor za pogovor v živo in vnaprej določeno govorno vsebino. Njena opredeljujoča lastnost je pogovorna kontinuiteta: pretočni model prenaša prozodijo med govornimi menjavami, zato lahko podajanje med nadaljevanjem interakcije ohrani dosleden ton. Sprejme pisno besedilo in vrne govorni zvok. Flux TTS in ločeno poimenovani model Flux za prepoznavanje govora opravljata različna dela glasovnega pogovora.\n\n### Izberite angleški glas\n\nDokumentirani katalog Flux govori angleško z ameriškim, britanskim, irskim, avstralskim, indijskim, singapurskim in filipinskim naglasom. Opisi glasov pomagajo izbrati govorca za podporo strankam, telefonske menije, pripovedovanje ali sproščen pogovor. Razvijalec na primer glas Haley opisuje kot miren ameriški glas, glas Jack pa kot profesionalen britanski glas. Glas izberite glede na občinstvo in vrsto besedila, ki ga bo prebral, nato pa ga ohranite doslednega skozi vsebino ali pogovor. Govor v drugih jezikih zahteva ločeno dokumentirano izbiro modela.\n\n### Govorne menjave v živo in prekinitve\n\nV proizvajalčevem pretočnem poteku lahko besedilo prihaja med sestavljanjem odgovora v aplikaciji, zvok pa se vrača postopoma. Govorna menjava ima lastne dogodke začetka in zaključka; konec menjave zaključi preostalo sintezo. Kontekst med menjavami ohranja prozodijo znotraj te seje. To je uporabno za govornega pomočnika, ki najprej pojasni izbiro, nato pa odgovori na dodatno vprašanje brez spremembe glasovnega značaja.\n\nPrekinitev prekliče aktivno govorno menjavo in vrne izgovorjeni del ter preostalo besedilo. To razlikovanje aplikaciji pomaga nadaljevati glede na to, kar je poslušalec dejansko slišal. Za praktično interakcijo pripravite kratek odgovor s pomembnim navodilom najprej in razlago za njim. Če poslušalec po prvem navodilu prekine, lahko naslednji odgovor obravnava novo vprašanje, namesto da bi predpostavljal, da je bila podana celotna razlaga.\n\n### Vnaprej določen zvok in izhodni formati\n\nPaketna sinteza sprejme celoten blok besedila in vrne njegov zvok v enem odgovoru. Uporablja isti katalog glasov kot pretakanje in je primerna za posnete telefonske pozive, obvestila ali pripoved, pripravljeno vnaprej. Paketne zahteve so neodvisne; stanje pretočnih govornih menjav in dogodki prekinitev ne veljajo za vnaprej določen izsek.\n\nPretočni izhod je surov zvok brez datotečnega vsebnika: 16-bitni PCM, mu-law ali A-law. Razvijalec dokumentira frekvence vzorčenja PCM 8, 16, 24, 32, 44,1 in 48 kHz; mu-law in A-law uporabljata 8 ali 16 kHz. Paketni izhod dodatno podpira MP3, Opus, FLAC in AAC. Izberite kodiranje in vsebnik, ki ju predvideni predvajalnik ali telefonska pot lahko razume, namesto da bi tok surovih vzorcev obravnavali kot navadno zvočno datoteko.\n\n### Nastavitve podajanja in meje\n\nProizvajalec dokumentira razpon hitrosti govora od 0,5 do 1,5 v korakih po 0,05. Spremembe pretočne hitrosti začnejo veljati na meji segmenta. Ločena nastavitev izraznosti v različici beta premika podajanje od mirnega do živahnega. Navadni SSML in prepoznane oznake konkurentov se odstranijo, namesto da bi bile uporabljene kot izrazna navodila; izvorne nastavitve Flux imajo svoj pomen.\n\nPremori znotraj besedila sodijo v paketno sintezo, s trajanji 500–3000 ms v korakih po 100 ms in največ osmimi oznakami na zahtevo. Sosednje premore mora ločevati besedilo, ob prisotnem premoru pa je hitrost omejena na 1,15. Izgovarjavo je mogoče določiti po meri z zapisi IPA; ta možnost je v zgodnjem dostopu Early Access; razvijalec opozarja, da se lahko zahtevana izgovarjava med ustvarjanji razlikuje. Nastavitev izgovarjave po meri ni mogoče združiti z neprivzeto hitrostjo ali nastavitvami premorov. Pri scenariju s strokovnimi imeni poslušajte te izraze v izbranem glasu in govorjeno besedilo ohranite izrecno določeno.\n\nDokumentirana Deepgramova pretočna seja traja do ene ure in se zapre po šestdesetih sekundah brez vhodnega sporočila, razen če jo ohranja aktivno podprti mehanizem povezave. Te omejitve seje se nanašajo na potek sinteze v živo. Uporaben izdelek so premišljeno izbran glas, poslušalcu prijazno besedilo in zvok, prilagojen cilju, pri čemer aplikacije v živo spremljajo, kaj je bilo dejansko izgovorjeno ob prekinitvi govorne menjave.",
    "alias_of": null,
    "aliases": [],
    "author": "Deepgram",
    "available": null,
    "canonical_model": "deepgram/flux-tts",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "speech"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.00009",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_character",
            "label": "input character",
            "native_amount_usd_per_unit": "0.00009",
            "native_quantity": 1,
            "public_unit_label": "per input character",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_character"
          }
        ],
        "summary": "Celoten cenik konfiguracije je v podrobnostih."
      }
    ],
    "ctx": null,
    "entity_type": "model",
    "formats": [
      "speech"
    ],
    "id": "deepgram/flux-tts",
    "input": [
      "text"
    ],
    "kind": "speech",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep the complete binary result and headers. If JSON/multiple outputs are returned, retain every data item and fetch each actual signed asset URL.",
            "errors": [
              {
                "code": null,
                "condition": "Neveljavna obvezna polja, predstavitev gradiva ali vrednost parametra",
                "http_status": 400,
                "recovery": "Pred novo zahtevo za ustvarjanje popravite navedena polja.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Vrnjeni odgovor navaja, da je treba operacijo ali rezultat preveriti",
                "http_status": null,
                "recovery": "Shranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova.",
                "type": "server_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Shranite izvirni operation_id/X-Client-Request-ID za uskladitev evidenc brez ponovnega pošiljanja; namenska pot za periodično preverjanje zvoka ne obstaja."
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "text_to_speech",
                "required": [
                  "input"
                ]
              }
            ],
            "media_library": {
              "asset": {
                "fields": [
                  {
                    "description": null,
                    "name": "asset_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "task_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "output_key",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "family",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "model",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "method",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "status",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "content_type",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "sha256",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "size_bytes",
                    "type": "integer"
                  },
                  {
                    "description": null,
                    "name": "content_url",
                    "type": "string"
                  }
                ],
                "http": "GET",
                "id_source": "actual returned asset_id",
                "path": "/v1/media/assets/{asset_id}"
              },
              "content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "range_header_supported": true,
                "url_source": "Use exact returned signed content_url including its token; do not construct a token."
              },
              "expired_link": {
                "code": "link_expired",
                "http_status": 404,
                "recovery": "Read the asset again to obtain its refreshed signed content_url, then fetch that URL. Do not regenerate."
              },
              "list": {
                "all_pages": "Follow every returned next_cursor, then select records by their actual task_id/output_key.",
                "http": "GET",
                "output_fields": [
                  {
                    "description": null,
                    "name": "object",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "data",
                    "type": "asset[]"
                  },
                  {
                    "description": null,
                    "name": "next_cursor",
                    "type": "string|null"
                  }
                ],
                "parameters": [
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "family",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "cursor",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": 20,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": 100,
                    "minimum": 1,
                    "name": "limit",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/media/assets"
              },
              "revoke": {
                "http": "DELETE",
                "meaning": "Revokes/deletes the existing owned file; this is not generation cancellation.",
                "path": "/v1/media/assets/{asset_id}",
                "pending_status": "revoking",
                "success_statuses": [
                  202,
                  204
                ]
              },
              "task": {
                "http": "GET",
                "id_source": "actual returned task_id or media library record; operation_id is not task_id",
                "path": "/v1/media/tasks/{task_id}"
              }
            },
            "operation_modes": [
              "text_to_speech"
            ],
            "outputs": {
              "all_results": "Shranite celoten binarni rezultat in glave. Če so vrnjeni podatki JSON ali več izhodov, shranite vsak podatkovni element in pridobite vsebino z vsakega dejanskega podpisanega URL datoteke.",
              "family": "audio",
              "fields": [
                {
                  "description": null,
                  "name": "binary audio",
                  "type": "bytes"
                },
                {
                  "description": null,
                  "name": "response headers",
                  "type": "headers"
                }
              ],
              "format": "mp3",
              "http_success": 200
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "deepgram/flux-tts"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "limit_known": false,
                "maximum_length": null,
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string",
                "unit": "znaki Unicode"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "flux-alexis-en",
                  "flux-bree-en",
                  "flux-brittany-en",
                  "flux-brooke-en",
                  "flux-bruce-en",
                  "flux-cliff-en",
                  "flux-cole-en",
                  "flux-colin-en",
                  "flux-conor-en",
                  "flux-donovan-en",
                  "flux-drew-en",
                  "flux-elise-en",
                  "flux-gemma-en",
                  "flux-haley-en",
                  "flux-hannah-en",
                  "flux-heather-en",
                  "flux-jack-en",
                  "flux-kai-en",
                  "flux-kelsey-en",
                  "flux-kit-en",
                  "flux-maeve-en",
                  "flux-marcelo-en",
                  "flux-marcus-en",
                  "flux-meena-en",
                  "flux-meghan-en",
                  "flux-miles-en",
                  "flux-naveen-en",
                  "flux-paige-en",
                  "flux-priya-en",
                  "flux-rufus-en",
                  "flux-sean-en",
                  "flux-sharon-en",
                  "flux-sienna-en",
                  "flux-tanner-en",
                  "flux-wade-en",
                  "flux-wes-en"
                ],
                "enum_known": true,
                "name": "voice",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "mp3"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": true,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "every field outside exactmodel,input,voice,response_format",
              "stream/speed/reference speech options"
            ]
          },
          "hints": [
            "Izberite natančen glas iz profila tega modela.",
            "Vhodni znaki in zvočne sekunde so različni merili porabe."
          ],
          "input": {
            "content_type": "application/json",
            "input": "natančno besedilo UTF-8; število znakov Unicode brez normalizacije",
            "material_types": [
              "text"
            ],
            "max_input_characters": null,
            "other_options": false,
            "required": [
              "model",
              "input",
              "voice",
              "response_format"
            ],
            "response_format": [
              "mp3"
            ],
            "voice_ids": [
              "flux-alexis-en",
              "flux-bree-en",
              "flux-brittany-en",
              "flux-brooke-en",
              "flux-bruce-en",
              "flux-cliff-en",
              "flux-cole-en",
              "flux-colin-en",
              "flux-conor-en",
              "flux-donovan-en",
              "flux-drew-en",
              "flux-elise-en",
              "flux-gemma-en",
              "flux-haley-en",
              "flux-hannah-en",
              "flux-heather-en",
              "flux-jack-en",
              "flux-kai-en",
              "flux-kelsey-en",
              "flux-kit-en",
              "flux-maeve-en",
              "flux-marcelo-en",
              "flux-marcus-en",
              "flux-meena-en",
              "flux-meghan-en",
              "flux-miles-en",
              "flux-naveen-en",
              "flux-paige-en",
              "flux-priya-en",
              "flux-rufus-en",
              "flux-sean-en",
              "flux-sharon-en",
              "flux-sienna-en",
              "flux-tanner-en",
              "flux-wade-en",
              "flux-wes-en"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "Dejansko vrnjeni task_id ali zapis v medijski knjižnici",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route."
          },
          "manufacturer_capability": null,
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_speech"
          ],
          "output": {
            "family": "audio",
            "format": "mp3",
            "http_success": 200,
            "response": "full binary MP3 plus response headers",
            "result": "complete playable owned MP3"
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input character"
            },
            "label": "input character",
            "units": [
              {
                "amount": "0.00009",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_character",
                "label": "input character",
                "native_amount_usd_per_unit": "0.00009",
                "native_quantity": 1,
                "public_unit_label": "per input character",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_character"
              }
            ]
          }
        ],
        "declared_tariff_references": [
          {
            "client_selectable": false,
            "key": "e22bd17cd01d6df3f6fa",
            "label": "Deepgram: Flux TTS",
            "profiles": [
              {
                "basis": "",
                "dimensions": {
                  "conditions": "Privzeta konfiguracija"
                },
                "label": "Deepgram: Flux TTS · Privzeta konfiguracija",
                "units": [
                  {
                    "amount": "0.000090",
                    "amount_unit": "usd_per_exact_physical_unit",
                    "billing_input": false,
                    "key": "6972212d8526f21493ca93b5",
                    "label": "Input characters",
                    "public_unit_label": "per input character",
                    "quantity": "1",
                    "rate_role": "declared_tariff_rate",
                    "side": "in",
                    "unit": "input_character"
                  }
                ]
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}\"\nexport AILOOT_VOICE_ID\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"deepgram/flux-tts\", \"input\": \"Good afternoon! This is a short voice take.\"}')\nvoice=os.environ[\"AILOOT_VOICE_ID\"]\nallowed=json.loads('[\"flux-alexis-en\", \"flux-bree-en\", \"flux-brittany-en\", \"flux-brooke-en\", \"flux-bruce-en\", \"flux-cliff-en\", \"flux-cole-en\", \"flux-colin-en\", \"flux-conor-en\", \"flux-donovan-en\", \"flux-drew-en\", \"flux-elise-en\", \"flux-gemma-en\", \"flux-haley-en\", \"flux-hannah-en\", \"flux-heather-en\", \"flux-jack-en\", \"flux-kai-en\", \"flux-kelsey-en\", \"flux-kit-en\", \"flux-maeve-en\", \"flux-marcelo-en\", \"flux-marcus-en\", \"flux-meena-en\", \"flux-meghan-en\", \"flux-miles-en\", \"flux-naveen-en\", \"flux-paige-en\", \"flux-priya-en\", \"flux-rufus-en\", \"flux-sean-en\", \"flux-sharon-en\", \"flux-sienna-en\", \"flux-tanner-en\", \"flux-wade-en\", \"flux-wes-en\"]')\nif voice not in allowed: raise SystemExit(\"Choose an accepted voice ID from this exact model profile\")\np[\"voice\"]=voice\np[\"response_format\"]=\"mp3\"\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o speech.mp3\n",
            "label": "curl",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-assets.json\n",
            "label": "List actual media assets",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}\"\nexport AILOOT_MEDIA_TASK_ID\nresource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ[\"AILOOT_MEDIA_TASK_ID\"],safe=\"\"))')\ncurl --fail-with-body --silent --show-error \"https://api.ailoot.ai/v1/media/tasks/$resource_id\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-task.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"media-task.json\").read_text())))\nPY_RESULT\n",
            "label": "Read actual media task",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}\"\nexport AILOOT_ASSET_ID\nresource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ[\"AILOOT_ASSET_ID\"],safe=\"\"))')\ncurl --fail-with-body --silent --show-error \"https://api.ailoot.ai/v1/media/assets/$resource_id\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-asset.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"media-asset.json\").read_text())))\nPY_RESULT\n",
            "label": "Read actual asset metadata",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Select exact voice from this model profile.",
          "Input characters and audio seconds are different meters."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Озвучка текста",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "out": null,
        "output": [
          "audio"
        ],
        "path": "/v1/audio/speech",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_character": 9e-05
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input character"
            },
            "label": "input character",
            "units": [
              {
                "amount": "0.00009",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_character",
                "label": "input character",
                "native_amount_usd_per_unit": "0.00009",
                "native_quantity": 1,
                "public_unit_label": "per input character",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_character"
              }
            ]
          }
        ],
        "request_model_id": "deepgram/flux-tts",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}",
          "GET /v1/media/assets/{asset_id}/content"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.00009",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_character",
            "label": "input character",
            "native_amount_usd_per_unit": "0.00009",
            "native_quantity": 1,
            "public_unit_label": "per input character",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_character"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "deepgram/flux-tts",
        "request_model_id": "deepgram/flux-tts",
        "route_label": "Ultra"
      }
    ],
    "name": "Deepgram: Flux TTS",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "pricing_profiles": [
      {
        "dimensions": {
          "regime": "base"
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.000090",
            "amount_unit": "usd_per_declared_unit",
            "conditions": {},
            "key": "prompt",
            "label": "prompt",
            "quantity": "1",
            "rate_role": "typed_active_maker_rate",
            "side": "in",
            "unit": "input_character"
          }
        ]
      }
    ],
    "public_id": "deepgram/flux-tts",
    "short": "Deepgram Flux TTS pretvori angleško besedilo v pogovorni govor, pri katerem se ton ohranja med govornimi menjavami. Njegov pretočni način obravnava prekinitve; paketna sinteza ustvari zvok za ponovno uporabo z istim katalogom glasov."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Deepgram Flux TTS pretvori angleško besedilo v pogovorni govor, pri katerem se ton ohranja med govornimi menjavami. Njegov pretočni način obravnava prekinitve; paketna sinteza ustvari zvok za ponovno uporabo z istim katalogom glasov.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "cb9f702f6dc64911be282f1882f905a05902e3f26ff12e9fdb0abbf88eb8608b",
    "renderer_sha256": "dcba2271c18b0f9570a8b166e8d1e3166f121e096a58609c3a46da31562a1bf2"
  },
  "sourceRevision": "3f76f25c73e61738a22fed62ee69e3ddb12b2a89311a361561bc6bafc699a6b2"
}
