{
  "aboutHtml": "<p>Transcribe 1 Pro je model podjetja Fish Audio za pretvorbo govora v besedilo pri kratkih izsekih, pogovorih z več govorci in dolgih posnetkih. Sprejme posnet zvok in vrne prepis z neobveznimi časovnimi podatki in strukturiranimi odseki govorcev. Odlikujejo ga menjave govorcev, označene v besedilu, ter oznake čustev ali glasovnih dogodkov, ki ohranijo več pogovorne strukture posnetka kot navadno zaporedje besed.</p><p>Pri intervjuju, sestanku ali podkastu ohranite celoten pogovor v eni datoteki, da lahko govorci ob ponovnem nastopu ohranijo dosledne oznake znotraj odgovora. Uporaben izdelek za pregled je prepis, povezan z izvirnim posnetkom, z ločeno prikazanimi odseki govorcev in časovno oznako za preverjanje navedka. Povzetek ali seznam opravil je nadaljnji korak aplikacije: hranite ga ločeno od prepisa, da ostane govorjeni vir na voljo za primerjavo.</p><p>Proizvajalec sprejema posnetke, dolge do 60 minut, in opisuje obdelavo dolgih datotek s stisnjenim zvokom, kot so MP3, Opus ali AAC. Podprti formati vključujejo WAV, MP3, AAC v M4A ali MP4, FLAC, Ogg z Opus ali Vorbis, WebM/Matroska in MOV. Pri videodatoteki uporabi prvo zvočno stezo. AIFF, CAF, WMA, AMR, AC-3 in surovi PCM brez glave niso podprti. V posamezni zahtevi se posreduje ena zvočna datoteka; rezultat prispe po prepisu celotnega posnetka, dolg posnetek pa lahko zahteva več minut. Izseki, krajši od približno 0,08 sekunde, so zavrnjeni.</p><p>Odgovor proizvajalca vsebuje celotno besedilo, trajanje posnetka v sekundah in polje segments. Pro označi menjave govorcev neposredno v besedilu z oznakami, kot sta &lt;|speaker:0|&gt; in &lt;|speaker:1|&gt;; oznaka velja za naslednje besedilo do naslednje oznake. To so identifikatorji znotraj enega odgovora, ne preverjena imena ali identitete, ki bi jih bilo mogoče povezovati med zahtevami. Če prepis nima oznake govorca, ga vodnik obravnava kot rezultat z enim govorcem. Besedilo pred prvo oznako ohranite pri prvem odseku, namesto da bi ga zavrgli.</p><p>Časovne oznake posameznih besed so neobvezne. V zahtevi proizvajalcu je ignore_timestamps privzeto true; nastavitev false zahteva segmente z besedilom ter začetnimi in končnimi časi v sekundah. Segment je praviloma beseda oziroma en znak ali nekaj znakov v kitajščini in japonščini. Besedilo segmentov izpušča ločila, oznake govorcev in dogodkov ter lahko govorjeno vrednost normalizira drugače kot celotni prepis. Besedni segment ima lahko enak začetni in končni čas. Prazno polje segments lahko pomeni, da časovne oznake niso bile zahtevane, da govor ni bil zaznan ali da časovni podatki začasno niso bili na voljo. Celotni prepis uporabite za berljivo besedilo, segmente pa za poravnavo, ne da bi predpostavljali, da se niza ujemata znak za znakom.</p><p>Nastavitev diarize je privzeto auto. Ko so zahtevane časovne oznake in diarize ni false, Pro vrne tudi speaker_turns. Vsak odsek vsebuje oznako govorca, besedilo ter začetni in končni čas, pri čemer ohrani ločila in ohranjene oznake dogodkov brez oznake govorca sredi besedila. Če časovni podatki besed niso na voljo, so lahko časi odsekov približni in zajemajo celoten posnetek; sosednji odseki niso nujno stični ali brez prekrivanja. Izklop diarize odstrani strukturirani seznam odsekov, oznake govorcev pa ostanejo v celotnem besedilu. Znano število govorcev ali najmanjše in največje število lahko po najboljših zmožnostih usmerja razločevanje govorcev pri daljših posnetkih. Natančnega števila ni mogoče združiti z mejama števila, namigov o številu pa ni mogoče uporabiti ob izklopljenem diarize.</p><p>Oznake čustev in glasovnih dogodkov se ob prepoznanem govoru pojavijo kot besedilo v oglatih oklepajih, na primer [laughter]. Gre za sklepe na podlagi zvoka, ne za besede, ki jih mora uporabnik dodati pred prepisovanjem. Nastavitev tag_audio_events pri Pro je privzeto true; njen izklop odstrani te oznake iz prepisa in besedila odsekov, časovnih podatkov pa ne spremeni. Ločenega polja za čustva ali fiksnega nabora čustev ni. Ohranite prepis z oznakami, kadar je pomemben zven izjave, različico brez oznak pa uporabite, kadar nadaljnji izdelek potrebuje samo izgovorjene besede.</p><p>Jezik se zazna samodejno. Neobvezen jezikovni namig v obliki kode ISO 639-1, zapisane z malimi črkami, ne vsili prevoda in ne spremeni prepisa Pro. Če jezika ni mogoče določiti, lahko vrnjena jezikovna koda odraža namig, ne da bi bila preverjena glede na zvok. Proizvajalec navede en jezik, ne seznama vseh jezikov v večjezičnem posnetku. Pri pripravi arhiva, po katerem je mogoče iskati, hranite izvirno besedilo skupaj z jezikovnimi metapodatki, zlasti kadar različni deli pogovora prehajajo med jeziki.</p><p>Za podnapise združite zaporedne časovno označene besede v berljive odseke SRT ali WebVTT, namesto da bi ustvarili podnapis za vsako besedo. Odseke ločite ob premorih ter prilagodite njihovo dolžino in čas prikaza predvajalniku in občinstvu. Meje odsekov govorcev omogočajo ločene podnapise za različne govorce. Preverite, ali je rezultat časovnih podatkov prazen in ali imajo podnapisni odseki končni čas poznejši od začetnega. Oblikovanje podnapisov, poimenovanje anonimnih oznak govorcev in morebitni poznejši povzetek so izdelki aplikacije, zgrajeni iz rezultata prepisa.</p><p>V praktičnem postopku obdelave posnetkov pred prepisovanjem določite, ali potrebujete navaden berljiv prepis, označene odseke pogovora ali časovno usklajene podnapise. Z rezultatom hranite identifikator zvoka, ohranite vrnjeno celotno besedilo, kadar so pomembna ločila in oznake, strukturirana časovna polja pa uporabite za navigacijo. Zmožnosti Pro za dolge posnetke in več govorcev se razlikujejo od splošnega modela Transcribe 1 za kratke posnetke; njihovih omejitev in nastavitev ne smete obravnavati kot zamenljivih.</p>",
  "aboutText": "Transcribe 1 Pro je model podjetja Fish Audio za pretvorbo govora v besedilo pri kratkih izsekih, pogovorih z več govorci in dolgih posnetkih. Sprejme posnet zvok in vrne prepis z neobveznimi časovnimi podatki in strukturiranimi odseki govorcev. Odlikujejo ga menjave govorcev, označene v besedilu, ter oznake čustev ali glasovnih dogodkov, ki ohranijo več pogovorne strukture posnetka kot navadno zaporedje besed.\n\nPri intervjuju, sestanku ali podkastu ohranite celoten pogovor v eni datoteki, da lahko govorci ob ponovnem nastopu ohranijo dosledne oznake znotraj odgovora. Uporaben izdelek za pregled je prepis, povezan z izvirnim posnetkom, z ločeno prikazanimi odseki govorcev in časovno oznako za preverjanje navedka. Povzetek ali seznam opravil je nadaljnji korak aplikacije: hranite ga ločeno od prepisa, da ostane govorjeni vir na voljo za primerjavo.\n\nProizvajalec sprejema posnetke, dolge do 60 minut, in opisuje obdelavo dolgih datotek s stisnjenim zvokom, kot so MP3, Opus ali AAC. Podprti formati vključujejo WAV, MP3, AAC v M4A ali MP4, FLAC, Ogg z Opus ali Vorbis, WebM/Matroska in MOV. Pri videodatoteki uporabi prvo zvočno stezo. AIFF, CAF, WMA, AMR, AC-3 in surovi PCM brez glave niso podprti. V posamezni zahtevi se posreduje ena zvočna datoteka; rezultat prispe po prepisu celotnega posnetka, dolg posnetek pa lahko zahteva več minut. Izseki, krajši od približno 0,08 sekunde, so zavrnjeni.\n\nOdgovor proizvajalca vsebuje celotno besedilo, trajanje posnetka v sekundah in polje segments. Pro označi menjave govorcev neposredno v besedilu z oznakami, kot sta <|speaker:0|> in <|speaker:1|>; oznaka velja za naslednje besedilo do naslednje oznake. To so identifikatorji znotraj enega odgovora, ne preverjena imena ali identitete, ki bi jih bilo mogoče povezovati med zahtevami. Če prepis nima oznake govorca, ga vodnik obravnava kot rezultat z enim govorcem. Besedilo pred prvo oznako ohranite pri prvem odseku, namesto da bi ga zavrgli.\n\nČasovne oznake posameznih besed so neobvezne. V zahtevi proizvajalcu je ignore_timestamps privzeto true; nastavitev false zahteva segmente z besedilom ter začetnimi in končnimi časi v sekundah. Segment je praviloma beseda oziroma en znak ali nekaj znakov v kitajščini in japonščini. Besedilo segmentov izpušča ločila, oznake govorcev in dogodkov ter lahko govorjeno vrednost normalizira drugače kot celotni prepis. Besedni segment ima lahko enak začetni in končni čas. Prazno polje segments lahko pomeni, da časovne oznake niso bile zahtevane, da govor ni bil zaznan ali da časovni podatki začasno niso bili na voljo. Celotni prepis uporabite za berljivo besedilo, segmente pa za poravnavo, ne da bi predpostavljali, da se niza ujemata znak za znakom.\n\nNastavitev diarize je privzeto auto. Ko so zahtevane časovne oznake in diarize ni false, Pro vrne tudi speaker_turns. Vsak odsek vsebuje oznako govorca, besedilo ter začetni in končni čas, pri čemer ohrani ločila in ohranjene oznake dogodkov brez oznake govorca sredi besedila. Če časovni podatki besed niso na voljo, so lahko časi odsekov približni in zajemajo celoten posnetek; sosednji odseki niso nujno stični ali brez prekrivanja. Izklop diarize odstrani strukturirani seznam odsekov, oznake govorcev pa ostanejo v celotnem besedilu. Znano število govorcev ali najmanjše in največje število lahko po najboljših zmožnostih usmerja razločevanje govorcev pri daljših posnetkih. Natančnega števila ni mogoče združiti z mejama števila, namigov o številu pa ni mogoče uporabiti ob izklopljenem diarize.\n\nOznake čustev in glasovnih dogodkov se ob prepoznanem govoru pojavijo kot besedilo v oglatih oklepajih, na primer [laughter]. Gre za sklepe na podlagi zvoka, ne za besede, ki jih mora uporabnik dodati pred prepisovanjem. Nastavitev tag_audio_events pri Pro je privzeto true; njen izklop odstrani te oznake iz prepisa in besedila odsekov, časovnih podatkov pa ne spremeni. Ločenega polja za čustva ali fiksnega nabora čustev ni. Ohranite prepis z oznakami, kadar je pomemben zven izjave, različico brez oznak pa uporabite, kadar nadaljnji izdelek potrebuje samo izgovorjene besede.\n\nJezik se zazna samodejno. Neobvezen jezikovni namig v obliki kode ISO 639-1, zapisane z malimi črkami, ne vsili prevoda in ne spremeni prepisa Pro. Če jezika ni mogoče določiti, lahko vrnjena jezikovna koda odraža namig, ne da bi bila preverjena glede na zvok. Proizvajalec navede en jezik, ne seznama vseh jezikov v večjezičnem posnetku. Pri pripravi arhiva, po katerem je mogoče iskati, hranite izvirno besedilo skupaj z jezikovnimi metapodatki, zlasti kadar različni deli pogovora prehajajo med jeziki.\n\nZa podnapise združite zaporedne časovno označene besede v berljive odseke SRT ali WebVTT, namesto da bi ustvarili podnapis za vsako besedo. Odseke ločite ob premorih ter prilagodite njihovo dolžino in čas prikaza predvajalniku in občinstvu. Meje odsekov govorcev omogočajo ločene podnapise za različne govorce. Preverite, ali je rezultat časovnih podatkov prazen in ali imajo podnapisni odseki končni čas poznejši od začetnega. Oblikovanje podnapisov, poimenovanje anonimnih oznak govorcev in morebitni poznejši povzetek so izdelki aplikacije, zgrajeni iz rezultata prepisa.\n\nV praktičnem postopku obdelave posnetkov pred prepisovanjem določite, ali potrebujete navaden berljiv prepis, označene odseke pogovora ali časovno usklajene podnapise. Z rezultatom hranite identifikator zvoka, ohranite vrnjeno celotno besedilo, kadar so pomembna ločila in oznake, strukturirana časovna polja pa uporabite za navigacijo. Zmožnosti Pro za dolge posnetke in več govorcev se razlikujejo od splošnega modela Transcribe 1 za kratke posnetke; njihovih omejitev in nastavitev ne smete obravnavati kot zamenljivih.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "67b69718a348077a3754eee302d509611b62cf3abf39274b2f495929af2eed10",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "sl",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Fish Audio: Transcribe 1 Pro</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Zapri\">×</button></div><div class=\"idline\"><span>Fish Audio /</span><code>fish-audio/transcribe-1-pro</code><button type=\"button\" id=\"copy-id\">Kopiraj ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Razdelki kartice modela\"><button type=\"button\" data-card-jump=\"overview\">Začetek</button><button type=\"button\" data-card-jump=\"methods\">Vhodi in metode</button><button type=\"button\" data-card-jump=\"pricing\">Cenik</button><button type=\"button\" data-card-jump=\"examples\">Primeri</button><button type=\"button\" data-card-jump=\"results\">Rezultati</button><button type=\"button\" data-card-jump=\"aliases\">Druga imena</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Metode API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|transcriptions|/v1/audio/transcriptions|fish-audio%2Ftranscribe-1-pro\">Prepoznavanje</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Začetek</h3><p class=\"mdesc-full\">Transcribe 1 Pro pretvori posnetke, dolge do 60 minut, v besedilo z oznakami govorcev in neobveznimi časovnimi oznakami posameznih besed. Ohrani sklepane oznake čustev in glasovnih dogodkov, zato je intervjuje, sestanke in podkaste lažje pregledovati, preiskovati ali pripravljati za podnapise.</p><dl class=\"card-io\" data-card-io><div><dt>Dovoljeni vhodi</dt><dd>Zvok</dd></div><div><dt>Rezultati</dt><dd>Besedilo</dd></div></dl><details class=\"card-about\"><summary>O modelu</summary><p class=\"note-s\" data-model-method-boundary>Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.</p><div class=\"mabout\" id=\"m-about\"><p>Transcribe 1 Pro je model podjetja Fish Audio za pretvorbo govora v besedilo pri kratkih izsekih, pogovorih z več govorci in dolgih posnetkih. Sprejme posnet zvok in vrne prepis z neobveznimi časovnimi podatki in strukturiranimi odseki govorcev. Odlikujejo ga menjave govorcev, označene v besedilu, ter oznake čustev ali glasovnih dogodkov, ki ohranijo več pogovorne strukture posnetka kot navadno zaporedje besed.</p><p>Pri intervjuju, sestanku ali podkastu ohranite celoten pogovor v eni datoteki, da lahko govorci ob ponovnem nastopu ohranijo dosledne oznake znotraj odgovora. Uporaben izdelek za pregled je prepis, povezan z izvirnim posnetkom, z ločeno prikazanimi odseki govorcev in časovno oznako za preverjanje navedka. Povzetek ali seznam opravil je nadaljnji korak aplikacije: hranite ga ločeno od prepisa, da ostane govorjeni vir na voljo za primerjavo.</p><p>Proizvajalec sprejema posnetke, dolge do 60 minut, in opisuje obdelavo dolgih datotek s stisnjenim zvokom, kot so MP3, Opus ali AAC. Podprti formati vključujejo WAV, MP3, AAC v M4A ali MP4, FLAC, Ogg z Opus ali Vorbis, WebM/Matroska in MOV. Pri videodatoteki uporabi prvo zvočno stezo. AIFF, CAF, WMA, AMR, AC-3 in surovi PCM brez glave niso podprti. V posamezni zahtevi se posreduje ena zvočna datoteka; rezultat prispe po prepisu celotnega posnetka, dolg posnetek pa lahko zahteva več minut. Izseki, krajši od približno 0,08 sekunde, so zavrnjeni.</p><p>Odgovor proizvajalca vsebuje celotno besedilo, trajanje posnetka v sekundah in polje segments. Pro označi menjave govorcev neposredno v besedilu z oznakami, kot sta &lt;|speaker:0|&gt; in &lt;|speaker:1|&gt;; oznaka velja za naslednje besedilo do naslednje oznake. To so identifikatorji znotraj enega odgovora, ne preverjena imena ali identitete, ki bi jih bilo mogoče povezovati med zahtevami. Če prepis nima oznake govorca, ga vodnik obravnava kot rezultat z enim govorcem. Besedilo pred prvo oznako ohranite pri prvem odseku, namesto da bi ga zavrgli.</p><p>Časovne oznake posameznih besed so neobvezne. V zahtevi proizvajalcu je ignore_timestamps privzeto true; nastavitev false zahteva segmente z besedilom ter začetnimi in končnimi časi v sekundah. Segment je praviloma beseda oziroma en znak ali nekaj znakov v kitajščini in japonščini. Besedilo segmentov izpušča ločila, oznake govorcev in dogodkov ter lahko govorjeno vrednost normalizira drugače kot celotni prepis. Besedni segment ima lahko enak začetni in končni čas. Prazno polje segments lahko pomeni, da časovne oznake niso bile zahtevane, da govor ni bil zaznan ali da časovni podatki začasno niso bili na voljo. Celotni prepis uporabite za berljivo besedilo, segmente pa za poravnavo, ne da bi predpostavljali, da se niza ujemata znak za znakom.</p><p>Nastavitev diarize je privzeto auto. Ko so zahtevane časovne oznake in diarize ni false, Pro vrne tudi speaker_turns. Vsak odsek vsebuje oznako govorca, besedilo ter začetni in končni čas, pri čemer ohrani ločila in ohranjene oznake dogodkov brez oznake govorca sredi besedila. Če časovni podatki besed niso na voljo, so lahko časi odsekov približni in zajemajo celoten posnetek; sosednji odseki niso nujno stični ali brez prekrivanja. Izklop diarize odstrani strukturirani seznam odsekov, oznake govorcev pa ostanejo v celotnem besedilu. Znano število govorcev ali najmanjše in največje število lahko po najboljših zmožnostih usmerja razločevanje govorcev pri daljših posnetkih. Natančnega števila ni mogoče združiti z mejama števila, namigov o številu pa ni mogoče uporabiti ob izklopljenem diarize.</p><p>Oznake čustev in glasovnih dogodkov se ob prepoznanem govoru pojavijo kot besedilo v oglatih oklepajih, na primer [laughter]. Gre za sklepe na podlagi zvoka, ne za besede, ki jih mora uporabnik dodati pred prepisovanjem. Nastavitev tag_audio_events pri Pro je privzeto true; njen izklop odstrani te oznake iz prepisa in besedila odsekov, časovnih podatkov pa ne spremeni. Ločenega polja za čustva ali fiksnega nabora čustev ni. Ohranite prepis z oznakami, kadar je pomemben zven izjave, različico brez oznak pa uporabite, kadar nadaljnji izdelek potrebuje samo izgovorjene besede.</p><p>Jezik se zazna samodejno. Neobvezen jezikovni namig v obliki kode ISO 639-1, zapisane z malimi črkami, ne vsili prevoda in ne spremeni prepisa Pro. Če jezika ni mogoče določiti, lahko vrnjena jezikovna koda odraža namig, ne da bi bila preverjena glede na zvok. Proizvajalec navede en jezik, ne seznama vseh jezikov v večjezičnem posnetku. Pri pripravi arhiva, po katerem je mogoče iskati, hranite izvirno besedilo skupaj z jezikovnimi metapodatki, zlasti kadar različni deli pogovora prehajajo med jeziki.</p><p>Za podnapise združite zaporedne časovno označene besede v berljive odseke SRT ali WebVTT, namesto da bi ustvarili podnapis za vsako besedo. Odseke ločite ob premorih ter prilagodite njihovo dolžino in čas prikaza predvajalniku in občinstvu. Meje odsekov govorcev omogočajo ločene podnapise za različne govorce. Preverite, ali je rezultat časovnih podatkov prazen in ali imajo podnapisni odseki končni čas poznejši od začetnega. Oblikovanje podnapisov, poimenovanje anonimnih oznak govorcev in morebitni poznejši povzetek so izdelki aplikacije, zgrajeni iz rezultata prepisa.</p><p>V praktičnem postopku obdelave posnetkov pred prepisovanjem določite, ali potrebujete navaden berljiv prepis, označene odseke pogovora ali časovno usklajene podnapise. Z rezultatom hranite identifikator zvoka, ohranite vrnjeno celotno besedilo, kadar so pomembna ločila in oznake, strukturirana časovna polja pa uporabite za navigacijo. Zmožnosti Pro za dolge posnetke in več govorcev se razlikujejo od splošnega modela Transcribe 1 za kratke posnetke; njihovih omejitev in nastavitev ne smete obravnavati kot zamenljivih.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Na voljo v Ailoot · vhodi in metode</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Prepoznavanje govora</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Vhod</dt><dd><code>audio</code></dd></div><div><dt>Izhod</dt><dd><code>text</code></dd></div><div><dt>Izhodni format</dt><dd>json</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Polje</th><th>Vrsta</th><th>Zahteva</th><th>Vrednosti in omejitve</th><th>Privzeto</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>string</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>fish-audio/transcribe-1-pro</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>object</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>Natančni ključi: data, format</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">input_audio.data</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>base64_string</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>Največ dekodiranih bajtov: 26.214.400</div><div>Strogi Base64: Da</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">input_audio.format</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>string</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>Pogoji: Mora se ujemati z dejansko obliko, ugotovljeno pri preverjanju datoteke</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">response_format</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>string</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Izbirno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>json</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Kombinacije vhodnih gradiv</summary><p class=\"note-s\"><b>speech_to_text</b> · Obvezno: input_audio.data, input_audio.format</p></details><details class=\"note-s\" data-method-contract><summary>Parametri in življenjski cikel metode</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Specifikacija</th></tr></thead><tbody><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>content_type</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>application/json</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>required</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>model, input_audio</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>additional_properties</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>false</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>parameters</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>{&quot;name&quot;:&quot;model&quot;,&quot;type&quot;:&quot;string&quot;,&quot;required&quot;:true,&quot;enum&quot;:[&quot;fish-audio/transcribe-1-pro&quot;]}, {&quot;name&quot;:&quot;input_audio&quot;,&quot;type&quot;:&quot;object&quot;,&quot;required&quot;:true,&quot;exact_keys&quot;:[&quot;data&quot;,&quot;format&quot;],&quot;data&quot;:&quot;strogi base64 dejanskih podprtih zvočnih bajtov&quot;,&quot;format&quot;:&quot;natančna oblika, ugotovljena pri preverjanju datoteke; ujemati se mora z dejanskimi bajti&quot;}, {&quot;name&quot;:&quot;response_format&quot;,&quot;type&quot;:&quot;string&quot;,&quot;required&quot;:false,&quot;enum&quot;:[&quot;json&quot;]}</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>max_audio_bytes</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>26214400</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>multipart_for_this_profile</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>false</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_types</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>audio</td></tr></tbody></table></div><p>Življenjski cikel: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · Dejansko vrnjeni task_id ali zapis v medijski knjižnici</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p><p class=\"note-s\">Ohranite celoten odgovor in prvotne vrnjene ID-je.</p><p class=\"note-s\">Neznanega ustvarjanja nikoli ne oddajte znova.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Cenik</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.</p><dl data-price-conditions><dt>Hitri način</dt><dd>Ni navedeno <span class=\"note-s\">Ko je izbran hitri način</span></dd><dt>Način flex</dt><dd>Ni navedeno <span class=\"note-s\">Ko je izbran način flex</span></dd><dt>Najvišja raven razmišljanja</dt><dd>Ni navedeno <span class=\"note-s\">Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Cene Ailoot</h4><h4>Cene po nastavitvah</h4><p class=\"note-s\">Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Nastavitev</th><th>Cenovna lestvica</th><th>Obračunska enota</th><th>Strošek</th></tr></thead><tbody><tr><th data-cell-label=\"Nastavitev\" scope=\"row\"><span class=\"card-cell-label\">Nastavitev</span>Osnovne cene žetonov</th><td data-cell-label=\"Cenovna lestvica\"><span class=\"card-cell-label\">Cenovna lestvica</span>Osnovna cena</td><td data-cell-label=\"Obračunska enota\"><span class=\"card-cell-label\">Obračunska enota</span>—</td><td data-cell-label=\"Strošek\"><span class=\"card-cell-label\">Strošek</span><div><span>Vhod · Vhodni žetoni</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Izhod · Izhodni žetoni</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Vhod · Branje predpomnilnika</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Vhod · Zapis v predpomnilnik</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Vhod · Zapis v predpomnilnik, 1 ura</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div></td></tr><tr><th data-cell-label=\"Nastavitev\" scope=\"row\"><span class=\"card-cell-label\">Nastavitev</span>sekunda vhodnega zvoka</th><td data-cell-label=\"Cenovna lestvica\"><span class=\"card-cell-label\">Cenovna lestvica</span>—</td><td data-cell-label=\"Obračunska enota\"><span class=\"card-cell-label\">Obračunska enota</span>na sekundo vhodnega zvoka</td><td data-cell-label=\"Strošek\"><span class=\"card-cell-label\">Strošek</span><div><span>Vhod · sekunda vhodnega zvoka</span> <b>$0.0002</b> <span class=\"price-unit\">na sekundo vhodnega zvoka</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. <a href=\"/docs/sl/billing/reserve/\">Kako delujeta rezervacija in obračun →</a></p><div data-declared-reference-pricing><h4>Podrobnosti referenčne tarife</h4><p class=\"note-s\">Referenčne lestvice modela ne spreminjajo izbire metode, ocen cen ali stroškov. Veljavni stroški uporabljajo cene izbrane metode Ailoot.</p><details class=\"card-price-reference\" data-declared-reference-group data-client-selectable=\"false\"><summary>Fish Audio: Transcribe 1 Pro</summary><h4>Cene po nastavitvah</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Nastavitev</th><th>Obračunski pogoji</th><th>Strošek</th></tr></thead><tbody><tr><th data-cell-label=\"Nastavitev\" scope=\"row\"><span class=\"card-cell-label\">Nastavitev</span>Fish Audio: Transcribe 1 Pro · Privzeta konfiguracija</th><td data-cell-label=\"Obračunski pogoji\"><span class=\"card-cell-label\">Obračunski pogoji</span>Privzeta konfiguracija</td><td data-cell-label=\"Strošek\"><span class=\"card-cell-label\">Strošek</span><div><span>Vhod · Sekunde vhodnega zvoka</span> <b>0,0002 $</b> <span class=\"price-unit\">na sekundo vhodnega zvoka</span></div></td></tr></tbody></table></div></details></div></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Primeri zahtev</h3><h4>Ailoot Ultra · Prepoznavanje govora</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Primeri kode\"><button class=\"cg-tab\" id=\"model-code-1362-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1362-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · dejanski bajti zvoka in zaznana oblika zapisa</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopiraj kodo\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1362-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1362-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_AUDIO_FILE:?Set your actual audio file}&quot;\n: &quot;${AILOOT_AUDIO_FORMAT:?Set its actual probed file format}&quot;\nexport AILOOT_AUDIO_FILE AILOOT_AUDIO_FORMAT\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;fish-audio/transcribe-1-pro&quot;, &quot;response_format&quot;: &quot;json&quot;}&#39;)\nimport base64\nf=Path(os.environ[&#39;AILOOT_AUDIO_FILE&#39;])\nraw=f.read_bytes()\nif not raw or len(raw)&gt;26214400:raise SystemExit(&#39;Use actual audio bytes within 25 MiB&#39;)\nfmt=os.environ[&#39;AILOOT_AUDIO_FORMAT&#39;].strip()\nif not fmt:raise SystemExit(&#39;Use the actual probed format; the server checks it against the bytes&#39;)\np[&#39;input_audio&#39;]={&#39;data&#39;:base64.b64encode(raw).decode(),&#39;format&#39;:fmt}\nPath(&#39;request.json&#39;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\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 result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nr=json.loads(Path(&#39;result.json&#39;).read_text())\nprint(json.dumps(r,ensure_ascii=False,indent=2))\nprint(&#39;Keep the complete JSON and response headers; do not resubmit an unknown creation.&#39;)\nPY_RESULT\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Prejmi in shrani rezultate</h3><h4>Ailoot Ultra · Prepoznavanje govora</h4><p class=\"note-s\">json</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><div class=\"card-result-process\" data-all-results><h5>Ohrani vse dokončane rezultate</h5><p class=\"note-s\">Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.</p><p class=\"note-s\">Ohranite celoten JSON, glave odgovora, besedilo in vsako dejansko vrnjeno polje porabe. Uporabite dejanske identitete opravil/sredstev iz odgovora ali knjižnice v vaši lasti; operation_id ni task_id.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Če je treba preveriti izvirni odgovor</h5><p class=\"note-s\">Shranite izvirni operation_id/X-Client-Request-ID za uskladitev evidenc brez ponovnega pošiljanja; namenska pot za periodično preverjanje zvoka ne obstaja.</p></div><details class=\"card-about\" data-output-fields><summary>Polja odgovora</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Polje</th><th>Vrsta</th><th>Pomen</th></tr></thead><tbody><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">text</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span>string</td><td data-cell-label=\"Pomen\"><span class=\"card-cell-label\">Pomen</span>Prepisano besedilo.</td></tr><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span>object</td><td data-cell-label=\"Pomen\"><span class=\"card-cell-label\">Pomen</span>Poraba zvoka.</td></tr><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">usage.seconds</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span>number</td><td data-cell-label=\"Pomen\"><span class=\"card-cell-label\">Pomen</span>Trajanje zvoka v sekundah.</td></tr><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">duration</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span>number</td><td data-cell-label=\"Pomen\"><span class=\"card-cell-label\">Pomen</span>Trajanje zvoka v sekundah.</td></tr><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">task_id</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span>string</td><td data-cell-label=\"Pomen\"><span class=\"card-cell-label\">Pomen</span>ID opravila prepisa; vrne se skupaj z asset_url, ko je neprazen prepis shranjen, objavljen in mu je dodeljen podpisani URL vsebine.</td></tr><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">asset_url</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span>string</td><td data-cell-label=\"Pomen\"><span class=\"card-cell-label\">Pomen</span>Podpisani URL vsebine prepisa; vrne se skupaj s task_id, ko je neprazen prepis shranjen, objavljen in mu je dodeljen podpisani URL vsebine.</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Napake in naslednji koraki</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Odgovor</th><th>Pogoj</th><th>Naslednji korak</th></tr></thead><tbody><tr><th data-cell-label=\"Odgovor\" scope=\"row\"><span class=\"card-cell-label\">Odgovor</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Pogoj\"><span class=\"card-cell-label\">Pogoj</span>Neveljavna obvezna polja, predstavitev gradiva ali vrednost parametra</td><td data-cell-label=\"Naslednji korak\"><span class=\"card-cell-label\">Naslednji korak</span>Pred novo zahtevo za ustvarjanje popravite navedena polja.</td></tr><tr><th data-cell-label=\"Odgovor\" scope=\"row\"><span class=\"card-cell-label\">Odgovor</span><code>server_error</code></th><td data-cell-label=\"Pogoj\"><span class=\"card-cell-label\">Pogoj</span>Vrnjeni odgovor navaja, da je treba operacijo ali rezultat preveriti</td><td data-cell-label=\"Naslednji korak\"><span class=\"card-cell-label\">Naslednji korak</span>Shranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Druga imena</h3><h4>Druga imena modelov</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=fish-audio%2Ftranscribe-1-pro&amp;route=Ultra&amp;caller=fish-audio%2Ftranscribe-1-pro&amp;fmt=transcriptions\"><code>fish-audio/transcribe-1-pro</code></a></span></p><h4>Druga imena poti metod</h4><p class=\"note-s\">Uporabite zgoraj navedene poti metod.</p><h4>Povezani ID-ji za klic</h4><p class=\"note-s\"><a href=\"#m=fish-audio%2Ftranscribe-1-pro&amp;route=Ultra&amp;caller=fish-audio%2Ftranscribe-1-pro&amp;fmt=transcriptions\"><code>fish-audio/transcribe-1-pro</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "fish-audio/transcribe-1-pro",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "fish-audio/transcribe-1-pro",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|fish-audio%2Ftranscribe-1-pro",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep the complete JSON, response headers, text and every actual returned usage field. Use actual task/asset identities from the response or owned library; operation_id is not task_id.",
            "errors": [
              {
                "code": null,
                "condition": "Neveljavna obvezna polja, predstavitev gradiva ali vrednost parametra",
                "http_status": 400,
                "recovery": "Pred novo zahtevo za ustvarjanje popravite navedena polja.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Vrnjeni odgovor navaja, da je treba operacijo ali rezultat preveriti",
                "http_status": null,
                "recovery": "Shranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova.",
                "type": "server_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Shranite izvirni operation_id/X-Client-Request-ID za uskladitev evidenc brez ponovnega pošiljanja; namenska pot za periodično preverjanje zvoka ne obstaja."
            },
            "limits": {
              "decoded_audio_max_bytes": 26214400
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "speech_to_text",
                "required": [
                  "input_audio.data",
                  "input_audio.format"
                ]
              }
            ],
            "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": [
              "speech_to_text"
            ],
            "outputs": {
              "all_results": "Ohranite celoten JSON, glave odgovora, besedilo in vsako dejansko vrnjeno polje porabe. Uporabite dejanske identitete opravil/sredstev iz odgovora ali knjižnice v vaši lasti; operation_id ni task_id.",
              "family": "transcription",
              "fields": [
                {
                  "description": "Prepisano besedilo.",
                  "name": "text",
                  "required": true,
                  "required_known": true,
                  "type": "string"
                },
                {
                  "description": "Poraba zvoka.",
                  "name": "usage",
                  "required": true,
                  "required_known": true,
                  "type": "object"
                },
                {
                  "description": "Trajanje zvoka v sekundah.",
                  "name": "usage.seconds",
                  "required": true,
                  "required_known": true,
                  "type": "number"
                },
                {
                  "description": "Trajanje zvoka v sekundah.",
                  "name": "duration",
                  "required": true,
                  "required_known": true,
                  "type": "number"
                },
                {
                  "description": "ID opravila prepisa; vrne se skupaj z asset_url, ko je neprazen prepis shranjen, objavljen in mu je dodeljen podpisani URL vsebine.",
                  "name": "task_id",
                  "required": false,
                  "required_known": true,
                  "type": "string"
                },
                {
                  "description": "Podpisani URL vsebine prepisa; vrne se skupaj s task_id, ko je neprazen prepis shranjen, objavljen in mu je dodeljen podpisani URL vsebine.",
                  "name": "asset_url",
                  "required": false,
                  "required_known": true,
                  "type": "string"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "fish-audio/transcribe-1-pro"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "exact_keys": [
                  "data",
                  "format"
                ],
                "name": "input_audio",
                "required": true,
                "type": "object"
              },
              {
                "availability": "source_interface",
                "decoded_maximum_bytes": 26214400,
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "input_audio.data",
                "required": true,
                "strict_base64": true,
                "type": "base64_string"
              },
              {
                "availability": "source_interface",
                "conditions": "Mora se ujemati z dejansko obliko, ugotovljeno pri preverjanju datoteke",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "input_audio.format",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "json"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "multipart input on this exact profile",
              "fields outside model/input_audio/response_format",
              "non-json response format"
            ]
          },
          "hints": [
            "Ohranite celoten odgovor in prvotne vrnjene ID-je.",
            "Neznanega ustvarjanja nikoli ne oddajte znova."
          ],
          "input": {
            "additional_properties": false,
            "content_type": "application/json",
            "material_types": [
              "audio"
            ],
            "max_audio_bytes": 26214400,
            "multipart_for_this_profile": false,
            "parameters": [
              {
                "enum": [
                  "fish-audio/transcribe-1-pro"
                ],
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "data": "strogi base64 dejanskih podprtih zvočnih bajtov",
                "exact_keys": [
                  "data",
                  "format"
                ],
                "format": "natančna oblika, ugotovljena pri preverjanju datoteke; ujemati se mora z dejanskimi bajti",
                "name": "input_audio",
                "required": true,
                "type": "object"
              },
              {
                "enum": [
                  "json"
                ],
                "name": "response_format",
                "required": false,
                "type": "string"
              }
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "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": "Dejansko vrnjeni task_id ali zapis v medijski knjižnici",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "method_aliases": [],
          "operation_modes": [
            "speech_to_text"
          ],
          "output": {
            "family": "text",
            "type": "JSON transcript with text and usage; actual owned transcript flow"
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0002",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0002",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set your actual audio file}\"\n: \"${AILOOT_AUDIO_FORMAT:?Set its actual probed file format}\"\nexport AILOOT_AUDIO_FILE AILOOT_AUDIO_FORMAT\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"fish-audio/transcribe-1-pro\", \"response_format\": \"json\"}')\nimport base64\nf=Path(os.environ['AILOOT_AUDIO_FILE'])\nraw=f.read_bytes()\nif not raw or len(raw)>26214400:raise SystemExit('Use actual audio bytes within 25 MiB')\nfmt=os.environ['AILOOT_AUDIO_FORMAT'].strip()\nif not fmt:raise SystemExit('Use the actual probed format; the server checks it against the bytes')\np['input_audio']={'data':base64.b64encode(raw).decode(),'format':fmt}\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/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path('result.json').read_text())\nprint(json.dumps(r,ensure_ascii=False,indent=2))\nprint('Keep the complete JSON and response headers; do not resubmit an unknown creation.')\nPY_RESULT\n",
            "label": "curl · actual audio bytes and probed format",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "Keep the complete response and the original returned IDs.",
          "Never resubmit an unknown creation."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Распознавание речи",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "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_second": 0.0002
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0002",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0002",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "fish-audio/transcribe-1-pro",
        "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.0002",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0002",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    }
  ],
  "model_id": "fish-audio/transcribe-1-pro",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "b1a5a665e227b73dcdb8dc15436b1040a64ca5b52884bb1efbb2a4225694e92f",
    "input_html_sha256": "79c014ba441a43b1945b99f59245c598b6bef5d029f6b4eafb9211bebfc2acd9",
    "private_audit_sha256": "037f6a036a2f6b24eb94e1011dd213a9b89b7e150dbf246921310ef6d5bb5af7",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/sl/fish-audio-transcribe-1-pro/",
    "description": "Transcribe 1 Pro pretvori posnetke, dolge do 60 minut, v besedilo z oznakami govorcev in neobveznimi časovnimi oznakami posameznih besed. Ohrani sklepane oznake čustev in glasovnih dogodkov, zato je intervjuje, sestanke in podkaste lažje pregledovati, preiskovati ali pripravljati za podnapise.",
    "locale": "sl",
    "md_url": "https://ailoot.ai/models/sl/fish-audio-transcribe-1-pro/index.md",
    "title": "Fish Audio: Transcribe 1 Pro — Ailoot",
    "url": "https://ailoot.ai/models/sl/fish-audio-transcribe-1-pro/"
  },
  "rawModel": {
    "about": "Transcribe 1 Pro je model podjetja Fish Audio za pretvorbo govora v besedilo pri kratkih izsekih, pogovorih z več govorci in dolgih posnetkih. Sprejme posnet zvok in vrne prepis z neobveznimi časovnimi podatki in strukturiranimi odseki govorcev. Odlikujejo ga menjave govorcev, označene v besedilu, ter oznake čustev ali glasovnih dogodkov, ki ohranijo več pogovorne strukture posnetka kot navadno zaporedje besed.\n\nPri intervjuju, sestanku ali podkastu ohranite celoten pogovor v eni datoteki, da lahko govorci ob ponovnem nastopu ohranijo dosledne oznake znotraj odgovora. Uporaben izdelek za pregled je prepis, povezan z izvirnim posnetkom, z ločeno prikazanimi odseki govorcev in časovno oznako za preverjanje navedka. Povzetek ali seznam opravil je nadaljnji korak aplikacije: hranite ga ločeno od prepisa, da ostane govorjeni vir na voljo za primerjavo.\n\nProizvajalec sprejema posnetke, dolge do 60 minut, in opisuje obdelavo dolgih datotek s stisnjenim zvokom, kot so MP3, Opus ali AAC. Podprti formati vključujejo WAV, MP3, AAC v M4A ali MP4, FLAC, Ogg z Opus ali Vorbis, WebM/Matroska in MOV. Pri videodatoteki uporabi prvo zvočno stezo. AIFF, CAF, WMA, AMR, AC-3 in surovi PCM brez glave niso podprti. V posamezni zahtevi se posreduje ena zvočna datoteka; rezultat prispe po prepisu celotnega posnetka, dolg posnetek pa lahko zahteva več minut. Izseki, krajši od približno 0,08 sekunde, so zavrnjeni.\n\nOdgovor proizvajalca vsebuje celotno besedilo, trajanje posnetka v sekundah in polje segments. Pro označi menjave govorcev neposredno v besedilu z oznakami, kot sta <|speaker:0|> in <|speaker:1|>; oznaka velja za naslednje besedilo do naslednje oznake. To so identifikatorji znotraj enega odgovora, ne preverjena imena ali identitete, ki bi jih bilo mogoče povezovati med zahtevami. Če prepis nima oznake govorca, ga vodnik obravnava kot rezultat z enim govorcem. Besedilo pred prvo oznako ohranite pri prvem odseku, namesto da bi ga zavrgli.\n\nČasovne oznake posameznih besed so neobvezne. V zahtevi proizvajalcu je ignore_timestamps privzeto true; nastavitev false zahteva segmente z besedilom ter začetnimi in končnimi časi v sekundah. Segment je praviloma beseda oziroma en znak ali nekaj znakov v kitajščini in japonščini. Besedilo segmentov izpušča ločila, oznake govorcev in dogodkov ter lahko govorjeno vrednost normalizira drugače kot celotni prepis. Besedni segment ima lahko enak začetni in končni čas. Prazno polje segments lahko pomeni, da časovne oznake niso bile zahtevane, da govor ni bil zaznan ali da časovni podatki začasno niso bili na voljo. Celotni prepis uporabite za berljivo besedilo, segmente pa za poravnavo, ne da bi predpostavljali, da se niza ujemata znak za znakom.\n\nNastavitev diarize je privzeto auto. Ko so zahtevane časovne oznake in diarize ni false, Pro vrne tudi speaker_turns. Vsak odsek vsebuje oznako govorca, besedilo ter začetni in končni čas, pri čemer ohrani ločila in ohranjene oznake dogodkov brez oznake govorca sredi besedila. Če časovni podatki besed niso na voljo, so lahko časi odsekov približni in zajemajo celoten posnetek; sosednji odseki niso nujno stični ali brez prekrivanja. Izklop diarize odstrani strukturirani seznam odsekov, oznake govorcev pa ostanejo v celotnem besedilu. Znano število govorcev ali najmanjše in največje število lahko po najboljših zmožnostih usmerja razločevanje govorcev pri daljših posnetkih. Natančnega števila ni mogoče združiti z mejama števila, namigov o številu pa ni mogoče uporabiti ob izklopljenem diarize.\n\nOznake čustev in glasovnih dogodkov se ob prepoznanem govoru pojavijo kot besedilo v oglatih oklepajih, na primer [laughter]. Gre za sklepe na podlagi zvoka, ne za besede, ki jih mora uporabnik dodati pred prepisovanjem. Nastavitev tag_audio_events pri Pro je privzeto true; njen izklop odstrani te oznake iz prepisa in besedila odsekov, časovnih podatkov pa ne spremeni. Ločenega polja za čustva ali fiksnega nabora čustev ni. Ohranite prepis z oznakami, kadar je pomemben zven izjave, različico brez oznak pa uporabite, kadar nadaljnji izdelek potrebuje samo izgovorjene besede.\n\nJezik se zazna samodejno. Neobvezen jezikovni namig v obliki kode ISO 639-1, zapisane z malimi črkami, ne vsili prevoda in ne spremeni prepisa Pro. Če jezika ni mogoče določiti, lahko vrnjena jezikovna koda odraža namig, ne da bi bila preverjena glede na zvok. Proizvajalec navede en jezik, ne seznama vseh jezikov v večjezičnem posnetku. Pri pripravi arhiva, po katerem je mogoče iskati, hranite izvirno besedilo skupaj z jezikovnimi metapodatki, zlasti kadar različni deli pogovora prehajajo med jeziki.\n\nZa podnapise združite zaporedne časovno označene besede v berljive odseke SRT ali WebVTT, namesto da bi ustvarili podnapis za vsako besedo. Odseke ločite ob premorih ter prilagodite njihovo dolžino in čas prikaza predvajalniku in občinstvu. Meje odsekov govorcev omogočajo ločene podnapise za različne govorce. Preverite, ali je rezultat časovnih podatkov prazen in ali imajo podnapisni odseki končni čas poznejši od začetnega. Oblikovanje podnapisov, poimenovanje anonimnih oznak govorcev in morebitni poznejši povzetek so izdelki aplikacije, zgrajeni iz rezultata prepisa.\n\nV praktičnem postopku obdelave posnetkov pred prepisovanjem določite, ali potrebujete navaden berljiv prepis, označene odseke pogovora ali časovno usklajene podnapise. Z rezultatom hranite identifikator zvoka, ohranite vrnjeno celotno besedilo, kadar so pomembna ločila in oznake, strukturirana časovna polja pa uporabite za navigacijo. Zmožnosti Pro za dolge posnetke in več govorcev se razlikujejo od splošnega modela Transcribe 1 za kratke posnetke; njihovih omejitev in nastavitev ne smete obravnavati kot zamenljivih.",
    "alias_of": null,
    "aliases": [],
    "author": "Fish Audio",
    "available": null,
    "canonical_model": "fish-audio/transcribe-1-pro",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.0002",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0002",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ],
        "summary": "Celoten cenik konfiguracije je v podrobnostih."
      }
    ],
    "ctx": null,
    "declared_tariff_references": [
      {
        "client_selectable": false,
        "key": "aeebfac63d7ddd8619fb",
        "label": "Fish Audio: Transcribe 1 Pro",
        "profiles": [
          {
            "basis": "",
            "dimensions": {
              "conditions": "Privzeta konfiguracija"
            },
            "label": "Fish Audio: Transcribe 1 Pro · Privzeta konfiguracija",
            "units": [
              {
                "amount": "0.0002",
                "amount_unit": "usd_per_exact_physical_unit",
                "billing_input": false,
                "key": "0949942d98ce2e4c35b418d6",
                "label": "Input audio seconds",
                "public_unit_label": "per input audio second",
                "quantity": "1",
                "rate_role": "declared_tariff_rate",
                "side": "in",
                "unit": "input_audio_second"
              }
            ]
          }
        ]
      }
    ],
    "entity_type": "model",
    "formats": [
      "transcriptions"
    ],
    "id": "fish-audio/transcribe-1-pro",
    "input": [
      "audio"
    ],
    "kind": "transcription",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep the complete JSON, response headers, text and every actual returned usage field. Use actual task/asset identities from the response or owned library; operation_id is not task_id.",
            "errors": [
              {
                "code": null,
                "condition": "Neveljavna obvezna polja, predstavitev gradiva ali vrednost parametra",
                "http_status": 400,
                "recovery": "Pred novo zahtevo za ustvarjanje popravite navedena polja.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Vrnjeni odgovor navaja, da je treba operacijo ali rezultat preveriti",
                "http_status": null,
                "recovery": "Shranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova.",
                "type": "server_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Shranite izvirni operation_id/X-Client-Request-ID za uskladitev evidenc brez ponovnega pošiljanja; namenska pot za periodično preverjanje zvoka ne obstaja."
            },
            "limits": {
              "decoded_audio_max_bytes": 26214400
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "speech_to_text",
                "required": [
                  "input_audio.data",
                  "input_audio.format"
                ]
              }
            ],
            "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": [
              "speech_to_text"
            ],
            "outputs": {
              "all_results": "Ohranite celoten JSON, glave odgovora, besedilo in vsako dejansko vrnjeno polje porabe. Uporabite dejanske identitete opravil/sredstev iz odgovora ali knjižnice v vaši lasti; operation_id ni task_id.",
              "family": "transcription",
              "fields": [
                {
                  "description": "Prepisano besedilo.",
                  "name": "text",
                  "required": true,
                  "required_known": true,
                  "type": "string"
                },
                {
                  "description": "Poraba zvoka.",
                  "name": "usage",
                  "required": true,
                  "required_known": true,
                  "type": "object"
                },
                {
                  "description": "Trajanje zvoka v sekundah.",
                  "name": "usage.seconds",
                  "required": true,
                  "required_known": true,
                  "type": "number"
                },
                {
                  "description": "Trajanje zvoka v sekundah.",
                  "name": "duration",
                  "required": true,
                  "required_known": true,
                  "type": "number"
                },
                {
                  "description": "ID opravila prepisa; vrne se skupaj z asset_url, ko je neprazen prepis shranjen, objavljen in mu je dodeljen podpisani URL vsebine.",
                  "name": "task_id",
                  "required": false,
                  "required_known": true,
                  "type": "string"
                },
                {
                  "description": "Podpisani URL vsebine prepisa; vrne se skupaj s task_id, ko je neprazen prepis shranjen, objavljen in mu je dodeljen podpisani URL vsebine.",
                  "name": "asset_url",
                  "required": false,
                  "required_known": true,
                  "type": "string"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "fish-audio/transcribe-1-pro"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "exact_keys": [
                  "data",
                  "format"
                ],
                "name": "input_audio",
                "required": true,
                "type": "object"
              },
              {
                "availability": "source_interface",
                "decoded_maximum_bytes": 26214400,
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "input_audio.data",
                "required": true,
                "strict_base64": true,
                "type": "base64_string"
              },
              {
                "availability": "source_interface",
                "conditions": "Mora se ujemati z dejansko obliko, ugotovljeno pri preverjanju datoteke",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "input_audio.format",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "json"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "multipart input on this exact profile",
              "fields outside model/input_audio/response_format",
              "non-json response format"
            ]
          },
          "hints": [
            "Ohranite celoten odgovor in prvotne vrnjene ID-je.",
            "Neznanega ustvarjanja nikoli ne oddajte znova."
          ],
          "input": {
            "additional_properties": false,
            "content_type": "application/json",
            "material_types": [
              "audio"
            ],
            "max_audio_bytes": 26214400,
            "multipart_for_this_profile": false,
            "parameters": [
              {
                "enum": [
                  "fish-audio/transcribe-1-pro"
                ],
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "data": "strogi base64 dejanskih podprtih zvočnih bajtov",
                "exact_keys": [
                  "data",
                  "format"
                ],
                "format": "natančna oblika, ugotovljena pri preverjanju datoteke; ujemati se mora z dejanskimi bajti",
                "name": "input_audio",
                "required": true,
                "type": "object"
              },
              {
                "enum": [
                  "json"
                ],
                "name": "response_format",
                "required": false,
                "type": "string"
              }
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "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": "Dejansko vrnjeni task_id ali zapis v medijski knjižnici",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "method_aliases": [],
          "operation_modes": [
            "speech_to_text"
          ],
          "output": {
            "family": "text",
            "type": "JSON transcript with text and usage; actual owned transcript flow"
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0002",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0002",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set your actual audio file}\"\n: \"${AILOOT_AUDIO_FORMAT:?Set its actual probed file format}\"\nexport AILOOT_AUDIO_FILE AILOOT_AUDIO_FORMAT\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"fish-audio/transcribe-1-pro\", \"response_format\": \"json\"}')\nimport base64\nf=Path(os.environ['AILOOT_AUDIO_FILE'])\nraw=f.read_bytes()\nif not raw or len(raw)>26214400:raise SystemExit('Use actual audio bytes within 25 MiB')\nfmt=os.environ['AILOOT_AUDIO_FORMAT'].strip()\nif not fmt:raise SystemExit('Use the actual probed format; the server checks it against the bytes')\np['input_audio']={'data':base64.b64encode(raw).decode(),'format':fmt}\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/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path('result.json').read_text())\nprint(json.dumps(r,ensure_ascii=False,indent=2))\nprint('Keep the complete JSON and response headers; do not resubmit an unknown creation.')\nPY_RESULT\n",
            "label": "curl · actual audio bytes and probed format",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "Keep the complete response and the original returned IDs.",
          "Never resubmit an unknown creation."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Распознавание речи",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "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_second": 0.0002
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0002",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0002",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "fish-audio/transcribe-1-pro",
        "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.0002",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0002",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "fish-audio/transcribe-1-pro",
        "request_model_id": "fish-audio/transcribe-1-pro",
        "route_label": "Ultra"
      }
    ],
    "name": "Fish Audio: Transcribe 1 Pro",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "pricing_profiles": [
      {
        "dimensions": {
          "regime": "base"
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.0002",
            "amount_unit": "usd_per_declared_unit",
            "conditions": {},
            "key": "prompt",
            "label": "prompt",
            "quantity": "1",
            "rate_role": "typed_active_maker_rate",
            "side": "in",
            "unit": "input_audio_second"
          }
        ]
      }
    ],
    "public_id": "fish-audio/transcribe-1-pro",
    "short": "Transcribe 1 Pro pretvori posnetke, dolge do 60 minut, v besedilo z oznakami govorcev in neobveznimi časovnimi oznakami posameznih besed. Ohrani sklepane oznake čustev in glasovnih dogodkov, zato je intervjuje, sestanke in podkaste lažje pregledovati, preiskovati ali pripravljati za podnapise."
  },
  "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": "Transcribe 1 Pro pretvori posnetke, dolge do 60 minut, v besedilo z oznakami govorcev in neobveznimi časovnimi oznakami posameznih besed. Ohrani sklepane oznake čustev in glasovnih dogodkov, zato je intervjuje, sestanke in podkaste lažje pregledovati, preiskovati ali pripravljati za podnapise.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "2363096ce770dde98c3ad41cb2e5cd37d1246f60b496a2e785065fc7390370e9",
    "renderer_sha256": "dcba2271c18b0f9570a8b166e8d1e3166f121e096a58609c3a46da31562a1bf2"
  },
  "sourceRevision": "964710a73503f40083746e707f2213fc7f61eb8ad93f06c29df6f5b44e515356"
}
