{
  "aboutHtml": "<p>S2 Pro – tai Fish Audio antrosios kartos teksto vertimo kalba modelis išraiškingam pasakojimui, veikėjų dialogams ir pokalbio balso išvesčiai. Rašytinį scenarijų jis paverčia garsu ir palaiko natūralios kalbos nurodymus žodžio ar frazės lygmeniu. Ankstesnė S1 karta naudoja nurodymus paprastuose skliaustuose, o S2 Pro natyviai naudoja laužtinius skliaustus ir palaiko kelis kalbėtojus vienoje sintezės užklausoje. Gamintojas atskiram pritaikymui išleidžia S2 Pro svorius ir papildomo mokymo kodą; įprasta kalbos užklausa naudoja pasirinktą modelį, o ne moko naują.</p><p>Pirmiausia parašykite sakytinį turinį, tada atlikimo instrukciją įdėkite iškart prieš žodį ar frazę, kurią ji turi paveikti. Nurodymai gali aprašyti šnabždesį, reakciją, pauzę, emocinį pokytį ar laisvai apibrėžtą kalbėjimo stilių. Trumpame produkto paaiškinime išlaikykite aiškų faktinį sakinį ir pabrėžkite tik vietą, kurioje klausytojas turėtų pastebėti skirtumą. Veikėjo replikoje emocinį pokytį aprašykite tada, kai jis įvyksta, užuot visai ištraukai taikę vieną nekintamą nuotaiką.</p><p>Žymos laužtiniuose skliaustuose yra laisvai formuluojami aprašymai, o ne uždaras pasirinkimų sąrašas. Pavyzdžiai: [whispering], [sigh], [long pause] ir frazė, tokia kaip [speaking slowly, almost hesitant]. Žymos gali būti sakinio viduryje ir veikia po jų einančią kalbą. Po aprašomosios žymos turi būti tikras tekstas; atskira instrukcija gali duoti nenuspėjamą išvestį. Prieš pridėdami daugiau sluoksnių pradėkite nuo vieno ar dviejų naudingų nurodymų, nes tarpusavyje konkuruojančios žymos gali užgožti numatytą atlikimą. Skirtingi balso pavyzdžiai į tą patį nurodymą gali reaguoti nevienodu intensyvumu.</p><p>S2 leidimo apraše nurodoma maždaug 80 kalbų ir pateikiami atlikimo instrukcijų rašymo scenarijaus kalba pavyzdžiai. Tekstą parenkite ta kalba, kuria turi būti kalbama, ir išsaugokite vardus, vienetus bei santrumpas, kuriems reikia konkretaus perskaitymo. Daugiakalbis pasakojimas gali išlaikyti numatytą balsą keičiant scenarijaus kalbą, tačiau galutinį rezultatą vis tiek reikia perklausyti, tikrinant tarimą ir nuoseklumą. Sintezė pateiktą turinį paverčia kalba, o ne nusprendžia, kokią informaciją programa turėtų pasakyti.</p><p>Vienam kalbėtojui pasirinkite išsaugotą balso identifikatorių arba pateikite garso pavyzdį su atitinkama transkripcija. Momentiniam balso pritaikymui gamintojas rekomenduoja švarų 10–30 sekundžių pavyzdį. Dialogui naudokite kalbėtojų žymas, tokias kaip &lt;|speaker:0|&gt; ir &lt;|speaker:1|&gt;, su išrikiuotu balso identifikatorių sąrašu arba atskiromis kalbėtojų pavyzdžių grupėmis. Skaitinė žyma pasirenka atitinkamą balso įrašą; tęsiantis pokalbiui išlaikykite tą pačią tvarką. Natūralios kalbos atlikimo nurodymai ir kalbėtojo pasirinkimas scenarijuje atlieka skirtingus vaidmenis.</p><p>Garso išvestis gali būti MP3, WAV, neapdorotas PCM arba Opus. MP3 numatytoji sparta yra 128 kbps, taip pat galima 64 arba 192 kbps; Opus išvestis naudoja 48 kHz, o WAV ir PCM palaiko dokumentuotus diskretizavimo dažnių pasirinkimus 16 bitų monofoniniu formatu. Formatą rinkitės pagal tikrąją paskirtį: išsaugomą pasakojimo failą arba atkūrimui tinkamus garso fragmentus. Gamintojo kalbos darbo eiga taip pat aprašo tiesioginį teksto srautinį perdavimą, kai scenarijus gaunamas palaipsniui. Sugeneruotas rezultatas turėtų likti susietas su visu scenarijumi ir pasirinktais balsais.</p><p>Greitį galima reguliuoti nuo 0.5 iki 2.0, taip pat yra garsumo ir išvesties garsumo normalizavimo valdikliai. Teksto normalizavimas pagerina angliškų ir kiniškų skaičių skaitymą. Apdorojimas naudoja fragmentus 100–300 diapazone ir kiekvieno fragmento garso žetonų biudžetą, todėl šių nustatymų nereikėtų laikyti fiksuota didžiausia viso pasakojimo trukme. Ankstesnio fragmento sąlygojimas gali perduoti balso kontekstą kitam segmentui. Atrankos valdikliai, tokie kaip temperature ir top-p, veikia įvairovę; sąmoningai valdomai replikai vis tiek reikia pakankamai teksto ir konteksto numatytam skambesiui perteikti.</p><p>Naudinga gamybos užduotis atskiria pasakojimą, dialogą ir atlikimo nurodymus, tada nurodo gaunamo rezultato balsą ir formatą. Klausydami tikrinkite praleistus žodžius, pasikartojantį garsą, skaičių tarimą, kalbėtojų pasikeitimus ir reakcijos laiką. Pataisykite neatitikimą sukėlusią repliką ar balso pavyzdį, užuot manę, kad daugiau žymų pagerins kiekvieną ištrauką. S2 Pro lieka atskiru ankstesnės S2 kartos modeliu; S2.1 Pro yra vėlesnis leidimas su savo patobulinimais ir modeliui būdinga nustatymų elgsena.</p>",
  "aboutText": "S2 Pro – tai Fish Audio antrosios kartos teksto vertimo kalba modelis išraiškingam pasakojimui, veikėjų dialogams ir pokalbio balso išvesčiai. Rašytinį scenarijų jis paverčia garsu ir palaiko natūralios kalbos nurodymus žodžio ar frazės lygmeniu. Ankstesnė S1 karta naudoja nurodymus paprastuose skliaustuose, o S2 Pro natyviai naudoja laužtinius skliaustus ir palaiko kelis kalbėtojus vienoje sintezės užklausoje. Gamintojas atskiram pritaikymui išleidžia S2 Pro svorius ir papildomo mokymo kodą; įprasta kalbos užklausa naudoja pasirinktą modelį, o ne moko naują.\n\nPirmiausia parašykite sakytinį turinį, tada atlikimo instrukciją įdėkite iškart prieš žodį ar frazę, kurią ji turi paveikti. Nurodymai gali aprašyti šnabždesį, reakciją, pauzę, emocinį pokytį ar laisvai apibrėžtą kalbėjimo stilių. Trumpame produkto paaiškinime išlaikykite aiškų faktinį sakinį ir pabrėžkite tik vietą, kurioje klausytojas turėtų pastebėti skirtumą. Veikėjo replikoje emocinį pokytį aprašykite tada, kai jis įvyksta, užuot visai ištraukai taikę vieną nekintamą nuotaiką.\n\nŽymos laužtiniuose skliaustuose yra laisvai formuluojami aprašymai, o ne uždaras pasirinkimų sąrašas. Pavyzdžiai: [whispering], [sigh], [long pause] ir frazė, tokia kaip [speaking slowly, almost hesitant]. Žymos gali būti sakinio viduryje ir veikia po jų einančią kalbą. Po aprašomosios žymos turi būti tikras tekstas; atskira instrukcija gali duoti nenuspėjamą išvestį. Prieš pridėdami daugiau sluoksnių pradėkite nuo vieno ar dviejų naudingų nurodymų, nes tarpusavyje konkuruojančios žymos gali užgožti numatytą atlikimą. Skirtingi balso pavyzdžiai į tą patį nurodymą gali reaguoti nevienodu intensyvumu.\n\nS2 leidimo apraše nurodoma maždaug 80 kalbų ir pateikiami atlikimo instrukcijų rašymo scenarijaus kalba pavyzdžiai. Tekstą parenkite ta kalba, kuria turi būti kalbama, ir išsaugokite vardus, vienetus bei santrumpas, kuriems reikia konkretaus perskaitymo. Daugiakalbis pasakojimas gali išlaikyti numatytą balsą keičiant scenarijaus kalbą, tačiau galutinį rezultatą vis tiek reikia perklausyti, tikrinant tarimą ir nuoseklumą. Sintezė pateiktą turinį paverčia kalba, o ne nusprendžia, kokią informaciją programa turėtų pasakyti.\n\nVienam kalbėtojui pasirinkite išsaugotą balso identifikatorių arba pateikite garso pavyzdį su atitinkama transkripcija. Momentiniam balso pritaikymui gamintojas rekomenduoja švarų 10–30 sekundžių pavyzdį. Dialogui naudokite kalbėtojų žymas, tokias kaip <|speaker:0|> ir <|speaker:1|>, su išrikiuotu balso identifikatorių sąrašu arba atskiromis kalbėtojų pavyzdžių grupėmis. Skaitinė žyma pasirenka atitinkamą balso įrašą; tęsiantis pokalbiui išlaikykite tą pačią tvarką. Natūralios kalbos atlikimo nurodymai ir kalbėtojo pasirinkimas scenarijuje atlieka skirtingus vaidmenis.\n\nGarso išvestis gali būti MP3, WAV, neapdorotas PCM arba Opus. MP3 numatytoji sparta yra 128 kbps, taip pat galima 64 arba 192 kbps; Opus išvestis naudoja 48 kHz, o WAV ir PCM palaiko dokumentuotus diskretizavimo dažnių pasirinkimus 16 bitų monofoniniu formatu. Formatą rinkitės pagal tikrąją paskirtį: išsaugomą pasakojimo failą arba atkūrimui tinkamus garso fragmentus. Gamintojo kalbos darbo eiga taip pat aprašo tiesioginį teksto srautinį perdavimą, kai scenarijus gaunamas palaipsniui. Sugeneruotas rezultatas turėtų likti susietas su visu scenarijumi ir pasirinktais balsais.\n\nGreitį galima reguliuoti nuo 0.5 iki 2.0, taip pat yra garsumo ir išvesties garsumo normalizavimo valdikliai. Teksto normalizavimas pagerina angliškų ir kiniškų skaičių skaitymą. Apdorojimas naudoja fragmentus 100–300 diapazone ir kiekvieno fragmento garso žetonų biudžetą, todėl šių nustatymų nereikėtų laikyti fiksuota didžiausia viso pasakojimo trukme. Ankstesnio fragmento sąlygojimas gali perduoti balso kontekstą kitam segmentui. Atrankos valdikliai, tokie kaip temperature ir top-p, veikia įvairovę; sąmoningai valdomai replikai vis tiek reikia pakankamai teksto ir konteksto numatytam skambesiui perteikti.\n\nNaudinga gamybos užduotis atskiria pasakojimą, dialogą ir atlikimo nurodymus, tada nurodo gaunamo rezultato balsą ir formatą. Klausydami tikrinkite praleistus žodžius, pasikartojantį garsą, skaičių tarimą, kalbėtojų pasikeitimus ir reakcijos laiką. Pataisykite neatitikimą sukėlusią repliką ar balso pavyzdį, užuot manę, kad daugiau žymų pagerins kiekvieną ištrauką. S2 Pro lieka atskiru ankstesnės S2 kartos modeliu; S2.1 Pro yra vėlesnis leidimas su savo patobulinimais ir modeliui būdinga nustatymų elgsena.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "fc35cf9abc117dd3312bfad5db173eed4c9fdd9bec65604e46c05b0d93b2831f",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "lt",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Fish Audio: S2 Pro</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Uždaryti\">×</button></div><div class=\"idline\"><span>Fish Audio /</span><code>fish-audio/s2-pro</code><button type=\"button\" id=\"copy-id\">Kopijuoti ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Modelio kortelės skyriai\"><button type=\"button\" data-card-jump=\"overview\">Pradžia</button><button type=\"button\" data-card-jump=\"methods\">Įvestys ir metodai</button><button type=\"button\" data-card-jump=\"pricing\">Planai</button><button type=\"button\" data-card-jump=\"examples\">Pavyzdžiai</button><button type=\"button\" data-card-jump=\"results\">Rezultatai</button><button type=\"button\" data-card-jump=\"aliases\">Pseudonimai</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API metodai\"><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|fish-audio%2Fs2-pro\">Įgarsinimas</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\">Pradžia</h3><p class=\"mdesc-full\">Fish Audio S2 Pro kuria išraiškingą daugiakalbę kalbą su žodžių lygmens atlikimo nurodymais ir natyviais kelių kalbėtojų dialogais. Instrukcijos laužtiniuose skliaustuose valdo scenarijaus atlikimą, balso pavyzdžiai apibrėžia kalbėtojus, o išvesties nustatymai formuoja garso rezultatą.</p><dl class=\"card-io\" data-card-io><div><dt>Leidžiamos įvestys</dt><dd>Tekstas</dd></div><div><dt>Rezultatai</dt><dd>Garsas</dd></div></dl><details class=\"card-about\"><summary>Apie modelį</summary><p class=\"note-s\" data-model-method-boundary>Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.</p><div class=\"mabout\" id=\"m-about\"><p>S2 Pro – tai Fish Audio antrosios kartos teksto vertimo kalba modelis išraiškingam pasakojimui, veikėjų dialogams ir pokalbio balso išvesčiai. Rašytinį scenarijų jis paverčia garsu ir palaiko natūralios kalbos nurodymus žodžio ar frazės lygmeniu. Ankstesnė S1 karta naudoja nurodymus paprastuose skliaustuose, o S2 Pro natyviai naudoja laužtinius skliaustus ir palaiko kelis kalbėtojus vienoje sintezės užklausoje. Gamintojas atskiram pritaikymui išleidžia S2 Pro svorius ir papildomo mokymo kodą; įprasta kalbos užklausa naudoja pasirinktą modelį, o ne moko naują.</p><p>Pirmiausia parašykite sakytinį turinį, tada atlikimo instrukciją įdėkite iškart prieš žodį ar frazę, kurią ji turi paveikti. Nurodymai gali aprašyti šnabždesį, reakciją, pauzę, emocinį pokytį ar laisvai apibrėžtą kalbėjimo stilių. Trumpame produkto paaiškinime išlaikykite aiškų faktinį sakinį ir pabrėžkite tik vietą, kurioje klausytojas turėtų pastebėti skirtumą. Veikėjo replikoje emocinį pokytį aprašykite tada, kai jis įvyksta, užuot visai ištraukai taikę vieną nekintamą nuotaiką.</p><p>Žymos laužtiniuose skliaustuose yra laisvai formuluojami aprašymai, o ne uždaras pasirinkimų sąrašas. Pavyzdžiai: [whispering], [sigh], [long pause] ir frazė, tokia kaip [speaking slowly, almost hesitant]. Žymos gali būti sakinio viduryje ir veikia po jų einančią kalbą. Po aprašomosios žymos turi būti tikras tekstas; atskira instrukcija gali duoti nenuspėjamą išvestį. Prieš pridėdami daugiau sluoksnių pradėkite nuo vieno ar dviejų naudingų nurodymų, nes tarpusavyje konkuruojančios žymos gali užgožti numatytą atlikimą. Skirtingi balso pavyzdžiai į tą patį nurodymą gali reaguoti nevienodu intensyvumu.</p><p>S2 leidimo apraše nurodoma maždaug 80 kalbų ir pateikiami atlikimo instrukcijų rašymo scenarijaus kalba pavyzdžiai. Tekstą parenkite ta kalba, kuria turi būti kalbama, ir išsaugokite vardus, vienetus bei santrumpas, kuriems reikia konkretaus perskaitymo. Daugiakalbis pasakojimas gali išlaikyti numatytą balsą keičiant scenarijaus kalbą, tačiau galutinį rezultatą vis tiek reikia perklausyti, tikrinant tarimą ir nuoseklumą. Sintezė pateiktą turinį paverčia kalba, o ne nusprendžia, kokią informaciją programa turėtų pasakyti.</p><p>Vienam kalbėtojui pasirinkite išsaugotą balso identifikatorių arba pateikite garso pavyzdį su atitinkama transkripcija. Momentiniam balso pritaikymui gamintojas rekomenduoja švarų 10–30 sekundžių pavyzdį. Dialogui naudokite kalbėtojų žymas, tokias kaip &lt;|speaker:0|&gt; ir &lt;|speaker:1|&gt;, su išrikiuotu balso identifikatorių sąrašu arba atskiromis kalbėtojų pavyzdžių grupėmis. Skaitinė žyma pasirenka atitinkamą balso įrašą; tęsiantis pokalbiui išlaikykite tą pačią tvarką. Natūralios kalbos atlikimo nurodymai ir kalbėtojo pasirinkimas scenarijuje atlieka skirtingus vaidmenis.</p><p>Garso išvestis gali būti MP3, WAV, neapdorotas PCM arba Opus. MP3 numatytoji sparta yra 128 kbps, taip pat galima 64 arba 192 kbps; Opus išvestis naudoja 48 kHz, o WAV ir PCM palaiko dokumentuotus diskretizavimo dažnių pasirinkimus 16 bitų monofoniniu formatu. Formatą rinkitės pagal tikrąją paskirtį: išsaugomą pasakojimo failą arba atkūrimui tinkamus garso fragmentus. Gamintojo kalbos darbo eiga taip pat aprašo tiesioginį teksto srautinį perdavimą, kai scenarijus gaunamas palaipsniui. Sugeneruotas rezultatas turėtų likti susietas su visu scenarijumi ir pasirinktais balsais.</p><p>Greitį galima reguliuoti nuo 0.5 iki 2.0, taip pat yra garsumo ir išvesties garsumo normalizavimo valdikliai. Teksto normalizavimas pagerina angliškų ir kiniškų skaičių skaitymą. Apdorojimas naudoja fragmentus 100–300 diapazone ir kiekvieno fragmento garso žetonų biudžetą, todėl šių nustatymų nereikėtų laikyti fiksuota didžiausia viso pasakojimo trukme. Ankstesnio fragmento sąlygojimas gali perduoti balso kontekstą kitam segmentui. Atrankos valdikliai, tokie kaip temperature ir top-p, veikia įvairovę; sąmoningai valdomai replikai vis tiek reikia pakankamai teksto ir konteksto numatytam skambesiui perteikti.</p><p>Naudinga gamybos užduotis atskiria pasakojimą, dialogą ir atlikimo nurodymus, tada nurodo gaunamo rezultato balsą ir formatą. Klausydami tikrinkite praleistus žodžius, pasikartojantį garsą, skaičių tarimą, kalbėtojų pasikeitimus ir reakcijos laiką. Pataisykite neatitikimą sukėlusią repliką ar balso pavyzdį, užuot manę, kad daugiau žymų pagerins kiekvieną ištrauką. S2 Pro lieka atskiru ankstesnės S2 kartos modeliu; S2.1 Pro yra vėlesnis leidimas su savo patobulinimais ir modeliui būdinga nustatymų elgsena.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Prieinama Ailoot · įvestys ir metodai</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Kalba</b> <code>POST /v1/audio/speech</code></summary><dl class=\"method-capabilities\"><div><dt>Įvestis</dt><dd><code>text</code></dd></div><div><dt>Išvestis</dt><dd><code>audio</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Laukas</th><th>Tipas</th><th>Reikalavimas</th><th>Reikšmės ir ribos</th><th>Numatyta</th></tr></thead><tbody><tr><th data-cell-label=\"Laukas\" scope=\"row\"><span class=\"card-cell-label\">Laukas</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Tipas\" data-field-type><span class=\"card-cell-label\">Tipas</span><code>string</code></td><td data-cell-label=\"Reikalavimas\"><span class=\"card-cell-label\">Reikalavimas</span>Privaloma</td><td data-cell-label=\"Reikšmės ir ribos\"><span class=\"card-cell-label\">Reikšmės ir ribos</span><div>fish-audio/s2-pro</div></td><td data-cell-label=\"Numatyta\" data-default=\"unspecified\"><span class=\"card-cell-label\">Numatyta</span>—</td></tr><tr><th data-cell-label=\"Laukas\" scope=\"row\"><span class=\"card-cell-label\">Laukas</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"Tipas\" data-field-type><span class=\"card-cell-label\">Tipas</span><code>string</code></td><td data-cell-label=\"Reikalavimas\"><span class=\"card-cell-label\">Reikalavimas</span>Privaloma</td><td data-cell-label=\"Reikšmės ir ribos\"><span class=\"card-cell-label\">Reikšmės ir ribos</span><div>Mažiausias ilgis: 1</div></td><td data-cell-label=\"Numatyta\" data-default=\"unspecified\"><span class=\"card-cell-label\">Numatyta</span>—</td></tr><tr><th data-cell-label=\"Laukas\" scope=\"row\"><span class=\"card-cell-label\">Laukas</span><code class=\"card-field-name\">voice</code></th><td data-cell-label=\"Tipas\" data-field-type><span class=\"card-cell-label\">Tipas</span><code>string</code></td><td data-cell-label=\"Reikalavimas\"><span class=\"card-cell-label\">Reikalavimas</span>Privaloma</td><td data-cell-label=\"Reikšmės ir ribos\"><span class=\"card-cell-label\">Reikšmės ir ribos</span><div>b347db033a6549378b48d00acb0d06cd</div><div>Mažiausias ilgis: 1</div></td><td data-cell-label=\"Numatyta\" data-default=\"unspecified\"><span class=\"card-cell-label\">Numatyta</span>—</td></tr><tr><th data-cell-label=\"Laukas\" scope=\"row\"><span class=\"card-cell-label\">Laukas</span><code class=\"card-field-name\">response_format</code></th><td data-cell-label=\"Tipas\" data-field-type><span class=\"card-cell-label\">Tipas</span><code>string</code></td><td data-cell-label=\"Reikalavimas\"><span class=\"card-cell-label\">Reikalavimas</span>Neprivaloma</td><td data-cell-label=\"Reikšmės ir ribos\"><span class=\"card-cell-label\">Reikšmės ir ribos</span><div>mp3, pcm</div></td><td data-cell-label=\"Numatyta\" data-default=\"known\"><span class=\"card-cell-label\">Numatyta</span>pcm</td></tr><tr><th data-cell-label=\"Laukas\" scope=\"row\"><span class=\"card-cell-label\">Laukas</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"Tipas\" data-field-type><span class=\"card-cell-label\">Tipas</span><code>object</code></td><td data-cell-label=\"Reikalavimas\"><span class=\"card-cell-label\">Reikalavimas</span>Neprivaloma</td><td data-cell-label=\"Reikšmės ir ribos\"><span class=\"card-cell-label\">Reikšmės ir ribos</span></td><td data-cell-label=\"Numatyta\" data-default=\"unspecified\"><span class=\"card-cell-label\">Numatyta</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Metodo parametrai ir gyvavimo ciklas</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parametras</th><th>Specifikacija</th></tr></thead><tbody><tr><th data-cell-label=\"Parametras\" scope=\"row\"><span class=\"card-cell-label\">Parametras</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=\"Parametras\" scope=\"row\"><span class=\"card-cell-label\">Parametras</span><code>required</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>model, input, voice</td></tr><tr><th data-cell-label=\"Parametras\" scope=\"row\"><span class=\"card-cell-label\">Parametras</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>Gyvavimo ciklas: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · faktiškai grąžinta task_id reikšmė arba medijos bibliotekos įrašas</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></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Planai</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.</p><dl data-price-conditions><dt>Spartusis režimas</dt><dd>Nenurodyta <span class=\"note-s\">Pasirinkus spartųjį režimą</span></dd><dt>Flex režimas</dt><dd>Nenurodyta <span class=\"note-s\">Pasirinkus flex režimą</span></dd><dt>Didžiausios samprotavimo pastangos</dt><dd>Nenurodyta <span class=\"note-s\">Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot įkainiai</h4><h4>Kainos pagal konfigūraciją</h4><p class=\"note-s\">Kiekvieną mokestį susiekite su nurodytomis sąlygomis. Kiekvienam alternatyvių konfigūracijų rinkiniui taikykite vieną įkainį.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfigūracija</th><th>Įkainių lentelė</th><th>Apskaitos vienetas</th><th>Mokestis</th></tr></thead><tbody><tr><th data-cell-label=\"Konfigūracija\" scope=\"row\"><span class=\"card-cell-label\">Konfigūracija</span>Baziniai žetonų įkainiai</th><td data-cell-label=\"Įkainių lentelė\"><span class=\"card-cell-label\">Įkainių lentelė</span>Bazinis įkainis</td><td data-cell-label=\"Apskaitos vienetas\"><span class=\"card-cell-label\">Apskaitos vienetas</span>—</td><td data-cell-label=\"Mokestis\"><span class=\"card-cell-label\">Mokestis</span><div><span>Įvestis · Įvesties tokenai</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenų</span></div><div><span>Išvestis · Išvesties tokenai</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenų</span></div><div><span>Įvestis · Talpyklos skaitymas</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenų</span></div><div><span>Įvestis · Rašymas į talpyklą</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenų</span></div><div><span>Įvestis · Rašymas į talpyklą, 1 val</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenų</span></div></td></tr><tr><th data-cell-label=\"Konfigūracija\" scope=\"row\"><span class=\"card-cell-label\">Konfigūracija</span>įvesties UTF-8 baitas</th><td data-cell-label=\"Įkainių lentelė\"><span class=\"card-cell-label\">Įkainių lentelė</span>—</td><td data-cell-label=\"Apskaitos vienetas\"><span class=\"card-cell-label\">Apskaitos vienetas</span>už įvesties UTF-8 baitą</td><td data-cell-label=\"Mokestis\"><span class=\"card-cell-label\">Mokestis</span><div><span>Įvestis · įvesties UTF-8 baitas</span> <b>$0.00003</b> <span class=\"price-unit\">už įvesties UTF-8 baitą</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. <a href=\"/docs/lt/billing/reserve/\">Kaip veikia rezervavimas ir atsiskaitymas →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Užklausų pavyzdžiai</h3><h4>Ailoot Ultra · Kalba</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kodo variantai\"><button class=\"cg-tab\" id=\"model-code-1355-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1355-panel-0\" aria-selected=\"true\" tabindex=\"0\">Naudokite tikrus įvesties duomenis ir išsaugokite visą rezultatą</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopijuoti kodą\"><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-1355-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1355-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_INPUT_TEXT:?Set the actual documented input value}&quot;\nexport AILOOT_INPUT_TEXT\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\nrequest={&#39;model&#39;: &#39;fish-audio/s2-pro&#39;, &#39;input&#39;: &#39;${ACTUAL_INPUT_TEXT}&#39;, &#39;voice&#39;: &#39;b347db033a6549378b48d00acb0d06cd&#39;, &#39;response_format&#39;: &#39;mp3&#39;}\nrequest[&#39;input&#39;]=os.environ[&#39;AILOOT_INPUT_TEXT&#39;]\nPath(&#39;request.json&#39;).write_text(json.dumps(request,ensure_ascii=False),encoding=&#39;utf-8&#39;)\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 response.bin\n# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Gauti ir išsaugoti rezultatus</h3><h4>Ailoot Ultra · Kalba</h4><p class=\"note-s\">Visas dvejetainis garsas arba pradinis audio_url atsakymas, antraštės ir kiekvienas jums priklausantis išteklius.</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>Kito turinio skaitymas</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kodo variantai\"><button class=\"cg-tab\" id=\"model-code-1356-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1356-panel-0\" aria-selected=\"true\" tabindex=\"0\">Skaityti esamą jums priklausančią medžiagą</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopijuoti kodą\"><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-1356-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1356-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 owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n</code></pre></div></div></div></details><div class=\"card-result-process\" data-all-results><h5>Išsaugoti visus baigtus rezultatus</h5><p class=\"note-s\">Išsaugokite kiekvieną visą grąžintą atsakymą, failą ir turinio dalį.</p><p class=\"note-s\">Išsaugokite visą atsakymą ir antraštes, visus faktiškai gautus rezultatus, pradinius grąžintus identifikatorius ir visus naudojimo apskaitos laukus. Atkurkite prieigą prie pradinės operacijos pakartotinai neteikdami kūrimo užklausos.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Jei reikia patikrinti pradinį atsakymą</h5><p class=\"note-s\">Išsaugokite grąžintą X-Client-Request-ID duomenims sutikrinti. Tikrinkite tik faktiškai grąžintas task_id/asset_id reikšmes arba jums priklausančią medijos biblioteką; niekada nekurkite užduoties URL iš operacijos ID ir niekada pakartotinai neteikite kūrimo užklausos.</p></div></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Pseudonimai</h3><h4>Modelių pseudonimai</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=fish-audio%2Fs2-pro&amp;route=Ultra&amp;caller=fish-audio%2Fs2-pro&amp;fmt=speech\"><code>fish-audio/s2-pro</code></a></span></p><h4>Metodų kelių pseudonimai</h4><p class=\"note-s\">Naudokite aukščiau nurodytus metodų kelius.</p><h4>Susiję ID iškvietimui</h4><p class=\"note-s\"><a href=\"#m=fish-audio%2Fs2-pro&amp;route=Ultra&amp;caller=fish-audio%2Fs2-pro&amp;fmt=speech\"><code>fish-audio/s2-pro</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "fish-audio/s2-pro",
        "fmt": "speech",
        "http": "POST",
        "path": "/v1/audio/speech",
        "request_model_id": "fish-audio/s2-pro",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|speech|/v1/audio/speech|fish-audio%2Fs2-pro",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "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": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Išsaugokite grąžintą X-Client-Request-ID duomenims sutikrinti. Tikrinkite tik faktiškai grąžintas task_id/asset_id reikšmes arba jums priklausančią medijos biblioteką; niekada nekurkite užduoties URL iš operacijos ID ir niekada pakartotinai neteikite kūrimo užklausos."
            },
            "outputs": {
              "all_results": "Išsaugokite visą atsakymą ir antraštes, visus faktiškai gautus rezultatus, pradinius grąžintus identifikatorius ir visus naudojimo apskaitos laukus. Atkurkite prieigą prie pradinės operacijos pakartotinai neteikdami kūrimo užklausos.",
              "family": "audio",
              "formats": [
                "mp3",
                "pcm"
              ],
              "result": "Visas dvejetainis garsas arba pradinis audio_url atsakymas, antraštės ir kiekvienas jums priklausantis išteklius."
            },
            "parameters": [
              {
                "enum": [
                  "fish-audio/s2-pro"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "b347db033a6549378b48d00acb0d06cd"
                ],
                "enum_known": true,
                "min_length": 1,
                "name": "voice",
                "required": true,
                "type": "string"
              },
              {
                "default": "pcm",
                "default_known": true,
                "enum": [
                  "mp3",
                  "pcm"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input": {
                  "minLength": 1,
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "fish-audio/s2-pro"
                  ],
                  "type": "string"
                },
                "provider": {
                  "description": "Documented speech data policy and provider-specific options.",
                  "properties": {
                    "data_collection": {
                      "enum": [
                        "allow",
                        "deny",
                        null
                      ],
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "options": {
                      "type": "object"
                    },
                    "zdr": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "response_format": {
                  "default": "pcm",
                  "enum": [
                    "mp3",
                    "pcm"
                  ],
                  "type": "string"
                },
                "voice": {
                  "enum": [
                    "b347db033a6549378b48d00acb0d06cd"
                  ],
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input",
                "voice"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "${ACTUAL_INPUT_TEXT}",
                "model": "fish-audio/s2-pro",
                "response_format": "mp3",
                "voice": "b347db033a6549378b48d00acb0d06cd"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "required": [
              "model",
              "input",
              "voice"
            ]
          },
          "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": "faktiškai grąžinta task_id reikšmė arba medijos bibliotekos įrašas",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "audio",
            "formats": [
              "mp3",
              "pcm"
            ],
            "result": "Complete binary audio or original audio_url response, headers and every owned asset."
          }
        },
        "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 UTF-8 byte"
            },
            "label": "input UTF-8 byte",
            "units": [
              {
                "amount": "0.00003",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_utf8_byte",
                "label": "input UTF-8 byte",
                "native_amount_usd_per_unit": "0.00003",
                "native_quantity": 1,
                "public_unit_label": "per input UTF-8 byte",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_utf8_byte"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_INPUT_TEXT:?Set the actual documented input value}\"\nexport AILOOT_INPUT_TEXT\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\nrequest={'model': 'fish-audio/s2-pro', 'input': '${ACTUAL_INPUT_TEXT}', 'voice': 'b347db033a6549378b48d00acb0d06cd', 'response_format': 'mp3'}\nrequest['input']=os.environ['AILOOT_INPUT_TEXT']\nPath('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')\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 response.bin\n# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n",
            "label": "Use actual input and retain the complete result",
            "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 owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Kalba",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_speech",
        "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_utf8_byte": 3e-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 UTF-8 byte"
            },
            "label": "input UTF-8 byte",
            "units": [
              {
                "amount": "0.00003",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_utf8_byte",
                "label": "input UTF-8 byte",
                "native_amount_usd_per_unit": "0.00003",
                "native_quantity": 1,
                "public_unit_label": "per input UTF-8 byte",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_utf8_byte"
              }
            ]
          }
        ],
        "request_model_id": "fish-audio/s2-pro",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "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.00003",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_utf8_byte",
            "label": "input UTF-8 byte",
            "native_amount_usd_per_unit": "0.00003",
            "native_quantity": 1,
            "public_unit_label": "per input UTF-8 byte",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_utf8_byte"
          }
        ]
      }
    }
  ],
  "model_id": "fish-audio/s2-pro",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "e0177755b3b164af3acff6decfce30e9187d1a1d42351593e9ae082fd6146fd6",
    "input_html_sha256": "a48f595df4eb04cac2b1d16369bc868012f49fc395fbee0c40bb9303f1ac71b2",
    "private_audit_sha256": "d13f638348a9e98f6c80385eeb5981bcc66c66d2f1ea632fe8e0abd9fdcef658",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/lt/fish-audio-s2-pro/",
    "description": "Fish Audio S2 Pro kuria išraiškingą daugiakalbę kalbą su žodžių lygmens atlikimo nurodymais ir natyviais kelių kalbėtojų dialogais. Instrukcijos laužtiniuose skliaustuose valdo scenarijaus atlikimą, balso pavyzdžiai apibrėžia kalbėtojus, o išvesties nustatymai formuoja garso rezultatą.",
    "locale": "lt",
    "md_url": "https://ailoot.ai/models/lt/fish-audio-s2-pro/index.md",
    "title": "Fish Audio: S2 Pro — Ailoot",
    "url": "https://ailoot.ai/models/lt/fish-audio-s2-pro/"
  },
  "rawModel": {
    "about": "S2 Pro – tai Fish Audio antrosios kartos teksto vertimo kalba modelis išraiškingam pasakojimui, veikėjų dialogams ir pokalbio balso išvesčiai. Rašytinį scenarijų jis paverčia garsu ir palaiko natūralios kalbos nurodymus žodžio ar frazės lygmeniu. Ankstesnė S1 karta naudoja nurodymus paprastuose skliaustuose, o S2 Pro natyviai naudoja laužtinius skliaustus ir palaiko kelis kalbėtojus vienoje sintezės užklausoje. Gamintojas atskiram pritaikymui išleidžia S2 Pro svorius ir papildomo mokymo kodą; įprasta kalbos užklausa naudoja pasirinktą modelį, o ne moko naują.\n\nPirmiausia parašykite sakytinį turinį, tada atlikimo instrukciją įdėkite iškart prieš žodį ar frazę, kurią ji turi paveikti. Nurodymai gali aprašyti šnabždesį, reakciją, pauzę, emocinį pokytį ar laisvai apibrėžtą kalbėjimo stilių. Trumpame produkto paaiškinime išlaikykite aiškų faktinį sakinį ir pabrėžkite tik vietą, kurioje klausytojas turėtų pastebėti skirtumą. Veikėjo replikoje emocinį pokytį aprašykite tada, kai jis įvyksta, užuot visai ištraukai taikę vieną nekintamą nuotaiką.\n\nŽymos laužtiniuose skliaustuose yra laisvai formuluojami aprašymai, o ne uždaras pasirinkimų sąrašas. Pavyzdžiai: [whispering], [sigh], [long pause] ir frazė, tokia kaip [speaking slowly, almost hesitant]. Žymos gali būti sakinio viduryje ir veikia po jų einančią kalbą. Po aprašomosios žymos turi būti tikras tekstas; atskira instrukcija gali duoti nenuspėjamą išvestį. Prieš pridėdami daugiau sluoksnių pradėkite nuo vieno ar dviejų naudingų nurodymų, nes tarpusavyje konkuruojančios žymos gali užgožti numatytą atlikimą. Skirtingi balso pavyzdžiai į tą patį nurodymą gali reaguoti nevienodu intensyvumu.\n\nS2 leidimo apraše nurodoma maždaug 80 kalbų ir pateikiami atlikimo instrukcijų rašymo scenarijaus kalba pavyzdžiai. Tekstą parenkite ta kalba, kuria turi būti kalbama, ir išsaugokite vardus, vienetus bei santrumpas, kuriems reikia konkretaus perskaitymo. Daugiakalbis pasakojimas gali išlaikyti numatytą balsą keičiant scenarijaus kalbą, tačiau galutinį rezultatą vis tiek reikia perklausyti, tikrinant tarimą ir nuoseklumą. Sintezė pateiktą turinį paverčia kalba, o ne nusprendžia, kokią informaciją programa turėtų pasakyti.\n\nVienam kalbėtojui pasirinkite išsaugotą balso identifikatorių arba pateikite garso pavyzdį su atitinkama transkripcija. Momentiniam balso pritaikymui gamintojas rekomenduoja švarų 10–30 sekundžių pavyzdį. Dialogui naudokite kalbėtojų žymas, tokias kaip <|speaker:0|> ir <|speaker:1|>, su išrikiuotu balso identifikatorių sąrašu arba atskiromis kalbėtojų pavyzdžių grupėmis. Skaitinė žyma pasirenka atitinkamą balso įrašą; tęsiantis pokalbiui išlaikykite tą pačią tvarką. Natūralios kalbos atlikimo nurodymai ir kalbėtojo pasirinkimas scenarijuje atlieka skirtingus vaidmenis.\n\nGarso išvestis gali būti MP3, WAV, neapdorotas PCM arba Opus. MP3 numatytoji sparta yra 128 kbps, taip pat galima 64 arba 192 kbps; Opus išvestis naudoja 48 kHz, o WAV ir PCM palaiko dokumentuotus diskretizavimo dažnių pasirinkimus 16 bitų monofoniniu formatu. Formatą rinkitės pagal tikrąją paskirtį: išsaugomą pasakojimo failą arba atkūrimui tinkamus garso fragmentus. Gamintojo kalbos darbo eiga taip pat aprašo tiesioginį teksto srautinį perdavimą, kai scenarijus gaunamas palaipsniui. Sugeneruotas rezultatas turėtų likti susietas su visu scenarijumi ir pasirinktais balsais.\n\nGreitį galima reguliuoti nuo 0.5 iki 2.0, taip pat yra garsumo ir išvesties garsumo normalizavimo valdikliai. Teksto normalizavimas pagerina angliškų ir kiniškų skaičių skaitymą. Apdorojimas naudoja fragmentus 100–300 diapazone ir kiekvieno fragmento garso žetonų biudžetą, todėl šių nustatymų nereikėtų laikyti fiksuota didžiausia viso pasakojimo trukme. Ankstesnio fragmento sąlygojimas gali perduoti balso kontekstą kitam segmentui. Atrankos valdikliai, tokie kaip temperature ir top-p, veikia įvairovę; sąmoningai valdomai replikai vis tiek reikia pakankamai teksto ir konteksto numatytam skambesiui perteikti.\n\nNaudinga gamybos užduotis atskiria pasakojimą, dialogą ir atlikimo nurodymus, tada nurodo gaunamo rezultato balsą ir formatą. Klausydami tikrinkite praleistus žodžius, pasikartojantį garsą, skaičių tarimą, kalbėtojų pasikeitimus ir reakcijos laiką. Pataisykite neatitikimą sukėlusią repliką ar balso pavyzdį, užuot manę, kad daugiau žymų pagerins kiekvieną ištrauką. S2 Pro lieka atskiru ankstesnės S2 kartos modeliu; S2.1 Pro yra vėlesnis leidimas su savo patobulinimais ir modeliui būdinga nustatymų elgsena.",
    "alias_of": null,
    "aliases": [],
    "author": "Fish Audio",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "speech"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.00003",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_utf8_byte",
            "label": "input UTF-8 byte",
            "native_amount_usd_per_unit": "0.00003",
            "native_quantity": 1,
            "public_unit_label": "per input UTF-8 byte",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_utf8_byte"
          }
        ],
        "summary": "Visa konfigūracijos kainodara pateikta išsamioje informacijoje."
      }
    ],
    "ctx": null,
    "formats": [
      "speech"
    ],
    "id": "fish-audio/s2-pro",
    "input": [
      "text"
    ],
    "kind": "audio",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "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": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Išsaugokite grąžintą X-Client-Request-ID duomenims sutikrinti. Tikrinkite tik faktiškai grąžintas task_id/asset_id reikšmes arba jums priklausančią medijos biblioteką; niekada nekurkite užduoties URL iš operacijos ID ir niekada pakartotinai neteikite kūrimo užklausos."
            },
            "outputs": {
              "all_results": "Išsaugokite visą atsakymą ir antraštes, visus faktiškai gautus rezultatus, pradinius grąžintus identifikatorius ir visus naudojimo apskaitos laukus. Atkurkite prieigą prie pradinės operacijos pakartotinai neteikdami kūrimo užklausos.",
              "family": "audio",
              "formats": [
                "mp3",
                "pcm"
              ],
              "result": "Visas dvejetainis garsas arba pradinis audio_url atsakymas, antraštės ir kiekvienas jums priklausantis išteklius."
            },
            "parameters": [
              {
                "enum": [
                  "fish-audio/s2-pro"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "b347db033a6549378b48d00acb0d06cd"
                ],
                "enum_known": true,
                "min_length": 1,
                "name": "voice",
                "required": true,
                "type": "string"
              },
              {
                "default": "pcm",
                "default_known": true,
                "enum": [
                  "mp3",
                  "pcm"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input": {
                  "minLength": 1,
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "fish-audio/s2-pro"
                  ],
                  "type": "string"
                },
                "provider": {
                  "description": "Documented speech data policy and provider-specific options.",
                  "properties": {
                    "data_collection": {
                      "enum": [
                        "allow",
                        "deny",
                        null
                      ],
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "options": {
                      "type": "object"
                    },
                    "zdr": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "response_format": {
                  "default": "pcm",
                  "enum": [
                    "mp3",
                    "pcm"
                  ],
                  "type": "string"
                },
                "voice": {
                  "enum": [
                    "b347db033a6549378b48d00acb0d06cd"
                  ],
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input",
                "voice"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "${ACTUAL_INPUT_TEXT}",
                "model": "fish-audio/s2-pro",
                "response_format": "mp3",
                "voice": "b347db033a6549378b48d00acb0d06cd"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "required": [
              "model",
              "input",
              "voice"
            ]
          },
          "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": "faktiškai grąžinta task_id reikšmė arba medijos bibliotekos įrašas",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "audio",
            "formats": [
              "mp3",
              "pcm"
            ],
            "result": "Complete binary audio or original audio_url response, headers and every owned asset."
          }
        },
        "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 UTF-8 byte"
            },
            "label": "input UTF-8 byte",
            "units": [
              {
                "amount": "0.00003",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_utf8_byte",
                "label": "input UTF-8 byte",
                "native_amount_usd_per_unit": "0.00003",
                "native_quantity": 1,
                "public_unit_label": "per input UTF-8 byte",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_utf8_byte"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_INPUT_TEXT:?Set the actual documented input value}\"\nexport AILOOT_INPUT_TEXT\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\nrequest={'model': 'fish-audio/s2-pro', 'input': '${ACTUAL_INPUT_TEXT}', 'voice': 'b347db033a6549378b48d00acb0d06cd', 'response_format': 'mp3'}\nrequest['input']=os.environ['AILOOT_INPUT_TEXT']\nPath('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')\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 response.bin\n# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n",
            "label": "Use actual input and retain the complete result",
            "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 owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Kalba",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_speech",
        "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_utf8_byte": 3e-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 UTF-8 byte"
            },
            "label": "input UTF-8 byte",
            "units": [
              {
                "amount": "0.00003",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_utf8_byte",
                "label": "input UTF-8 byte",
                "native_amount_usd_per_unit": "0.00003",
                "native_quantity": 1,
                "public_unit_label": "per input UTF-8 byte",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_utf8_byte"
              }
            ]
          }
        ],
        "request_model_id": "fish-audio/s2-pro",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "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.00003",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_utf8_byte",
            "label": "input UTF-8 byte",
            "native_amount_usd_per_unit": "0.00003",
            "native_quantity": 1,
            "public_unit_label": "per input UTF-8 byte",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_utf8_byte"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "fish-audio/s2-pro",
        "request_model_id": "fish-audio/s2-pro",
        "route_label": "Ultra"
      }
    ],
    "name": "Fish Audio: S2 Pro",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "Fish Audio S2 Pro kuria išraiškingą daugiakalbę kalbą su žodžių lygmens atlikimo nurodymais ir natyviais kelių kalbėtojų dialogais. Instrukcijos laužtiniuose skliaustuose valdo scenarijaus atlikimą, balso pavyzdžiai apibrėžia kalbėtojus, o išvesties nustatymai formuoja garso rezultatą."
  },
  "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": "Fish Audio S2 Pro kuria išraiškingą daugiakalbę kalbą su žodžių lygmens atlikimo nurodymais ir natyviais kelių kalbėtojų dialogais. Instrukcijos laužtiniuose skliaustuose valdo scenarijaus atlikimą, balso pavyzdžiai apibrėžia kalbėtojus, o išvesties nustatymai formuoja garso rezultatą.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "a062545611a98654fc600edf9f180e536606e4f1d859b50dbf9a5c79185394f9",
    "renderer_sha256": "57bd2f8a61f57d341aae369006eca818e3eea645ec43af488ec7b2289eeca772"
  },
  "sourceRevision": "d4913ff9fdf8d40b3e5d1d3d278d020c6cc402efd0ddc14b45a43c7793ca28c5"
}
