{
  "aboutHtml": "<h4>Rýchla syntéza konverzačných replík</h4><p>Speech 2.8 Turbo spája rýchle vytváranie audia s prirodzenou intonáciou hlasu. Výrobca predstavuje Turbo ako variant pre plynulé konverzačné znenie: krátke repliky, čítanie textu nahlas a hlasovú interakciu. Táto karta prijíma text a vracia hovorené audio.</p><h4>Smiech, dych a citoslovcia</h4><p>Rovnako ako HD verzia tejto generácie podporuje Turbo zvukové značky Speech 2.8. Do textu možno vložiť označenia smiechu, uchechtnutia, kašľa, odkašľania, nádychu, výdychu, povzdychu a ďalších krátkych zvukov. Takáto riadená nepravidelnosť približuje repliku bežnému rozhovoru: objavuje sa v nej dych a prestávky súvisiace s obsahom.</p><p>Zvuková značka sa vzťahuje na konkrétne miesto v texte. Používajú sa na to označenia podporované modelom v okrúhlych zátvorkách, napríklad <code>(laughs)</code> alebo <code>(breath)</code>. Ľubovoľný opis efektu nie je rovnocennou náhradou podporovanej značky.</p><h4>Hlas a jazyk</h4><p>Rodina Speech 2.8 podporuje <strong>40 jazykov</strong> vrátane ruštiny a prácu s pripravenými hlasmi. Výrobca vyzdvihuje rozpoznateľnú farbu hlasu, charakteristické dýchanie a obmedzenie digitálnych skreslení. Klonovanie patrí k samostatnej príprave hlasu, ktorý možno následne použiť pri syntéze.</p><p>MiniMax umožňuje výber hlasu a ovládanie tempa, hlasitosti a výšky tónu. Rýchlosť sa nastavuje v rozsahu <strong>0,5–2</strong>, hlasitosť nad 0 až do <strong>10</strong> a zmena výšky tónu od <strong>−12 do 12</strong>. Emóciu možno ponechať na model podľa významu textu alebo ju určiť ručne: radosť, smútok, hnev, strach, znechutenie, prekvapenie alebo pokoj.</p><p>Výslovnosť možno spresniť slovníkom náhrad a fonetickým zápisom; podporuje medzinárodnú fonetickú abecedu, čínsky pchin-jin a japonské varianty čítania. Prestávky sa zadávajú medzi vyslovovanými úsekmi v rozsahu <strong>0,01–99,99 sekundy</strong>. Ich dĺžka sa zadáva s presnosťou na dve desatinné miesta; značky sa umiestňujú medzi vyslovované úseky a nevkladajú sa bezprostredne za sebou. Tieto nastavenia umožňujú zosúladiť znenie mien, skratiek a nejednoznačných slov so zámerom nahovorenia.</p><h4>Postupný výstup a formát audia</h4><p>Syntéza prijíma text kratší než <strong>10 000 znakov</strong>. Pri dlhých textoch nad 3000 znakov výrobca odporúča streamovaný výstup; k dispozícii je aj získanie hotového audia vcelku. Všeobecné nastavenia syntézy zahŕňajú MP3, PCM, FLAC, WAV, Opus a varianty G.711 μ-law, mono alebo stereo; dostupnú sadu formátov konkrétnej požiadavky určujú možnosti Ailoot.</p><p>Rýchlosť Turbo je vlastnosť variantu modelu, nie prísľub pevného času čakania na hotovú repliku. Číselná hodnota oneskorenia tejto požiadavky sa tu neuvádza. Uvedené rozšírené nastavenia výrobcu vyžadujú podporu vo zvolenom spôsobe prístupu cez Ailoot.</p><p>Ďalšie nastavenia zvuku zahŕňajú vzorkovacie frekvencie <strong>8, 16, 22,05, 24, 32 a 44,1 kHz</strong>. Pre MP3 je k dispozícii dátový tok <strong>32, 64, 128 alebo 256 kbit/s</strong>. Možno tiež meniť farbu hlasu a použiť jeden efekt: priestrannú ozvenu, ozvenu sály, telefonické znenie alebo robotický hlas. Efekty zmeny hlasu sú pri získaní audia vcelku podporované pre MP3, WAV a FLAC, pri streamovanom výstupe iba pre MP3. Formáty G.711 μ-law používajú frekvenciu 8 kHz. Tieto možnosti patria k nastaveniam syntézy MiniMax.</p><p>Výrobca umožňuje synchronizáciu reči s textom: časové značky po vetách, slovách alebo po slovách pri postupnom výstupe. Takýto výsledok pomáha zosúladiť hovorenie so zobrazovaním textu. Táto doplnková možnosť vyžaduje podporu príslušného formátu odpovede.</p>",
  "aboutText": "### Rýchla syntéza konverzačných replík\n\nSpeech 2.8 Turbo spája rýchle vytváranie audia s prirodzenou intonáciou hlasu. Výrobca predstavuje Turbo ako variant pre plynulé konverzačné znenie: krátke repliky, čítanie textu nahlas a hlasovú interakciu. Táto karta prijíma text a vracia hovorené audio.\n\n### Smiech, dych a citoslovcia\n\nRovnako ako HD verzia tejto generácie podporuje Turbo zvukové značky Speech 2.8. Do textu možno vložiť označenia smiechu, uchechtnutia, kašľa, odkašľania, nádychu, výdychu, povzdychu a ďalších krátkych zvukov. Takáto riadená nepravidelnosť približuje repliku bežnému rozhovoru: objavuje sa v nej dych a prestávky súvisiace s obsahom.\n\nZvuková značka sa vzťahuje na konkrétne miesto v texte. Používajú sa na to označenia podporované modelom v okrúhlych zátvorkách, napríklad `(laughs)` alebo `(breath)`. Ľubovoľný opis efektu nie je rovnocennou náhradou podporovanej značky.\n\n### Hlas a jazyk\n\nRodina Speech 2.8 podporuje **40 jazykov** vrátane ruštiny a prácu s pripravenými hlasmi. Výrobca vyzdvihuje rozpoznateľnú farbu hlasu, charakteristické dýchanie a obmedzenie digitálnych skreslení. Klonovanie patrí k samostatnej príprave hlasu, ktorý možno následne použiť pri syntéze.\n\nMiniMax umožňuje výber hlasu a ovládanie tempa, hlasitosti a výšky tónu. Rýchlosť sa nastavuje v rozsahu **0,5–2**, hlasitosť nad 0 až do **10** a zmena výšky tónu od **−12 do 12**. Emóciu možno ponechať na model podľa významu textu alebo ju určiť ručne: radosť, smútok, hnev, strach, znechutenie, prekvapenie alebo pokoj.\n\nVýslovnosť možno spresniť slovníkom náhrad a fonetickým zápisom; podporuje medzinárodnú fonetickú abecedu, čínsky pchin-jin a japonské varianty čítania. Prestávky sa zadávajú medzi vyslovovanými úsekmi v rozsahu **0,01–99,99 sekundy**. Ich dĺžka sa zadáva s presnosťou na dve desatinné miesta; značky sa umiestňujú medzi vyslovované úseky a nevkladajú sa bezprostredne za sebou. Tieto nastavenia umožňujú zosúladiť znenie mien, skratiek a nejednoznačných slov so zámerom nahovorenia.\n\n### Postupný výstup a formát audia\n\nSyntéza prijíma text kratší než **10 000 znakov**. Pri dlhých textoch nad 3000 znakov výrobca odporúča streamovaný výstup; k dispozícii je aj získanie hotového audia vcelku. Všeobecné nastavenia syntézy zahŕňajú MP3, PCM, FLAC, WAV, Opus a varianty G.711 μ-law, mono alebo stereo; dostupnú sadu formátov konkrétnej požiadavky určujú možnosti Ailoot.\n\nRýchlosť Turbo je vlastnosť variantu modelu, nie prísľub pevného času čakania na hotovú repliku. Číselná hodnota oneskorenia tejto požiadavky sa tu neuvádza. Uvedené rozšírené nastavenia výrobcu vyžadujú podporu vo zvolenom spôsobe prístupu cez Ailoot.\n\nĎalšie nastavenia zvuku zahŕňajú vzorkovacie frekvencie **8, 16, 22,05, 24, 32 a 44,1 kHz**. Pre MP3 je k dispozícii dátový tok **32, 64, 128 alebo 256 kbit/s**. Možno tiež meniť farbu hlasu a použiť jeden efekt: priestrannú ozvenu, ozvenu sály, telefonické znenie alebo robotický hlas. Efekty zmeny hlasu sú pri získaní audia vcelku podporované pre MP3, WAV a FLAC, pri streamovanom výstupe iba pre MP3. Formáty G.711 μ-law používajú frekvenciu 8 kHz. Tieto možnosti patria k nastaveniam syntézy MiniMax.\n\nVýrobca umožňuje synchronizáciu reči s textom: časové značky po vetách, slovách alebo po slovách pri postupnom výstupe. Takýto výsledok pomáha zosúladiť hovorenie so zobrazovaním textu. Táto doplnková možnosť vyžaduje podporu príslušného formátu odpovede.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "c9907fd61f397e30f93c2a05c4a5a6f29cb76330dd294c698956ed451da134c4",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "sk",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">MM</span><h2 id=\"sheet-title\">MiniMax: Speech 2.8 Turbo</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Zavrieť\">×</button></div><div class=\"idline\"><span>MiniMax /</span><code>minimax/speech-2.8-turbo</code><button type=\"button\" id=\"copy-id\">Skopírovať ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Sekcie karty modelu\"><button type=\"button\" data-card-jump=\"overview\">Úvod</button><button type=\"button\" data-card-jump=\"methods\">Vstupy a metódy</button><button type=\"button\" data-card-jump=\"pricing\">Cenník</button><button type=\"button\" data-card-jump=\"examples\">Príklady</button><button type=\"button\" data-card-jump=\"results\">Výsledky</button><button type=\"button\" data-card-jump=\"aliases\">Aliasy</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Metódy 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|minimax%2Fspeech-2.8-turbo\">Syntéza reči</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\">Úvod</h3><p class=\"mdesc-full\">Speech 2.8 Turbo — rýchla syntéza prirodzenej reči so zvukovými značkami a ovládaním výrazovosti.</p><dl class=\"card-io\" data-card-io><div><dt>Povolené vstupy</dt><dd>Text</dd></div><div><dt>Výsledky</dt><dd>Audio</dd></div></dl><details class=\"card-about\"><summary>O modeli</summary><p class=\"note-s\" data-model-method-boundary>Tento opis pokrýva možnosti modelu. Dostupné vstupy, výstupy a voľby v Ailoot sú uvedené nižšie pre vybranú metódu.</p><div class=\"mabout\" id=\"m-about\"><h4>Rýchla syntéza konverzačných replík</h4><p>Speech 2.8 Turbo spája rýchle vytváranie audia s prirodzenou intonáciou hlasu. Výrobca predstavuje Turbo ako variant pre plynulé konverzačné znenie: krátke repliky, čítanie textu nahlas a hlasovú interakciu. Táto karta prijíma text a vracia hovorené audio.</p><h4>Smiech, dych a citoslovcia</h4><p>Rovnako ako HD verzia tejto generácie podporuje Turbo zvukové značky Speech 2.8. Do textu možno vložiť označenia smiechu, uchechtnutia, kašľa, odkašľania, nádychu, výdychu, povzdychu a ďalších krátkych zvukov. Takáto riadená nepravidelnosť približuje repliku bežnému rozhovoru: objavuje sa v nej dych a prestávky súvisiace s obsahom.</p><p>Zvuková značka sa vzťahuje na konkrétne miesto v texte. Používajú sa na to označenia podporované modelom v okrúhlych zátvorkách, napríklad <code>(laughs)</code> alebo <code>(breath)</code>. Ľubovoľný opis efektu nie je rovnocennou náhradou podporovanej značky.</p><h4>Hlas a jazyk</h4><p>Rodina Speech 2.8 podporuje <strong>40 jazykov</strong> vrátane ruštiny a prácu s pripravenými hlasmi. Výrobca vyzdvihuje rozpoznateľnú farbu hlasu, charakteristické dýchanie a obmedzenie digitálnych skreslení. Klonovanie patrí k samostatnej príprave hlasu, ktorý možno následne použiť pri syntéze.</p><p>MiniMax umožňuje výber hlasu a ovládanie tempa, hlasitosti a výšky tónu. Rýchlosť sa nastavuje v rozsahu <strong>0,5–2</strong>, hlasitosť nad 0 až do <strong>10</strong> a zmena výšky tónu od <strong>−12 do 12</strong>. Emóciu možno ponechať na model podľa významu textu alebo ju určiť ručne: radosť, smútok, hnev, strach, znechutenie, prekvapenie alebo pokoj.</p><p>Výslovnosť možno spresniť slovníkom náhrad a fonetickým zápisom; podporuje medzinárodnú fonetickú abecedu, čínsky pchin-jin a japonské varianty čítania. Prestávky sa zadávajú medzi vyslovovanými úsekmi v rozsahu <strong>0,01–99,99 sekundy</strong>. Ich dĺžka sa zadáva s presnosťou na dve desatinné miesta; značky sa umiestňujú medzi vyslovované úseky a nevkladajú sa bezprostredne za sebou. Tieto nastavenia umožňujú zosúladiť znenie mien, skratiek a nejednoznačných slov so zámerom nahovorenia.</p><h4>Postupný výstup a formát audia</h4><p>Syntéza prijíma text kratší než <strong>10 000 znakov</strong>. Pri dlhých textoch nad 3000 znakov výrobca odporúča streamovaný výstup; k dispozícii je aj získanie hotového audia vcelku. Všeobecné nastavenia syntézy zahŕňajú MP3, PCM, FLAC, WAV, Opus a varianty G.711 μ-law, mono alebo stereo; dostupnú sadu formátov konkrétnej požiadavky určujú možnosti Ailoot.</p><p>Rýchlosť Turbo je vlastnosť variantu modelu, nie prísľub pevného času čakania na hotovú repliku. Číselná hodnota oneskorenia tejto požiadavky sa tu neuvádza. Uvedené rozšírené nastavenia výrobcu vyžadujú podporu vo zvolenom spôsobe prístupu cez Ailoot.</p><p>Ďalšie nastavenia zvuku zahŕňajú vzorkovacie frekvencie <strong>8, 16, 22,05, 24, 32 a 44,1 kHz</strong>. Pre MP3 je k dispozícii dátový tok <strong>32, 64, 128 alebo 256 kbit/s</strong>. Možno tiež meniť farbu hlasu a použiť jeden efekt: priestrannú ozvenu, ozvenu sály, telefonické znenie alebo robotický hlas. Efekty zmeny hlasu sú pri získaní audia vcelku podporované pre MP3, WAV a FLAC, pri streamovanom výstupe iba pre MP3. Formáty G.711 μ-law používajú frekvenciu 8 kHz. Tieto možnosti patria k nastaveniam syntézy MiniMax.</p><p>Výrobca umožňuje synchronizáciu reči s textom: časové značky po vetách, slovách alebo po slovách pri postupnom výstupe. Takýto výsledok pomáha zosúladiť hovorenie so zobrazovaním textu. Táto doplnková možnosť vyžaduje podporu príslušného formátu odpovede.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Dostupné v Ailoot · vstupy a metódy</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Syntéza reči</b> <code>POST /v1/audio/speech</code></summary><dl class=\"method-capabilities\"><div><dt>Vstup</dt><dd><code>text</code></dd></div><div><dt>Výstup</dt><dd><code>audio</code></dd></div><div><dt>Výstupný formát</dt><dd>mp3</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Pole</th><th>Typ</th><th>Požiadavka</th><th>Hodnoty a limity</th><th>Predvolené</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string</code></td><td data-cell-label=\"Požiadavka\"><span class=\"card-cell-label\">Požiadavka</span>Povinné</td><td data-cell-label=\"Hodnoty a limity\"><span class=\"card-cell-label\">Hodnoty a limity</span><div>minimax/speech-2.8-turbo</div></td><td data-cell-label=\"Predvolené\" data-default=\"unspecified\"><span class=\"card-cell-label\">Predvolené</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string</code></td><td data-cell-label=\"Požiadavka\"><span class=\"card-cell-label\">Požiadavka</span>Povinné</td><td data-cell-label=\"Hodnoty a limity\"><span class=\"card-cell-label\">Hodnoty a limity</span><div>Minimálna dĺžka: 1</div><div>Jednotka: znaky Unicode</div></td><td data-cell-label=\"Predvolené\" data-default=\"unspecified\"><span class=\"card-cell-label\">Predvolené</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">voice</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string</code></td><td data-cell-label=\"Požiadavka\"><span class=\"card-cell-label\">Požiadavka</span>Povinné</td><td data-cell-label=\"Hodnoty a limity\"><span class=\"card-cell-label\">Hodnoty a limity</span><div>English_expressive_narrator, English_radiant_girl, English_magnetic_voiced_man, English_compelling_lady1, English_Aussie_Bloke, English_captivating_female1, English_Upbeat_Woman, English_Trustworth_Man, English_CalmWoman, English_UpsetGirl, English_Gentle-voiced_man, English_Whispering_girl, English_Diligent_Man, English_Graceful_Lady, English_ReservedYoungMan, English_PlayfulGirl, English_ManWithDeepVoice, English_MaturePartner, English_FriendlyPerson, English_MatureBoss, English_Debator, English_LovelyGirl, English_Steadymentor, English_Deep-VoicedGentleman, English_Wiselady, English_CaptivatingStoryteller, English_DecentYoungMan, English_SentimentalLady, English_ImposingManner, English_SadTeen, English_PassionateWarrior, English_WiseScholar, English_Soft-spokenGirl, English_SereneWoman, English_ConfidentWoman, English_PatientMan, English_Comedian, English_BossyLeader, English_Strong-WilledBoy, English_StressedLady, English_AssertiveQueen, English_AnimeCharacter, English_Jovialman, English_WhimsicalGirl, English_Kind-heartedGirl</div></td><td data-cell-label=\"Predvolené\" data-default=\"unspecified\"><span class=\"card-cell-label\">Predvolené</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">response_format</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string</code></td><td data-cell-label=\"Požiadavka\"><span class=\"card-cell-label\">Požiadavka</span>Povinné</td><td data-cell-label=\"Hodnoty a limity\"><span class=\"card-cell-label\">Hodnoty a limity</span><div>mp3</div></td><td data-cell-label=\"Predvolené\" data-default=\"unspecified\"><span class=\"card-cell-label\">Predvolené</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Kombinácie vstupných podkladov</summary><p class=\"note-s\"><b>text_to_speech</b> · Povinné: input</p></details><details class=\"note-s\" data-method-contract><summary>Parametre a životný cyklus metódy</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Špecifikácia</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=\"Špecifikácia\"><span class=\"card-cell-label\">Špecifikácia</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=\"Špecifikácia\"><span class=\"card-cell-label\">Špecifikácia</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=\"Špecifikácia\"><span class=\"card-cell-label\">Špecifikácia</span>English_expressive_narrator, English_radiant_girl, English_magnetic_voiced_man, English_compelling_lady1, English_Aussie_Bloke, English_captivating_female1, English_Upbeat_Woman, English_Trustworth_Man, English_CalmWoman, English_UpsetGirl, English_Gentle-voiced_man, English_Whispering_girl, English_Diligent_Man, English_Graceful_Lady, English_ReservedYoungMan, English_PlayfulGirl, English_ManWithDeepVoice, English_MaturePartner, English_FriendlyPerson, English_MatureBoss, English_Debator, English_LovelyGirl, English_Steadymentor, English_Deep-VoicedGentleman, English_Wiselady, English_CaptivatingStoryteller, English_DecentYoungMan, English_SentimentalLady, English_ImposingManner, English_SadTeen, English_PassionateWarrior, English_WiseScholar, English_Soft-spokenGirl, English_SereneWoman, English_ConfidentWoman, English_PatientMan, English_Comedian, English_BossyLeader, English_Strong-WilledBoy, English_StressedLady, English_AssertiveQueen, English_AnimeCharacter, English_Jovialman, English_WhimsicalGirl, English_Kind-heartedGirl</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=\"Špecifikácia\"><span class=\"card-cell-label\">Špecifikácia</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=\"Špecifikácia\"><span class=\"card-cell-label\">Špecifikácia</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=\"Špecifikácia\"><span class=\"card-cell-label\">Špecifikácia</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=\"Špecifikácia\"><span class=\"card-cell-label\">Špecifikácia</span>presný text UTF-8; počet znakov Unicode bez normalizácie</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=\"Špecifikácia\"><span class=\"card-cell-label\">Špecifikácia</span>text</td></tr></tbody></table></div><p>Životný cyklus: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · skutočne vrátené task_id alebo záznam v knižnici médií</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\">Vyberte presný hlas z profilu tohto modelu.</p><p class=\"note-s\">Vstupné znaky a sekundy zvuku sú odlišné merané jednotky.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Cenník</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tarifné údaje nepridávajú možnosti požiadavky. Podporované parametre sú uvedené pri vybranej metóde.</p><dl data-price-conditions><dt>Rýchly režim</dt><dd>Neuvedené <span class=\"note-s\">Keď je zvolený rýchly režim</span></dd><dt>Režim Flex</dt><dd>Neuvedené <span class=\"note-s\">Keď je zvolený režim flex</span></dd><dt>Maximálna úroveň uvažovania</dt><dd>Neuvedené <span class=\"note-s\">Keď sa pri maximálnej úrovni uvažovania používa predvolená úprava (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Sadzby Ailoot</h4><h4>Ceny podľa konfigurácie</h4><p class=\"note-s\">Každý poplatok priraďte k zobrazeným podmienkam. Pre každú skupinu alternatívnych konfigurácií použite jednu sadzbu.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfigurácia</th><th>Sadzobník</th><th>Účtované množstvo</th><th>Účtovacia jednotka</th><th>Poplatok</th></tr></thead><tbody><tr><th data-cell-label=\"Konfigurácia\" scope=\"row\"><span class=\"card-cell-label\">Konfigurácia</span>Základné sadzby za tokeny</th><td data-cell-label=\"Sadzobník\"><span class=\"card-cell-label\">Sadzobník</span>Základná sadzba</td><td data-cell-label=\"Účtované množstvo\"><span class=\"card-cell-label\">Účtované množstvo</span>—</td><td data-cell-label=\"Účtovacia jednotka\"><span class=\"card-cell-label\">Účtovacia jednotka</span>—</td><td data-cell-label=\"Poplatok\"><span class=\"card-cell-label\">Poplatok</span><div><span>Vstup · Vstupné tokeny</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenov</span></div><div><span>Výstup · Výstupné tokeny</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenov</span></div><div><span>Vstup · Čítanie cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenov</span></div><div><span>Vstup · Zápis do cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenov</span></div><div><span>Vstup · Zápis do cache, 1 hod</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenov</span></div></td></tr><tr><th data-cell-label=\"Konfigurácia\" scope=\"row\"><span class=\"card-cell-label\">Konfigurácia</span>Ultra</th><td data-cell-label=\"Sadzobník\"><span class=\"card-cell-label\">Sadzobník</span>—</td><td data-cell-label=\"Účtované množstvo\"><span class=\"card-cell-label\">Účtované množstvo</span>Každý kódový bod Unicode sa počíta ako jeden znak vrátane znakov Han.</td><td data-cell-label=\"Účtovacia jednotka\"><span class=\"card-cell-label\">Účtovacia jednotka</span>za 1K vstupných znakov</td><td data-cell-label=\"Poplatok\"><span class=\"card-cell-label\">Poplatok</span><div><span>Vstup · vstupný znak</span> <b>$0.12</b> <span class=\"price-unit\">za 1K vstupných znakov</span></div></td></tr></tbody></table></div></div><div data-declared-reference-pricing><h4>Podrobnosti referenčnej tarify</h4><p class=\"note-s\">Referenčné sadzobníky modelu nemenia výber metódy, cenové odhady ani poplatky. Aktívne poplatky používajú sadzby vybranej metódy Ailoot.</p><details class=\"card-price-reference\" data-declared-reference-group data-client-selectable=\"false\"><summary>MiniMax: Speech 2.8 Turbo</summary><h4>Ceny podľa konfigurácie</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfigurácia</th><th>Podmienky účtovania</th><th>Poplatok</th></tr></thead><tbody><tr><th data-cell-label=\"Konfigurácia\" scope=\"row\"><span class=\"card-cell-label\">Konfigurácia</span>MiniMax: Speech 2.8 Turbo · Predvolená konfigurácia</th><td data-cell-label=\"Podmienky účtovania\"><span class=\"card-cell-label\">Podmienky účtovania</span>Predvolená konfigurácia</td><td data-cell-label=\"Poplatok\"><span class=\"card-cell-label\">Poplatok</span><div><span>Vstup · Vstupné znaky</span> <b>0,00012 USD</b> <span class=\"price-unit\">za vstupný znak</span></div></td></tr></tbody></table></div></details></div><p class=\"note-s\">Ailoot pred požiadavkou rezervuje odhadovanú sumu. Po získaní výsledku vyúčtuje konečný poplatok podľa nameraného využitia. Pri streamovaní sa vyúčtovanie riadi konečným záznamom využitia. <a href=\"/docs/sk/billing/reserve/\">Ako funguje rezervácia a vyúčtovanie →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Príklady požiadaviek</h3><h4>Ailoot Ultra · Syntéza reči</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Varianty kódu\"><button class=\"cg-tab\" id=\"model-code-1878-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1878-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Skopírovať kód\"><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-1878-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1878-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;minimax/speech-2.8-turbo&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;English_expressive_narrator&quot;, &quot;English_radiant_girl&quot;, &quot;English_magnetic_voiced_man&quot;, &quot;English_compelling_lady1&quot;, &quot;English_Aussie_Bloke&quot;, &quot;English_captivating_female1&quot;, &quot;English_Upbeat_Woman&quot;, &quot;English_Trustworth_Man&quot;, &quot;English_CalmWoman&quot;, &quot;English_UpsetGirl&quot;, &quot;English_Gentle-voiced_man&quot;, &quot;English_Whispering_girl&quot;, &quot;English_Diligent_Man&quot;, &quot;English_Graceful_Lady&quot;, &quot;English_ReservedYoungMan&quot;, &quot;English_PlayfulGirl&quot;, &quot;English_ManWithDeepVoice&quot;, &quot;English_MaturePartner&quot;, &quot;English_FriendlyPerson&quot;, &quot;English_MatureBoss&quot;, &quot;English_Debator&quot;, &quot;English_LovelyGirl&quot;, &quot;English_Steadymentor&quot;, &quot;English_Deep-VoicedGentleman&quot;, &quot;English_Wiselady&quot;, &quot;English_CaptivatingStoryteller&quot;, &quot;English_DecentYoungMan&quot;, &quot;English_SentimentalLady&quot;, &quot;English_ImposingManner&quot;, &quot;English_SadTeen&quot;, &quot;English_PassionateWarrior&quot;, &quot;English_WiseScholar&quot;, &quot;English_Soft-spokenGirl&quot;, &quot;English_SereneWoman&quot;, &quot;English_ConfidentWoman&quot;, &quot;English_PatientMan&quot;, &quot;English_Comedian&quot;, &quot;English_BossyLeader&quot;, &quot;English_Strong-WilledBoy&quot;, &quot;English_StressedLady&quot;, &quot;English_AssertiveQueen&quot;, &quot;English_AnimeCharacter&quot;, &quot;English_Jovialman&quot;, &quot;English_WhimsicalGirl&quot;, &quot;English_Kind-heartedGirl&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\">Prijať a uložiť výsledky</h3><h4>Ailoot Ultra · Syntéza reči</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>Čítanie ďalšieho obsahu</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Varianty kódu\"><button class=\"cg-tab\" id=\"model-code-1879-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1879-panel-0\" aria-selected=\"true\" tabindex=\"0\">Knižnica médií</button><button class=\"cg-tab\" id=\"model-code-1879-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1879-panel-1\" aria-selected=\"false\" tabindex=\"-1\">Stav úlohy</button><button class=\"cg-tab\" id=\"model-code-1879-tab-2\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1879-panel-2\" aria-selected=\"false\" tabindex=\"-1\">Podrobnosti podkladu</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Skopírovať kód\"><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-1879-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1879-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-1879-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-1879-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-1879-panel-2\" role=\"tabpanel\" aria-labelledby=\"model-code-1879-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>Uchovať všetky dokončené výsledky</h5><p class=\"note-s\">Uložte každú úplnú vrátenú odpoveď, súbor a časť obsahu.</p><p class=\"note-s\">Uchovajte úplný binárny výsledok a hlavičky. Ak sa vráti JSON alebo viacero výstupov, uchovajte každú dátovú položku a stiahnite obsah z každej skutočnej podpísanej URL súboru.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Ak treba overiť pôvodnú odpoveď</h5><p class=\"note-s\">Uchovajte pôvodné operation_id/X-Client-Request-ID na zosúladenie záznamov bez opätovného odoslania; neexistuje samostatná trasa na priebežné zisťovanie stavu zvuku.</p></div><details class=\"card-about\" data-output-fields><summary>Polia odpovede</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Pole</th><th>Typ</th></tr></thead><tbody><tr><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">binary audio</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>bytes</td></tr><tr><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">response headers</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>headers</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Chyby a ďalšie kroky</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Odpoveď</th><th>Podmienka</th><th>Ďalší krok</th></tr></thead><tbody><tr><th data-cell-label=\"Odpoveď\" scope=\"row\"><span class=\"card-cell-label\">Odpoveď</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Podmienka\"><span class=\"card-cell-label\">Podmienka</span>Neplatné povinné polia, reprezentácia materiálu alebo hodnota parametra</td><td data-cell-label=\"Ďalší krok\"><span class=\"card-cell-label\">Ďalší krok</span>Pred novou požiadavkou na vytvorenie opravte uvedené polia.</td></tr><tr><th data-cell-label=\"Odpoveď\" scope=\"row\"><span class=\"card-cell-label\">Odpoveď</span><code>server_error</code></th><td data-cell-label=\"Podmienka\"><span class=\"card-cell-label\">Podmienka</span>Vrátená odpoveď uvádza, že operáciu alebo výsledok je potrebné skontrolovať</td><td data-cell-label=\"Ďalší krok\"><span class=\"card-cell-label\">Ďalší krok</span>Uchovajte pôvodné vrátené ID operácie/úlohy, hlavičky požiadavky a odpoveď; naďalej čítajte údaje o tejto pôvodnej operácii podporovaným spôsobom. Požiadavku na vytvorenie znova neodosielajte.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Aliasy</h3><h4>Aliasy modelov</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=minimax%2Fspeech-2.8-turbo&amp;route=Ultra&amp;caller=minimax%2Fspeech-2.8-turbo&amp;fmt=speech\"><code>minimax/speech-2.8-turbo</code></a></span></p><h4>Aliasy ciest metód</h4><p class=\"note-s\">Použite cesty metód uvedené vyššie.</p><h4>Súvisiace ID na volanie</h4><p class=\"note-s\"><a href=\"#m=minimax%2Fspeech-2.8-turbo&amp;route=Ultra&amp;caller=minimax%2Fspeech-2.8-turbo&amp;fmt=speech\"><code>minimax/speech-2.8-turbo</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "minimax/speech-2.8-turbo",
        "fmt": "speech",
        "http": "POST",
        "path": "/v1/audio/speech",
        "request_model_id": "minimax/speech-2.8-turbo",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|speech|/v1/audio/speech|minimax%2Fspeech-2.8-turbo",
      "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": "Neplatné povinné polia, reprezentácia materiálu alebo hodnota parametra",
                "http_status": 400,
                "recovery": "Pred novou požiadavkou na vytvorenie opravte uvedené polia.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Vrátená odpoveď uvádza, že operáciu alebo výsledok je potrebné skontrolovať",
                "http_status": null,
                "recovery": "Uchovajte pôvodné vrátené ID operácie/úlohy, hlavičky požiadavky a odpoveď; naďalej čítajte údaje o tejto pôvodnej operácii podporovaným spôsobom. Požiadavku na vytvorenie znova neodosielajte.",
                "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": "Uchovajte pôvodné operation_id/X-Client-Request-ID na zosúladenie záznamov bez opätovného odoslania; neexistuje samostatná trasa na priebežné zisťovanie stavu zvuku."
            },
            "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": "Uchovajte úplný binárny výsledok a hlavičky. Ak sa vráti JSON alebo viacero výstupov, uchovajte každú dátovú položku a stiahnite obsah z každej skutočnej podpísanej URL súboru.",
              "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": [
                  "minimax/speech-2.8-turbo"
                ],
                "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": "znaky Unicode"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "English_expressive_narrator",
                  "English_radiant_girl",
                  "English_magnetic_voiced_man",
                  "English_compelling_lady1",
                  "English_Aussie_Bloke",
                  "English_captivating_female1",
                  "English_Upbeat_Woman",
                  "English_Trustworth_Man",
                  "English_CalmWoman",
                  "English_UpsetGirl",
                  "English_Gentle-voiced_man",
                  "English_Whispering_girl",
                  "English_Diligent_Man",
                  "English_Graceful_Lady",
                  "English_ReservedYoungMan",
                  "English_PlayfulGirl",
                  "English_ManWithDeepVoice",
                  "English_MaturePartner",
                  "English_FriendlyPerson",
                  "English_MatureBoss",
                  "English_Debator",
                  "English_LovelyGirl",
                  "English_Steadymentor",
                  "English_Deep-VoicedGentleman",
                  "English_Wiselady",
                  "English_CaptivatingStoryteller",
                  "English_DecentYoungMan",
                  "English_SentimentalLady",
                  "English_ImposingManner",
                  "English_SadTeen",
                  "English_PassionateWarrior",
                  "English_WiseScholar",
                  "English_Soft-spokenGirl",
                  "English_SereneWoman",
                  "English_ConfidentWoman",
                  "English_PatientMan",
                  "English_Comedian",
                  "English_BossyLeader",
                  "English_Strong-WilledBoy",
                  "English_StressedLady",
                  "English_AssertiveQueen",
                  "English_AnimeCharacter",
                  "English_Jovialman",
                  "English_WhimsicalGirl",
                  "English_Kind-heartedGirl"
                ],
                "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": [
            "Vyberte presný hlas z profilu tohto modelu.",
            "Vstupné znaky a sekundy zvuku sú odlišné merané jednotky."
          ],
          "input": {
            "content_type": "application/json",
            "input": "presný text UTF-8; počet znakov Unicode bez normalizácie",
            "material_types": [
              "text"
            ],
            "max_input_characters": null,
            "other_options": false,
            "required": [
              "model",
              "input",
              "voice",
              "response_format"
            ],
            "response_format": [
              "mp3"
            ],
            "voice_ids": [
              "English_expressive_narrator",
              "English_radiant_girl",
              "English_magnetic_voiced_man",
              "English_compelling_lady1",
              "English_Aussie_Bloke",
              "English_captivating_female1",
              "English_Upbeat_Woman",
              "English_Trustworth_Man",
              "English_CalmWoman",
              "English_UpsetGirl",
              "English_Gentle-voiced_man",
              "English_Whispering_girl",
              "English_Diligent_Man",
              "English_Graceful_Lady",
              "English_ReservedYoungMan",
              "English_PlayfulGirl",
              "English_ManWithDeepVoice",
              "English_MaturePartner",
              "English_FriendlyPerson",
              "English_MatureBoss",
              "English_Debator",
              "English_LovelyGirl",
              "English_Steadymentor",
              "English_Deep-VoicedGentleman",
              "English_Wiselady",
              "English_CaptivatingStoryteller",
              "English_DecentYoungMan",
              "English_SentimentalLady",
              "English_ImposingManner",
              "English_SadTeen",
              "English_PassionateWarrior",
              "English_WiseScholar",
              "English_Soft-spokenGirl",
              "English_SereneWoman",
              "English_ConfidentWoman",
              "English_PatientMan",
              "English_Comedian",
              "English_BossyLeader",
              "English_Strong-WilledBoy",
              "English_StressedLady",
              "English_AssertiveQueen",
              "English_AnimeCharacter",
              "English_Jovialman",
              "English_WhimsicalGirl",
              "English_Kind-heartedGirl"
            ]
          },
          "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": "skutočne vrátené task_id alebo záznam v knižnici médií",
                "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": {
              "quantity_meter": "utf8.RuneCountInString(validUTF8): one Han codepoint=1; no Han weighting",
              "quoted_unit": "per 1000 input character"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.12000",
                "amount_unit": "usd_per_1000_characters",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_character",
                "label": "input character",
                "native_amount_usd_per_unit": "0.00012",
                "native_quantity": 1,
                "public_unit_label": "per 1000 input character",
                "quantity": "1000",
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_character"
              }
            ]
          }
        ],
        "declared_tariff_references": [
          {
            "client_selectable": false,
            "key": "192bd3b46436eee64517",
            "label": "MiniMax: Speech 2.8 Turbo",
            "profiles": [
              {
                "basis": "",
                "dimensions": {
                  "conditions": "Predvolená konfigurácia"
                },
                "label": "MiniMax: Speech 2.8 Turbo · Predvolená konfigurácia",
                "units": [
                  {
                    "amount": "0.00012",
                    "amount_unit": "usd_per_exact_physical_unit",
                    "billing_input": false,
                    "key": "ac90c22c8807c6c8e538fd70",
                    "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\": \"minimax/speech-2.8-turbo\", \"input\": \"Good afternoon! This is a short voice take.\"}')\nvoice=os.environ[\"AILOOT_VOICE_ID\"]\nallowed=json.loads('[\"English_expressive_narrator\", \"English_radiant_girl\", \"English_magnetic_voiced_man\", \"English_compelling_lady1\", \"English_Aussie_Bloke\", \"English_captivating_female1\", \"English_Upbeat_Woman\", \"English_Trustworth_Man\", \"English_CalmWoman\", \"English_UpsetGirl\", \"English_Gentle-voiced_man\", \"English_Whispering_girl\", \"English_Diligent_Man\", \"English_Graceful_Lady\", \"English_ReservedYoungMan\", \"English_PlayfulGirl\", \"English_ManWithDeepVoice\", \"English_MaturePartner\", \"English_FriendlyPerson\", \"English_MatureBoss\", \"English_Debator\", \"English_LovelyGirl\", \"English_Steadymentor\", \"English_Deep-VoicedGentleman\", \"English_Wiselady\", \"English_CaptivatingStoryteller\", \"English_DecentYoungMan\", \"English_SentimentalLady\", \"English_ImposingManner\", \"English_SadTeen\", \"English_PassionateWarrior\", \"English_WiseScholar\", \"English_Soft-spokenGirl\", \"English_SereneWoman\", \"English_ConfidentWoman\", \"English_PatientMan\", \"English_Comedian\", \"English_BossyLeader\", \"English_Strong-WilledBoy\", \"English_StressedLady\", \"English_AssertiveQueen\", \"English_AnimeCharacter\", \"English_Jovialman\", \"English_WhimsicalGirl\", \"English_Kind-heartedGirl\"]')\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": 0.00012
          }
        },
        "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": {
              "quantity_meter": "utf8.RuneCountInString(validUTF8): one Han codepoint=1; no Han weighting",
              "quoted_unit": "per 1000 input character"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.12000",
                "amount_unit": "usd_per_1000_characters",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_character",
                "label": "input character",
                "native_amount_usd_per_unit": "0.00012",
                "native_quantity": 1,
                "public_unit_label": "per 1000 input character",
                "quantity": "1000",
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_character"
              }
            ]
          }
        ],
        "request_model_id": "minimax/speech-2.8-turbo",
        "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.12000",
            "amount_unit": "usd_per_1000_characters",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_character",
            "label": "input character",
            "native_amount_usd_per_unit": "0.00012",
            "native_quantity": 1,
            "public_unit_label": "per 1000 input character",
            "quantity": "1000",
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_character"
          }
        ]
      }
    }
  ],
  "model_id": "minimax/speech-2.8-turbo",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "280317881fc1987ea6162098c4816e5db38cf0befd9e3508c12e5c0575486995",
    "input_html_sha256": "613500f34014b37c001a9e25d2f63de67314324d2454633ef6962a0bf5ace0bd",
    "private_audit_sha256": "b16932a4f0aab96d43883a8539e5a4c9eb9e2d72367f7d3e56ff7111990cff70",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/sk/minimax-speech-2-8-turbo/",
    "description": "Speech 2.8 Turbo — rýchla syntéza prirodzenej reči so zvukovými značkami a ovládaním výrazovosti.",
    "locale": "sk",
    "md_url": "https://ailoot.ai/models/sk/minimax-speech-2-8-turbo/index.md",
    "title": "MiniMax: Speech 2.8 Turbo — Ailoot",
    "url": "https://ailoot.ai/models/sk/minimax-speech-2-8-turbo/"
  },
  "rawModel": {
    "about": "### Rýchla syntéza konverzačných replík\n\nSpeech 2.8 Turbo spája rýchle vytváranie audia s prirodzenou intonáciou hlasu. Výrobca predstavuje Turbo ako variant pre plynulé konverzačné znenie: krátke repliky, čítanie textu nahlas a hlasovú interakciu. Táto karta prijíma text a vracia hovorené audio.\n\n### Smiech, dych a citoslovcia\n\nRovnako ako HD verzia tejto generácie podporuje Turbo zvukové značky Speech 2.8. Do textu možno vložiť označenia smiechu, uchechtnutia, kašľa, odkašľania, nádychu, výdychu, povzdychu a ďalších krátkych zvukov. Takáto riadená nepravidelnosť približuje repliku bežnému rozhovoru: objavuje sa v nej dych a prestávky súvisiace s obsahom.\n\nZvuková značka sa vzťahuje na konkrétne miesto v texte. Používajú sa na to označenia podporované modelom v okrúhlych zátvorkách, napríklad `(laughs)` alebo `(breath)`. Ľubovoľný opis efektu nie je rovnocennou náhradou podporovanej značky.\n\n### Hlas a jazyk\n\nRodina Speech 2.8 podporuje **40 jazykov** vrátane ruštiny a prácu s pripravenými hlasmi. Výrobca vyzdvihuje rozpoznateľnú farbu hlasu, charakteristické dýchanie a obmedzenie digitálnych skreslení. Klonovanie patrí k samostatnej príprave hlasu, ktorý možno následne použiť pri syntéze.\n\nMiniMax umožňuje výber hlasu a ovládanie tempa, hlasitosti a výšky tónu. Rýchlosť sa nastavuje v rozsahu **0,5–2**, hlasitosť nad 0 až do **10** a zmena výšky tónu od **−12 do 12**. Emóciu možno ponechať na model podľa významu textu alebo ju určiť ručne: radosť, smútok, hnev, strach, znechutenie, prekvapenie alebo pokoj.\n\nVýslovnosť možno spresniť slovníkom náhrad a fonetickým zápisom; podporuje medzinárodnú fonetickú abecedu, čínsky pchin-jin a japonské varianty čítania. Prestávky sa zadávajú medzi vyslovovanými úsekmi v rozsahu **0,01–99,99 sekundy**. Ich dĺžka sa zadáva s presnosťou na dve desatinné miesta; značky sa umiestňujú medzi vyslovované úseky a nevkladajú sa bezprostredne za sebou. Tieto nastavenia umožňujú zosúladiť znenie mien, skratiek a nejednoznačných slov so zámerom nahovorenia.\n\n### Postupný výstup a formát audia\n\nSyntéza prijíma text kratší než **10 000 znakov**. Pri dlhých textoch nad 3000 znakov výrobca odporúča streamovaný výstup; k dispozícii je aj získanie hotového audia vcelku. Všeobecné nastavenia syntézy zahŕňajú MP3, PCM, FLAC, WAV, Opus a varianty G.711 μ-law, mono alebo stereo; dostupnú sadu formátov konkrétnej požiadavky určujú možnosti Ailoot.\n\nRýchlosť Turbo je vlastnosť variantu modelu, nie prísľub pevného času čakania na hotovú repliku. Číselná hodnota oneskorenia tejto požiadavky sa tu neuvádza. Uvedené rozšírené nastavenia výrobcu vyžadujú podporu vo zvolenom spôsobe prístupu cez Ailoot.\n\nĎalšie nastavenia zvuku zahŕňajú vzorkovacie frekvencie **8, 16, 22,05, 24, 32 a 44,1 kHz**. Pre MP3 je k dispozícii dátový tok **32, 64, 128 alebo 256 kbit/s**. Možno tiež meniť farbu hlasu a použiť jeden efekt: priestrannú ozvenu, ozvenu sály, telefonické znenie alebo robotický hlas. Efekty zmeny hlasu sú pri získaní audia vcelku podporované pre MP3, WAV a FLAC, pri streamovanom výstupe iba pre MP3. Formáty G.711 μ-law používajú frekvenciu 8 kHz. Tieto možnosti patria k nastaveniam syntézy MiniMax.\n\nVýrobca umožňuje synchronizáciu reči s textom: časové značky po vetách, slovách alebo po slovách pri postupnom výstupe. Takýto výsledok pomáha zosúladiť hovorenie so zobrazovaním textu. Táto doplnková možnosť vyžaduje podporu príslušného formátu odpovede.",
    "alias_of": null,
    "aliases": [],
    "author": "MiniMax",
    "available": null,
    "canonical_model": "minimax/speech-2.8-turbo",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "speech"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.12000",
            "amount_unit": "usd_per_1000_characters",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_character",
            "label": "input character",
            "native_amount_usd_per_unit": "0.00012",
            "native_quantity": 1,
            "public_unit_label": "per 1000 input character",
            "quantity": "1000",
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_character"
          }
        ],
        "summary": "Úplný cenník konfigurácie nájdete v podrobnostiach."
      }
    ],
    "ctx": null,
    "entity_type": "model",
    "formats": [
      "speech"
    ],
    "id": "minimax/speech-2.8-turbo",
    "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": "Neplatné povinné polia, reprezentácia materiálu alebo hodnota parametra",
                "http_status": 400,
                "recovery": "Pred novou požiadavkou na vytvorenie opravte uvedené polia.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Vrátená odpoveď uvádza, že operáciu alebo výsledok je potrebné skontrolovať",
                "http_status": null,
                "recovery": "Uchovajte pôvodné vrátené ID operácie/úlohy, hlavičky požiadavky a odpoveď; naďalej čítajte údaje o tejto pôvodnej operácii podporovaným spôsobom. Požiadavku na vytvorenie znova neodosielajte.",
                "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": "Uchovajte pôvodné operation_id/X-Client-Request-ID na zosúladenie záznamov bez opätovného odoslania; neexistuje samostatná trasa na priebežné zisťovanie stavu zvuku."
            },
            "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": "Uchovajte úplný binárny výsledok a hlavičky. Ak sa vráti JSON alebo viacero výstupov, uchovajte každú dátovú položku a stiahnite obsah z každej skutočnej podpísanej URL súboru.",
              "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": [
                  "minimax/speech-2.8-turbo"
                ],
                "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": "znaky Unicode"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "English_expressive_narrator",
                  "English_radiant_girl",
                  "English_magnetic_voiced_man",
                  "English_compelling_lady1",
                  "English_Aussie_Bloke",
                  "English_captivating_female1",
                  "English_Upbeat_Woman",
                  "English_Trustworth_Man",
                  "English_CalmWoman",
                  "English_UpsetGirl",
                  "English_Gentle-voiced_man",
                  "English_Whispering_girl",
                  "English_Diligent_Man",
                  "English_Graceful_Lady",
                  "English_ReservedYoungMan",
                  "English_PlayfulGirl",
                  "English_ManWithDeepVoice",
                  "English_MaturePartner",
                  "English_FriendlyPerson",
                  "English_MatureBoss",
                  "English_Debator",
                  "English_LovelyGirl",
                  "English_Steadymentor",
                  "English_Deep-VoicedGentleman",
                  "English_Wiselady",
                  "English_CaptivatingStoryteller",
                  "English_DecentYoungMan",
                  "English_SentimentalLady",
                  "English_ImposingManner",
                  "English_SadTeen",
                  "English_PassionateWarrior",
                  "English_WiseScholar",
                  "English_Soft-spokenGirl",
                  "English_SereneWoman",
                  "English_ConfidentWoman",
                  "English_PatientMan",
                  "English_Comedian",
                  "English_BossyLeader",
                  "English_Strong-WilledBoy",
                  "English_StressedLady",
                  "English_AssertiveQueen",
                  "English_AnimeCharacter",
                  "English_Jovialman",
                  "English_WhimsicalGirl",
                  "English_Kind-heartedGirl"
                ],
                "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": [
            "Vyberte presný hlas z profilu tohto modelu.",
            "Vstupné znaky a sekundy zvuku sú odlišné merané jednotky."
          ],
          "input": {
            "content_type": "application/json",
            "input": "presný text UTF-8; počet znakov Unicode bez normalizácie",
            "material_types": [
              "text"
            ],
            "max_input_characters": null,
            "other_options": false,
            "required": [
              "model",
              "input",
              "voice",
              "response_format"
            ],
            "response_format": [
              "mp3"
            ],
            "voice_ids": [
              "English_expressive_narrator",
              "English_radiant_girl",
              "English_magnetic_voiced_man",
              "English_compelling_lady1",
              "English_Aussie_Bloke",
              "English_captivating_female1",
              "English_Upbeat_Woman",
              "English_Trustworth_Man",
              "English_CalmWoman",
              "English_UpsetGirl",
              "English_Gentle-voiced_man",
              "English_Whispering_girl",
              "English_Diligent_Man",
              "English_Graceful_Lady",
              "English_ReservedYoungMan",
              "English_PlayfulGirl",
              "English_ManWithDeepVoice",
              "English_MaturePartner",
              "English_FriendlyPerson",
              "English_MatureBoss",
              "English_Debator",
              "English_LovelyGirl",
              "English_Steadymentor",
              "English_Deep-VoicedGentleman",
              "English_Wiselady",
              "English_CaptivatingStoryteller",
              "English_DecentYoungMan",
              "English_SentimentalLady",
              "English_ImposingManner",
              "English_SadTeen",
              "English_PassionateWarrior",
              "English_WiseScholar",
              "English_Soft-spokenGirl",
              "English_SereneWoman",
              "English_ConfidentWoman",
              "English_PatientMan",
              "English_Comedian",
              "English_BossyLeader",
              "English_Strong-WilledBoy",
              "English_StressedLady",
              "English_AssertiveQueen",
              "English_AnimeCharacter",
              "English_Jovialman",
              "English_WhimsicalGirl",
              "English_Kind-heartedGirl"
            ]
          },
          "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": "skutočne vrátené task_id alebo záznam v knižnici médií",
                "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": {
              "quantity_meter": "utf8.RuneCountInString(validUTF8): one Han codepoint=1; no Han weighting",
              "quoted_unit": "per 1000 input character"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.12000",
                "amount_unit": "usd_per_1000_characters",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_character",
                "label": "input character",
                "native_amount_usd_per_unit": "0.00012",
                "native_quantity": 1,
                "public_unit_label": "per 1000 input character",
                "quantity": "1000",
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_character"
              }
            ]
          }
        ],
        "declared_tariff_references": [
          {
            "client_selectable": false,
            "key": "192bd3b46436eee64517",
            "label": "MiniMax: Speech 2.8 Turbo",
            "profiles": [
              {
                "basis": "",
                "dimensions": {
                  "conditions": "Predvolená konfigurácia"
                },
                "label": "MiniMax: Speech 2.8 Turbo · Predvolená konfigurácia",
                "units": [
                  {
                    "amount": "0.00012",
                    "amount_unit": "usd_per_exact_physical_unit",
                    "billing_input": false,
                    "key": "ac90c22c8807c6c8e538fd70",
                    "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\": \"minimax/speech-2.8-turbo\", \"input\": \"Good afternoon! This is a short voice take.\"}')\nvoice=os.environ[\"AILOOT_VOICE_ID\"]\nallowed=json.loads('[\"English_expressive_narrator\", \"English_radiant_girl\", \"English_magnetic_voiced_man\", \"English_compelling_lady1\", \"English_Aussie_Bloke\", \"English_captivating_female1\", \"English_Upbeat_Woman\", \"English_Trustworth_Man\", \"English_CalmWoman\", \"English_UpsetGirl\", \"English_Gentle-voiced_man\", \"English_Whispering_girl\", \"English_Diligent_Man\", \"English_Graceful_Lady\", \"English_ReservedYoungMan\", \"English_PlayfulGirl\", \"English_ManWithDeepVoice\", \"English_MaturePartner\", \"English_FriendlyPerson\", \"English_MatureBoss\", \"English_Debator\", \"English_LovelyGirl\", \"English_Steadymentor\", \"English_Deep-VoicedGentleman\", \"English_Wiselady\", \"English_CaptivatingStoryteller\", \"English_DecentYoungMan\", \"English_SentimentalLady\", \"English_ImposingManner\", \"English_SadTeen\", \"English_PassionateWarrior\", \"English_WiseScholar\", \"English_Soft-spokenGirl\", \"English_SereneWoman\", \"English_ConfidentWoman\", \"English_PatientMan\", \"English_Comedian\", \"English_BossyLeader\", \"English_Strong-WilledBoy\", \"English_StressedLady\", \"English_AssertiveQueen\", \"English_AnimeCharacter\", \"English_Jovialman\", \"English_WhimsicalGirl\", \"English_Kind-heartedGirl\"]')\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": 0.00012
          }
        },
        "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": {
              "quantity_meter": "utf8.RuneCountInString(validUTF8): one Han codepoint=1; no Han weighting",
              "quoted_unit": "per 1000 input character"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.12000",
                "amount_unit": "usd_per_1000_characters",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_character",
                "label": "input character",
                "native_amount_usd_per_unit": "0.00012",
                "native_quantity": 1,
                "public_unit_label": "per 1000 input character",
                "quantity": "1000",
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_character"
              }
            ]
          }
        ],
        "request_model_id": "minimax/speech-2.8-turbo",
        "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.12000",
            "amount_unit": "usd_per_1000_characters",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_character",
            "label": "input character",
            "native_amount_usd_per_unit": "0.00012",
            "native_quantity": 1,
            "public_unit_label": "per 1000 input character",
            "quantity": "1000",
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_character"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "minimax/speech-2.8-turbo",
        "request_model_id": "minimax/speech-2.8-turbo",
        "route_label": "Ultra"
      }
    ],
    "name": "MiniMax: Speech 2.8 Turbo",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "pricing_profiles": [
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "async_max_input_characters": null,
          "not_tokens": true,
          "quoted_denominator": "1000000_characters"
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.00012",
            "amount_unit": "usd_per_input_character",
            "conditions": {
              "async_max_input_characters": null,
              "not_tokens": true,
              "quoted_denominator": "1000000_characters"
            },
            "key": "base",
            "label": "base",
            "profile_index": 0,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "in",
            "unit": "input_character"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "async_max_input_characters": 1000000,
          "not_tokens": true,
          "quoted_denominator": "1000000_characters"
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.00012",
            "amount_unit": "usd_per_input_character",
            "conditions": {
              "async_max_input_characters": 1000000,
              "not_tokens": true,
              "quoted_denominator": "1000000_characters"
            },
            "key": "base",
            "label": "base",
            "profile_index": 1,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "in",
            "unit": "input_character"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "charge_at_design_or_clone_creation": false,
          "charge_at_first_synthesis": true,
          "charge_once_per_voice_across_synthesis_calls": true,
          "event": "designed_voice_first_synthesis",
          "plus_synthesis_characters": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "6",
            "amount_unit": "usd_per_voice",
            "conditions": {
              "charge_at_design_or_clone_creation": false,
              "charge_at_first_synthesis": true,
              "charge_once_per_voice_across_synthesis_calls": true,
              "event": "designed_voice_first_synthesis",
              "plus_synthesis_characters": true
            },
            "key": "designed_voice_first_synthesis",
            "label": "designed voice first synthesis",
            "profile_index": 2,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "voice"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "charge_at_design_or_clone_creation": false,
          "charge_at_first_synthesis": true,
          "charge_once_per_voice_across_synthesis_calls": true,
          "event": "cloned_voice_first_synthesis",
          "plus_synthesis_characters": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "3.0",
            "amount_unit": "usd_per_voice",
            "conditions": {
              "charge_at_design_or_clone_creation": false,
              "charge_at_first_synthesis": true,
              "charge_once_per_voice_across_synthesis_calls": true,
              "event": "cloned_voice_first_synthesis",
              "plus_synthesis_characters": true
            },
            "key": "cloned_voice_first_synthesis",
            "label": "cloned voice first synthesis",
            "profile_index": 3,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "voice"
          }
        ]
      }
    ],
    "public_id": "minimax/speech-2.8-turbo",
    "short": "Speech 2.8 Turbo — rýchla syntéza prirodzenej reči so zvukovými značkami a ovládaním výrazovosti."
  },
  "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": "Speech 2.8 Turbo — rýchla syntéza prirodzenej reči so zvukovými značkami a ovládaním výrazovosti.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "4110922ed25a4b18efac40c26f6dbb41b12fb6dab0e33bca640212292aef869f",
    "renderer_sha256": "94893ba0fa4d7b7d32370787b705f436a4c2569f84ec7b33063549adc74b07e0"
  },
  "sourceRevision": "c49bf501f0d27ca16ccf90de62c8326d9c691d398c32231f029701a6a716e834"
}
