{
  "aboutHtml": "<p>Google Chirp 3 je vícejazyčný model automatického rozpoznávání řeči, který převádí mluvený zvuk na text. Google jej dokumentuje jako model přepisu Chirp 3 v rámci rodiny Speech-to-Text V2 s identifikátorem modelu chirp_3. Jeho účelem je rozpoznávání nahrané nebo streamované řeči s detekcí jazyka a funkcemi určenými pro přepis. Výsledným výstupem je přepis a metadata podporovaná zvolenou metodou rozpoznávání, nikoli vygenerovaná řeč nebo volně formulovaná odpověď asistenta.</p><p>Výrobce rozlišuje streamované rozpoznávání, synchronní rozpoznávání krátkých klipů a dávkové rozpoznávání delších nahrávek. Režim zvolte podle zdrojového zvuku a požadovaného výsledku. U krátké hlasové poznámky může stačit dokončená textová odpověď. U rozhovoru nebo nahraného hovoru může být užitečnější dávkový výsledek s informacemi o mluvčích. U živých titulků nebo rozhraní ovládaného hlasovými příkazy rozlišujte průběžný text od konečného výsledku rozpoznávání a zachovejte zvukový úsek, který popisuje.</p><p>Připravte zvuk v kódování, které implementace rozpoznávání očekává. Příklady Chirp 3 od Googlu používají u nahraných souborů automaticky detekované dekódování a u konfigurace streamování surového zvuku explicitně nastavené dekódování. Související referenční dokumentace dekodéru V2 uvádí mezi podporovanými kódováními WAV PCM nebo kompandovaný zvuk, FLAC, MP3, Ogg/WebM Opus a AAC v kontejnerech MP4, M4A či MOV. Název kontejneru nenahrazuje skutečný kodek a nastavení vzorkování. Zachovejte srozumitelnou řeč a vyhněte se silnému přebuzení nebo zbytečným převodům, při nichž se ztrácejí slyšitelné detaily.</p><p>Chirp 3 dokáže automaticky určit a přepsat převládající jazyk a sada očekávaných jazykových variant může zúžit možnosti rozpoznávání. Dostupnost jazyků se liší podle metody a funkce. Seznam jazyků pro přepis je širší než seznam jazyků pro diarizaci, takže rozpoznávání určitého jazyka samo o sobě nedokládá, že jsou pro něj dostupné všechny funkce týkající se mluvčích nebo časových údajů. Použijte jazykovou variantu odpovídající nahrávce a jména pronesená při střídání jazyků nebo odborné termíny ponechte ke kontrole. Označení detekovaného jazyka je součástí výsledku, nikoli důkazem, že všechna neobvyklá slova byla rozpoznána správně.</p><p>Diarizace mluvčích seskupuje řeč podle hlasu v jednokanálové nahrávce. Google uvádí příklad dávkového přepisu s informacemi o mluvčím u každého slova. U rozhovoru zachovejte tato označení spolu s rozpoznaným textem a před přiřazením skutečných jmen nebo rolí porovnejte změny mluvčích s nahrávkou. Podobné hlasy, přerušování a překrývající se řeč mohou přiřazení ztížit. Ujasněte si uspořádání kanálů zdrojové nahrávky i účel zamýšlené kontroly mluvčích a nepovažujte pouhé označení za nezávisle ověřenou identitu.</p><p>Také časové údaje závisejí na metodě. Streamované rozpoznávání poskytuje časové značky na úrovni promluv, zatímco pokyny výrobce k rozpoznávání ze souborů popisují volitelné časové údaje jednotlivých slov s možným dopadem na kvalitu přepisu. Uchovejte metadata, která zvolená metoda skutečně vrátí, a spolu se zněním zkontrolujte i časové zarovnání. Pracovní postup tvorby titulků potřebuje obojí: čitelný rozpoznaný text a podklad pro ověření, že časová hranice odpovídá správnému zvuku. Google také upozorňuje, že vrácená hodnota jistoty na úrovni slov není skutečným skóre spolehlivosti, a proto by se neměla používat k potvrzení správnosti slova.</p><p>Přizpůsobení rozpoznávání řeči poskytuje fráze a vlastní jména, které se v nahrávce pravděpodobně objeví. Výrobce dokumentuje slovník až 1,000 frází a doporučuje co nejmenší počet relevantních položek, aby se nezhoršilo rozpoznávání ostatních výrazů. U technické prezentace připravte krátký seznam skutečných názvů produktů a zkratek a poté je v přepisu zkontrolujte. Zvýhodnění výrazu pomáhá rozpoznávání tento výraz zohlednit; nedokládá, že byl vysloven, ani nenahrazuje kontrolu podle zvuku.</p><p>Model nabízí automatickou interpunkci a psaní velkých písmen, které lze v dokumentovaném rozhraní vypnout. Google také popisuje funkci ve verzi preview pro vlastní pokyny k formátování přepisu, například jak zapsat konkrétní jméno nebo datum. Tyto pokyny zaměřte na formátování rozpoznané řeči. Přepis, který sjednotí zápis data nebo upraví velká písmena v názvu značky, musí stále zachovat význam promluvy. Shrnutí, překlad nebo faktická analýza jsou následným využitím přepisu, nikoli něčím, co samotný výsledek rozpoznávání prokazuje.</p><p>Vestavěná funkce potlačení šumu je určena k omezení hudby na pozadí a okolních zvuků, například deště nebo hluku ulice. Google výslovně uvádí, že nedokáže odstranit lidské hlasy na pozadí. Při přípravě nahrávky s překrývajícími se hovory tento rozdíl zachovejte. Hlučné i tiché úseky zkontrolujte podle zdroje, místo abyste předpokládali, že úhlednější přepis dokazuje odstranění rušivého zvuku. Užitečný výsledek ponechává nejisté pasáže rozpoznatelné pro opravu.</p><p>U streamovaných úloh citlivost detekce konce promluvy mění okamžik, kdy se promluva považuje za ukončenou. Výrobce popisuje nastavení standard, short a supershort pro stále kratší očekávanou řeč. Rychlejší nastavení může předčasně ukončit rozpoznávání mluvčího, který se uprostřed myšlenky odmlčí. Nastavení přizpůsobte přirozenému diktování, krátké větě nebo velmi stručnému příkazu a spolu s přepisem uchovejte stav označující konečný výsledek. U dokončeného souboru zkontrolujte jména, množství, zápory a hranice promluv jednotlivých mluvčích a poté uchovejte zvolený režim a zdrojový zvuk, aby bylo možné výsledek ověřit nebo znovu použít.</p>",
  "aboutText": "Google Chirp 3 je vícejazyčný model automatického rozpoznávání řeči, který převádí mluvený zvuk na text. Google jej dokumentuje jako model přepisu Chirp 3 v rámci rodiny Speech-to-Text V2 s identifikátorem modelu chirp_3. Jeho účelem je rozpoznávání nahrané nebo streamované řeči s detekcí jazyka a funkcemi určenými pro přepis. Výsledným výstupem je přepis a metadata podporovaná zvolenou metodou rozpoznávání, nikoli vygenerovaná řeč nebo volně formulovaná odpověď asistenta.\n\nVýrobce rozlišuje streamované rozpoznávání, synchronní rozpoznávání krátkých klipů a dávkové rozpoznávání delších nahrávek. Režim zvolte podle zdrojového zvuku a požadovaného výsledku. U krátké hlasové poznámky může stačit dokončená textová odpověď. U rozhovoru nebo nahraného hovoru může být užitečnější dávkový výsledek s informacemi o mluvčích. U živých titulků nebo rozhraní ovládaného hlasovými příkazy rozlišujte průběžný text od konečného výsledku rozpoznávání a zachovejte zvukový úsek, který popisuje.\n\nPřipravte zvuk v kódování, které implementace rozpoznávání očekává. Příklady Chirp 3 od Googlu používají u nahraných souborů automaticky detekované dekódování a u konfigurace streamování surového zvuku explicitně nastavené dekódování. Související referenční dokumentace dekodéru V2 uvádí mezi podporovanými kódováními WAV PCM nebo kompandovaný zvuk, FLAC, MP3, Ogg/WebM Opus a AAC v kontejnerech MP4, M4A či MOV. Název kontejneru nenahrazuje skutečný kodek a nastavení vzorkování. Zachovejte srozumitelnou řeč a vyhněte se silnému přebuzení nebo zbytečným převodům, při nichž se ztrácejí slyšitelné detaily.\n\nChirp 3 dokáže automaticky určit a přepsat převládající jazyk a sada očekávaných jazykových variant může zúžit možnosti rozpoznávání. Dostupnost jazyků se liší podle metody a funkce. Seznam jazyků pro přepis je širší než seznam jazyků pro diarizaci, takže rozpoznávání určitého jazyka samo o sobě nedokládá, že jsou pro něj dostupné všechny funkce týkající se mluvčích nebo časových údajů. Použijte jazykovou variantu odpovídající nahrávce a jména pronesená při střídání jazyků nebo odborné termíny ponechte ke kontrole. Označení detekovaného jazyka je součástí výsledku, nikoli důkazem, že všechna neobvyklá slova byla rozpoznána správně.\n\nDiarizace mluvčích seskupuje řeč podle hlasu v jednokanálové nahrávce. Google uvádí příklad dávkového přepisu s informacemi o mluvčím u každého slova. U rozhovoru zachovejte tato označení spolu s rozpoznaným textem a před přiřazením skutečných jmen nebo rolí porovnejte změny mluvčích s nahrávkou. Podobné hlasy, přerušování a překrývající se řeč mohou přiřazení ztížit. Ujasněte si uspořádání kanálů zdrojové nahrávky i účel zamýšlené kontroly mluvčích a nepovažujte pouhé označení za nezávisle ověřenou identitu.\n\nTaké časové údaje závisejí na metodě. Streamované rozpoznávání poskytuje časové značky na úrovni promluv, zatímco pokyny výrobce k rozpoznávání ze souborů popisují volitelné časové údaje jednotlivých slov s možným dopadem na kvalitu přepisu. Uchovejte metadata, která zvolená metoda skutečně vrátí, a spolu se zněním zkontrolujte i časové zarovnání. Pracovní postup tvorby titulků potřebuje obojí: čitelný rozpoznaný text a podklad pro ověření, že časová hranice odpovídá správnému zvuku. Google také upozorňuje, že vrácená hodnota jistoty na úrovni slov není skutečným skóre spolehlivosti, a proto by se neměla používat k potvrzení správnosti slova.\n\nPřizpůsobení rozpoznávání řeči poskytuje fráze a vlastní jména, které se v nahrávce pravděpodobně objeví. Výrobce dokumentuje slovník až 1,000 frází a doporučuje co nejmenší počet relevantních položek, aby se nezhoršilo rozpoznávání ostatních výrazů. U technické prezentace připravte krátký seznam skutečných názvů produktů a zkratek a poté je v přepisu zkontrolujte. Zvýhodnění výrazu pomáhá rozpoznávání tento výraz zohlednit; nedokládá, že byl vysloven, ani nenahrazuje kontrolu podle zvuku.\n\nModel nabízí automatickou interpunkci a psaní velkých písmen, které lze v dokumentovaném rozhraní vypnout. Google také popisuje funkci ve verzi preview pro vlastní pokyny k formátování přepisu, například jak zapsat konkrétní jméno nebo datum. Tyto pokyny zaměřte na formátování rozpoznané řeči. Přepis, který sjednotí zápis data nebo upraví velká písmena v názvu značky, musí stále zachovat význam promluvy. Shrnutí, překlad nebo faktická analýza jsou následným využitím přepisu, nikoli něčím, co samotný výsledek rozpoznávání prokazuje.\n\nVestavěná funkce potlačení šumu je určena k omezení hudby na pozadí a okolních zvuků, například deště nebo hluku ulice. Google výslovně uvádí, že nedokáže odstranit lidské hlasy na pozadí. Při přípravě nahrávky s překrývajícími se hovory tento rozdíl zachovejte. Hlučné i tiché úseky zkontrolujte podle zdroje, místo abyste předpokládali, že úhlednější přepis dokazuje odstranění rušivého zvuku. Užitečný výsledek ponechává nejisté pasáže rozpoznatelné pro opravu.\n\nU streamovaných úloh citlivost detekce konce promluvy mění okamžik, kdy se promluva považuje za ukončenou. Výrobce popisuje nastavení standard, short a supershort pro stále kratší očekávanou řeč. Rychlejší nastavení může předčasně ukončit rozpoznávání mluvčího, který se uprostřed myšlenky odmlčí. Nastavení přizpůsobte přirozenému diktování, krátké větě nebo velmi stručnému příkazu a spolu s přepisem uchovejte stav označující konečný výsledek. U dokončeného souboru zkontrolujte jména, množství, zápory a hranice promluv jednotlivých mluvčích a poté uchovejte zvolený režim a zdrojový zvuk, aby bylo možné výsledek ověřit nebo znovu použít.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "63e1a4c525b5bbd27bf51fc47c6fc0067d831efc88c0fbf18ed5775fb8105ba1",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "cs",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">G</span><h2 id=\"sheet-title\">Google: Chirp 3</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Zavřít\">×</button></div><div class=\"idline\"><span>Google /</span><code>google/chirp-3</code><button type=\"button\" id=\"copy-id\">Zkopírovat ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Sekce karty modelu\"><button type=\"button\" data-card-jump=\"overview\">Úvod</button><button type=\"button\" data-card-jump=\"methods\">Vstupy a metody</button><button type=\"button\" data-card-jump=\"pricing\">Tarify</button><button type=\"button\" data-card-jump=\"examples\">Příklady</button><button type=\"button\" data-card-jump=\"results\">Výsledky</button><button type=\"button\" data-card-jump=\"aliases\">Aliasy</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Metody 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|google%2Fchirp-3\">Rozpoznávání</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Úvod</h3><p class=\"mdesc-full\">Google Chirp 3 je vícejazyčný model rozpoznávání řeči pro streamování, krátké nahrávky a dávkový přepis delších záznamů. Nabízí automatickou detekci jazyka, interpunkci, přizpůsobení slovní zásoby a podle zvoleného režimu také časové údaje nebo metadata o mluvčích. Jeho funkce potlačení šumu omezuje hluk na pozadí, ale nedokáže odstranit jiné hlasy.</p><dl class=\"card-io\" data-card-io><div><dt>Přijímané vstupy</dt><dd>Zvuk</dd></div><div><dt>Výsledky</dt><dd>Text</dd></div></dl><details class=\"card-about\"><summary>O modelu</summary><p class=\"note-s\" data-model-method-boundary>Tento popis zahrnuje schopnosti modelu. Vstupy, výstupy a možnosti dostupné v Ailoot jsou uvedeny níže pro vybranou metodu.</p><div class=\"mabout\" id=\"m-about\"><p>Google Chirp 3 je vícejazyčný model automatického rozpoznávání řeči, který převádí mluvený zvuk na text. Google jej dokumentuje jako model přepisu Chirp 3 v rámci rodiny Speech-to-Text V2 s identifikátorem modelu chirp_3. Jeho účelem je rozpoznávání nahrané nebo streamované řeči s detekcí jazyka a funkcemi určenými pro přepis. Výsledným výstupem je přepis a metadata podporovaná zvolenou metodou rozpoznávání, nikoli vygenerovaná řeč nebo volně formulovaná odpověď asistenta.</p><p>Výrobce rozlišuje streamované rozpoznávání, synchronní rozpoznávání krátkých klipů a dávkové rozpoznávání delších nahrávek. Režim zvolte podle zdrojového zvuku a požadovaného výsledku. U krátké hlasové poznámky může stačit dokončená textová odpověď. U rozhovoru nebo nahraného hovoru může být užitečnější dávkový výsledek s informacemi o mluvčích. U živých titulků nebo rozhraní ovládaného hlasovými příkazy rozlišujte průběžný text od konečného výsledku rozpoznávání a zachovejte zvukový úsek, který popisuje.</p><p>Připravte zvuk v kódování, které implementace rozpoznávání očekává. Příklady Chirp 3 od Googlu používají u nahraných souborů automaticky detekované dekódování a u konfigurace streamování surového zvuku explicitně nastavené dekódování. Související referenční dokumentace dekodéru V2 uvádí mezi podporovanými kódováními WAV PCM nebo kompandovaný zvuk, FLAC, MP3, Ogg/WebM Opus a AAC v kontejnerech MP4, M4A či MOV. Název kontejneru nenahrazuje skutečný kodek a nastavení vzorkování. Zachovejte srozumitelnou řeč a vyhněte se silnému přebuzení nebo zbytečným převodům, při nichž se ztrácejí slyšitelné detaily.</p><p>Chirp 3 dokáže automaticky určit a přepsat převládající jazyk a sada očekávaných jazykových variant může zúžit možnosti rozpoznávání. Dostupnost jazyků se liší podle metody a funkce. Seznam jazyků pro přepis je širší než seznam jazyků pro diarizaci, takže rozpoznávání určitého jazyka samo o sobě nedokládá, že jsou pro něj dostupné všechny funkce týkající se mluvčích nebo časových údajů. Použijte jazykovou variantu odpovídající nahrávce a jména pronesená při střídání jazyků nebo odborné termíny ponechte ke kontrole. Označení detekovaného jazyka je součástí výsledku, nikoli důkazem, že všechna neobvyklá slova byla rozpoznána správně.</p><p>Diarizace mluvčích seskupuje řeč podle hlasu v jednokanálové nahrávce. Google uvádí příklad dávkového přepisu s informacemi o mluvčím u každého slova. U rozhovoru zachovejte tato označení spolu s rozpoznaným textem a před přiřazením skutečných jmen nebo rolí porovnejte změny mluvčích s nahrávkou. Podobné hlasy, přerušování a překrývající se řeč mohou přiřazení ztížit. Ujasněte si uspořádání kanálů zdrojové nahrávky i účel zamýšlené kontroly mluvčích a nepovažujte pouhé označení za nezávisle ověřenou identitu.</p><p>Také časové údaje závisejí na metodě. Streamované rozpoznávání poskytuje časové značky na úrovni promluv, zatímco pokyny výrobce k rozpoznávání ze souborů popisují volitelné časové údaje jednotlivých slov s možným dopadem na kvalitu přepisu. Uchovejte metadata, která zvolená metoda skutečně vrátí, a spolu se zněním zkontrolujte i časové zarovnání. Pracovní postup tvorby titulků potřebuje obojí: čitelný rozpoznaný text a podklad pro ověření, že časová hranice odpovídá správnému zvuku. Google také upozorňuje, že vrácená hodnota jistoty na úrovni slov není skutečným skóre spolehlivosti, a proto by se neměla používat k potvrzení správnosti slova.</p><p>Přizpůsobení rozpoznávání řeči poskytuje fráze a vlastní jména, které se v nahrávce pravděpodobně objeví. Výrobce dokumentuje slovník až 1,000 frází a doporučuje co nejmenší počet relevantních položek, aby se nezhoršilo rozpoznávání ostatních výrazů. U technické prezentace připravte krátký seznam skutečných názvů produktů a zkratek a poté je v přepisu zkontrolujte. Zvýhodnění výrazu pomáhá rozpoznávání tento výraz zohlednit; nedokládá, že byl vysloven, ani nenahrazuje kontrolu podle zvuku.</p><p>Model nabízí automatickou interpunkci a psaní velkých písmen, které lze v dokumentovaném rozhraní vypnout. Google také popisuje funkci ve verzi preview pro vlastní pokyny k formátování přepisu, například jak zapsat konkrétní jméno nebo datum. Tyto pokyny zaměřte na formátování rozpoznané řeči. Přepis, který sjednotí zápis data nebo upraví velká písmena v názvu značky, musí stále zachovat význam promluvy. Shrnutí, překlad nebo faktická analýza jsou následným využitím přepisu, nikoli něčím, co samotný výsledek rozpoznávání prokazuje.</p><p>Vestavěná funkce potlačení šumu je určena k omezení hudby na pozadí a okolních zvuků, například deště nebo hluku ulice. Google výslovně uvádí, že nedokáže odstranit lidské hlasy na pozadí. Při přípravě nahrávky s překrývajícími se hovory tento rozdíl zachovejte. Hlučné i tiché úseky zkontrolujte podle zdroje, místo abyste předpokládali, že úhlednější přepis dokazuje odstranění rušivého zvuku. Užitečný výsledek ponechává nejisté pasáže rozpoznatelné pro opravu.</p><p>U streamovaných úloh citlivost detekce konce promluvy mění okamžik, kdy se promluva považuje za ukončenou. Výrobce popisuje nastavení standard, short a supershort pro stále kratší očekávanou řeč. Rychlejší nastavení může předčasně ukončit rozpoznávání mluvčího, který se uprostřed myšlenky odmlčí. Nastavení přizpůsobte přirozenému diktování, krátké větě nebo velmi stručnému příkazu a spolu s přepisem uchovejte stav označující konečný výsledek. U dokončeného souboru zkontrolujte jména, množství, zápory a hranice promluv jednotlivých mluvčích a poté uchovejte zvolený režim a zdrojový zvuk, aby bylo možné výsledek ověřit nebo znovu použít.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Dostupné v Ailoot · vstupy a metody</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Přepis řeči</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Vstup</dt><dd><code>audio</code></dd></div><div><dt>Výstup</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Pole</th><th>Typ</th><th>Požadavek</th><th>Hodnoty a limity</th><th>Výchozí</th></tr></thead><tbody><tr><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string</code></td><td data-cell-label=\"Požadavek\"><span class=\"card-cell-label\">Požadavek</span>Povinné</td><td data-cell-label=\"Hodnoty a limity\"><span class=\"card-cell-label\">Hodnoty a limity</span><div>google/chirp-3</div></td><td data-cell-label=\"Výchozí\" data-default=\"unspecified\"><span class=\"card-cell-label\">Výchozí</span>—</td></tr><tr><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>object</code></td><td data-cell-label=\"Požadavek\"><span class=\"card-cell-label\">Požadavek</span>Povinné</td><td data-cell-label=\"Hodnoty a limity\"><span class=\"card-cell-label\">Hodnoty a limity</span></td><td data-cell-label=\"Výchozí\" data-default=\"unspecified\"><span class=\"card-cell-label\">Výchozí</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Parametry a životní cyklus metody</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parametr</th><th>Kontrakt</th></tr></thead><tbody><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>content_type</code></th><td data-cell-label=\"Kontrakt\"><span class=\"card-cell-label\">Kontrakt</span>application/json</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>required</code></th><td data-cell-label=\"Kontrakt\"><span class=\"card-cell-label\">Kontrakt</span>model, input_audio</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>material_types</code></th><td data-cell-label=\"Kontrakt\"><span class=\"card-cell-label\">Kontrakt</span>audio</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>material_conditions</code></th><td data-cell-label=\"Kontrakt\"><span class=\"card-cell-label\">Kontrakt</span>Příklad načte váš skutečný neprázdný soubor PCM WAV, zakóduje všechny jeho bajty do base64 a odešle input_audio.format s hodnotou wav.</td></tr></tbody></table></div><p>Životní cyklus: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · přesné task_id z existujícího záznamu média spravovaného službou</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Tarify</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Údaje o tarifech nepřidávají možnosti požadavku. Podporované parametry jsou uvedeny u vybrané metody.</p><dl data-price-conditions><dt>Rychlý režim</dt><dd>Neuvedeno <span class=\"note-s\">Při výběru rychlého režimu</span></dd><dt>Režim flex</dt><dd>Neuvedeno <span class=\"note-s\">Při výběru režimu flex</span></dd><dt>Maximální intenzita uvažování</dt><dd>Neuvedeno <span class=\"note-s\">Když se při maximální intenzitě uvažování použije výchozí úprava (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Sazby Ailoot</h4><h4>Ceny podle konfigurace</h4><p class=\"note-s\">Přiřaďte každý poplatek k uvedeným podmínkám. Pro každou sadu alternativních konfigurací použijte jednu sazbu.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfigurace</th><th>Tabulka sazeb</th><th>Účtovací jednotka</th><th>Poplatek</th></tr></thead><tbody><tr><th data-cell-label=\"Konfigurace\" scope=\"row\"><span class=\"card-cell-label\">Konfigurace</span>Základní sazby za tokeny</th><td data-cell-label=\"Tabulka sazeb\"><span class=\"card-cell-label\">Tabulka sazeb</span>Základní sazba</td><td data-cell-label=\"Účtovací jednotka\"><span class=\"card-cell-label\">Účtovací jednotka</span>—</td><td data-cell-label=\"Poplatek\"><span class=\"card-cell-label\">Poplatek</span><div><span>Vstup · Vstupní tokeny</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenů</span></div><div><span>Výstup · Výstupní tokeny</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenů</span></div><div><span>Vstup · Čtení z mezipaměti</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenů</span></div><div><span>Vstup · Zápis do mezipaměti</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenů</span></div><div><span>Vstup · Zápis do mezipaměti, 1 hodina</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenů</span></div></td></tr><tr><th data-cell-label=\"Konfigurace\" scope=\"row\"><span class=\"card-cell-label\">Konfigurace</span>sekunda vstupního zvuku</th><td data-cell-label=\"Tabulka sazeb\"><span class=\"card-cell-label\">Tabulka sazeb</span>—</td><td data-cell-label=\"Účtovací jednotka\"><span class=\"card-cell-label\">Účtovací jednotka</span>za sekundu vstupního zvuku</td><td data-cell-label=\"Poplatek\"><span class=\"card-cell-label\">Poplatek</span><div><span>Vstup · sekunda vstupního zvuku</span> <b>$0.000533333333334</b> <span class=\"price-unit\">za sekundu vstupního zvuku</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. <a href=\"/docs/cs/billing/reserve/\">Jak funguje rezervace a vyúčtování →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Příklady požadavků</h3><h4>Ailoot Ultra · Přepis řeči</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Varianty kódu\"><button class=\"cg-tab\" id=\"model-code-1435-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1435-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · skutečný soubor WAV a úplný původní výsledek</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Zkopírovat kód\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1435-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1435-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 the path to your actual PCM WAV recording}&quot;\nexport AILOOT_AUDIO_FILE\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ[&#39;AILOOT_AUDIO_FILE&#39;]).read_bytes()\nif not (audio[:4] == b&#39;RIFF&#39; and audio[8:12] == b&#39;WAVE&#39;):\n    raise SystemExit(&#39;Supply your actual PCM WAV audio file&#39;)\nwith wave.open(io.BytesIO(audio), &#39;rb&#39;) as recording:\n    if recording.getcomptype() != &#39;NONE&#39; or recording.getnframes() &lt;= 0:\n        raise SystemExit(&#39;Supply a nonempty PCM WAV recording&#39;)\nrequest = {&#39;model&#39;: &#39;google/chirp-3&#39;, &#39;input_audio&#39;: {&#39;data&#39;: base64.b64encode(audio).decode(&#39;ascii&#39;), &#39;format&#39;: &#39;wav&#39;}}\nPath(&#39;request.json&#39;).write_text(json.dumps(request, ensure_ascii=False), encoding=&#39;utf-8&#39;)\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/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 response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Přijímání a ukládání výsledků</h3><h4>Ailoot Ultra · Přepis řeči</h4><p class=\"note-s\">Celé původní tělo odpovědi, stav a předané hlavičky. Tento obslužný kód nepřidává žádnou univerzální strukturu JSON, textové pole ani obalovou strukturu úlohy.</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>Uchovejte všechny dokončené výsledky</h5><p class=\"note-s\">Uchovejte každou úplnou vrácenou odpověď, soubor i část obsahu.</p><p class=\"note-s\">Uchovejte úplnou odpověď a hlavičky, všechny skutečné výstupy, původní vrácené identifikátory a všechna pole s údaji o využití. Obnovte původní operaci bez opětovného odeslání požadavku na vytvoření.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Pokud je nutné ověřit původní odpověď</h5><p class=\"note-s\">Uchovejte skutečné X-Client-Request-ID a celou odpověď. Načítejte původní soubory spravované službou a jejich přesné podepsané URL obsahu; vytvoření s nejistým výsledkem nikdy znovu neodesílejte.</p></div><details class=\"card-about\" data-output-fields><summary>Pole odpovědi</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Pole</th><th>Typ</th></tr></thead><tbody><tr><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">text (when present)</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span></td></tr><tr><th data-cell-label=\"Pole\" scope=\"row\"><span class=\"card-cell-label\">Pole</span><code class=\"card-field-name\">usage (when present)</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span></td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Chyby a další kroky</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Odpověď</th><th>Podmínka</th><th>Další krok</th></tr></thead><tbody><tr><th data-cell-label=\"Odpověď\" scope=\"row\"><span class=\"card-cell-label\">Odpověď</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Podmínka\"><span class=\"card-cell-label\">Podmínka</span>Tělo JSON nebo explicitně uvedené kanonické ID modelu jsou neplatné.</td><td data-cell-label=\"Další krok\"><span class=\"card-cell-label\">Další krok</span>Uchovejte odpověď a opravte označené pole požadavku.</td></tr><tr><th data-cell-label=\"Odpověď\" scope=\"row\"><span class=\"card-cell-label\">Odpověď</span>401 · <code>authentication_error</code></th><td data-cell-label=\"Podmínka\"><span class=\"card-cell-label\">Podmínka</span>Klíč API Ailoot je neplatný.</td><td data-cell-label=\"Další krok\"><span class=\"card-cell-label\">Další krok</span>Použijte svůj autorizovaný klíč API Ailoot.</td></tr><tr><th data-cell-label=\"Odpověď\" scope=\"row\"><span class=\"card-cell-label\">Odpověď</span>403 · <code>permission_error</code></th><td data-cell-label=\"Podmínka\"><span class=\"card-cell-label\">Podmínka</span>Skupina klíče nemá přístup k této metodě.</td><td data-cell-label=\"Další krok\"><span class=\"card-cell-label\">Další krok</span>Uchovejte vrácené podrobnosti chyby.</td></tr><tr><th data-cell-label=\"Odpověď\" scope=\"row\"><span class=\"card-cell-label\">Odpověď</span>404 · <code>not_found_error</code></th><td data-cell-label=\"Podmínka\"><span class=\"card-cell-label\">Podmínka</span>Vybraná metoda nemá žádnou trasu s povoleným přístupem.</td><td data-cell-label=\"Další krok\"><span class=\"card-cell-label\">Další krok</span>Uchovejte vrácené podrobnosti chyby.</td></tr><tr><th data-cell-label=\"Odpověď\" scope=\"row\"><span class=\"card-cell-label\">Odpověď</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Podmínka\"><span class=\"card-cell-label\">Podmínka</span>Přijatý tarif nedokáže získat potřebné vstupní množství nebo jeho horní mez.</td><td data-cell-label=\"Další krok\"><span class=\"card-cell-label\">Další krok</span>Uchovejte odpověď; použijte způsob zadání vstupu požadovaný přijatým tarifem.</td></tr><tr><th data-cell-label=\"Odpověď\" scope=\"row\"><span class=\"card-cell-label\">Odpověď</span>503 · <code></code></th><td data-cell-label=\"Podmínka\"><span class=\"card-cell-label\">Podmínka</span>Potřebné úložiště, trasa, cena metody nebo rezervace nejsou dostupné.</td><td data-cell-label=\"Další krok\"><span class=\"card-cell-label\">Další krok</span>Uchovejte celou původní odpověď. Nejasná rezervace neopravňuje k opětovnému odeslání.</td></tr><tr><th data-cell-label=\"Odpověď\" scope=\"row\"><span class=\"card-cell-label\">Odpověď</span>502 · <code>server_error</code></th><td data-cell-label=\"Podmínka\"><span class=\"card-cell-label\">Podmínka</span>Původní výsledek, údaje o využití nebo vyúčtování vyžadují kontrolu.</td><td data-cell-label=\"Další krok\"><span class=\"card-cell-label\">Další krok</span>Uchovejte skutečné ID požadavku a původní odpověď. Načítejte existující záznam spravovaný službou; požadavek na vytvoření znovu neodesílejte.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Aliasy</h3><h4>Aliasy modelu</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=google%2Fchirp-3&amp;route=Ultra&amp;caller=google%2Fchirp-3&amp;fmt=transcriptions\"><code>google/chirp-3</code></a></span></p><h4>Aliasy cest metod</h4><p class=\"note-s\">Použijte cesty metod uvedené výše.</p><h4>Související ID modelů</h4><p class=\"note-s\"><a href=\"#m=google%2Fchirp-3&amp;route=Ultra&amp;caller=google%2Fchirp-3&amp;fmt=transcriptions\"><code>google/chirp-3</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "google/chirp-3",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "google/chirp-3",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|google%2Fchirp-3",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "Tělo JSON nebo explicitně uvedené kanonické ID modelu jsou neplatné.",
                "http_status": 400,
                "recovery": "Uchovejte odpověď a opravte označené pole požadavku.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Klíč API Ailoot je neplatný.",
                "http_status": 401,
                "recovery": "Použijte svůj autorizovaný klíč API Ailoot.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Skupina klíče nemá přístup k této metodě.",
                "http_status": 403,
                "recovery": "Uchovejte vrácené podrobnosti chyby.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Vybraná metoda nemá žádnou trasu s povoleným přístupem.",
                "http_status": 404,
                "recovery": "Uchovejte vrácené podrobnosti chyby.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Přijatý tarif nedokáže získat potřebné vstupní množství nebo jeho horní mez.",
                "http_status": 422,
                "recovery": "Uchovejte odpověď; použijte způsob zadání vstupu požadovaný přijatým tarifem.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Potřebné úložiště, trasa, cena metody nebo rezervace nejsou dostupné.",
                "http_status": 503,
                "recovery": "Uchovejte celou původní odpověď. Nejasná rezervace neopravňuje k opětovnému odeslání.",
                "type": null
              },
              {
                "code": null,
                "condition": "Původní výsledek, údaje o využití nebo vyúčtování vyžadují kontrolu.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Uchovejte skutečné ID požadavku a původní odpověď. Načítejte existující záznam spravovaný službou; požadavek na vytvoření znovu neodesílejte.",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Uchovejte skutečné X-Client-Request-ID a celou odpověď. Načítejte původní soubory spravované službou a jejich přesné podepsané URL obsahu; vytvoření s nejistým výsledkem nikdy znovu neodesílejte."
            },
            "outputs": {
              "all_results": "Uchovejte úplnou odpověď a hlavičky, všechny skutečné výstupy, původní vrácené identifikátory a všechna pole s údaji o využití. Obnovte původní operaci bez opětovného odeslání požadavku na vytvoření.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Celé původní tělo odpovědi, stav a předané hlavičky. Tento obslužný kód nepřidává žádnou univerzální strukturu JSON, textové pole ani obalovou strukturu úlohy."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "google/chirp-3"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "google/chirp-3"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "google/chirp-3"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Příklad načte váš skutečný neprázdný soubor PCM WAV, zakóduje všechny jeho bajty do base64 a odešle input_audio.format s hodnotou wav."
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "přesné task_id z existujícího záznamu média spravovaného službou",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "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.000533333333334",
                "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.000533333333334",
                "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 the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'google/chirp-3', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Přepis řeči",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "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.000533333333334
          }
        },
        "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.000533333333334",
                "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.000533333333334",
                "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": "google/chirp-3",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.000533333333334",
            "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.000533333333334",
            "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": "google/chirp-3",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "d25f3a3f34709beda8113d90822aed9ce8916ccdcc538e688dfa5195acfce5ec",
    "input_html_sha256": "5edaf9ca3dec2cb3f879dda42d7b86f0a191ac3f6e9b3c64d47f804f60281b59",
    "private_audit_sha256": "62c3cbd68e7e94c68d0e873e121cbe5194f0bce125fbfdcf304a8a4913d025fd",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/cs/google-chirp-3/",
    "description": "Google Chirp 3 je vícejazyčný model rozpoznávání řeči pro streamování, krátké nahrávky a dávkový přepis delších záznamů. Nabízí automatickou detekci jazyka, interpunkci, přizpůsobení slovní zásoby a podle zvoleného režimu také časové údaje nebo metadata o mluvčích. Jeho funkce potlačení šumu omezuje hluk na pozadí, ale nedokáže odstranit jiné hlasy.",
    "locale": "cs",
    "md_url": "https://ailoot.ai/models/cs/google-chirp-3/index.md",
    "title": "Google: Chirp 3 — Ailoot",
    "url": "https://ailoot.ai/models/cs/google-chirp-3/"
  },
  "rawModel": {
    "about": "Google Chirp 3 je vícejazyčný model automatického rozpoznávání řeči, který převádí mluvený zvuk na text. Google jej dokumentuje jako model přepisu Chirp 3 v rámci rodiny Speech-to-Text V2 s identifikátorem modelu chirp_3. Jeho účelem je rozpoznávání nahrané nebo streamované řeči s detekcí jazyka a funkcemi určenými pro přepis. Výsledným výstupem je přepis a metadata podporovaná zvolenou metodou rozpoznávání, nikoli vygenerovaná řeč nebo volně formulovaná odpověď asistenta.\n\nVýrobce rozlišuje streamované rozpoznávání, synchronní rozpoznávání krátkých klipů a dávkové rozpoznávání delších nahrávek. Režim zvolte podle zdrojového zvuku a požadovaného výsledku. U krátké hlasové poznámky může stačit dokončená textová odpověď. U rozhovoru nebo nahraného hovoru může být užitečnější dávkový výsledek s informacemi o mluvčích. U živých titulků nebo rozhraní ovládaného hlasovými příkazy rozlišujte průběžný text od konečného výsledku rozpoznávání a zachovejte zvukový úsek, který popisuje.\n\nPřipravte zvuk v kódování, které implementace rozpoznávání očekává. Příklady Chirp 3 od Googlu používají u nahraných souborů automaticky detekované dekódování a u konfigurace streamování surového zvuku explicitně nastavené dekódování. Související referenční dokumentace dekodéru V2 uvádí mezi podporovanými kódováními WAV PCM nebo kompandovaný zvuk, FLAC, MP3, Ogg/WebM Opus a AAC v kontejnerech MP4, M4A či MOV. Název kontejneru nenahrazuje skutečný kodek a nastavení vzorkování. Zachovejte srozumitelnou řeč a vyhněte se silnému přebuzení nebo zbytečným převodům, při nichž se ztrácejí slyšitelné detaily.\n\nChirp 3 dokáže automaticky určit a přepsat převládající jazyk a sada očekávaných jazykových variant může zúžit možnosti rozpoznávání. Dostupnost jazyků se liší podle metody a funkce. Seznam jazyků pro přepis je širší než seznam jazyků pro diarizaci, takže rozpoznávání určitého jazyka samo o sobě nedokládá, že jsou pro něj dostupné všechny funkce týkající se mluvčích nebo časových údajů. Použijte jazykovou variantu odpovídající nahrávce a jména pronesená při střídání jazyků nebo odborné termíny ponechte ke kontrole. Označení detekovaného jazyka je součástí výsledku, nikoli důkazem, že všechna neobvyklá slova byla rozpoznána správně.\n\nDiarizace mluvčích seskupuje řeč podle hlasu v jednokanálové nahrávce. Google uvádí příklad dávkového přepisu s informacemi o mluvčím u každého slova. U rozhovoru zachovejte tato označení spolu s rozpoznaným textem a před přiřazením skutečných jmen nebo rolí porovnejte změny mluvčích s nahrávkou. Podobné hlasy, přerušování a překrývající se řeč mohou přiřazení ztížit. Ujasněte si uspořádání kanálů zdrojové nahrávky i účel zamýšlené kontroly mluvčích a nepovažujte pouhé označení za nezávisle ověřenou identitu.\n\nTaké časové údaje závisejí na metodě. Streamované rozpoznávání poskytuje časové značky na úrovni promluv, zatímco pokyny výrobce k rozpoznávání ze souborů popisují volitelné časové údaje jednotlivých slov s možným dopadem na kvalitu přepisu. Uchovejte metadata, která zvolená metoda skutečně vrátí, a spolu se zněním zkontrolujte i časové zarovnání. Pracovní postup tvorby titulků potřebuje obojí: čitelný rozpoznaný text a podklad pro ověření, že časová hranice odpovídá správnému zvuku. Google také upozorňuje, že vrácená hodnota jistoty na úrovni slov není skutečným skóre spolehlivosti, a proto by se neměla používat k potvrzení správnosti slova.\n\nPřizpůsobení rozpoznávání řeči poskytuje fráze a vlastní jména, které se v nahrávce pravděpodobně objeví. Výrobce dokumentuje slovník až 1,000 frází a doporučuje co nejmenší počet relevantních položek, aby se nezhoršilo rozpoznávání ostatních výrazů. U technické prezentace připravte krátký seznam skutečných názvů produktů a zkratek a poté je v přepisu zkontrolujte. Zvýhodnění výrazu pomáhá rozpoznávání tento výraz zohlednit; nedokládá, že byl vysloven, ani nenahrazuje kontrolu podle zvuku.\n\nModel nabízí automatickou interpunkci a psaní velkých písmen, které lze v dokumentovaném rozhraní vypnout. Google také popisuje funkci ve verzi preview pro vlastní pokyny k formátování přepisu, například jak zapsat konkrétní jméno nebo datum. Tyto pokyny zaměřte na formátování rozpoznané řeči. Přepis, který sjednotí zápis data nebo upraví velká písmena v názvu značky, musí stále zachovat význam promluvy. Shrnutí, překlad nebo faktická analýza jsou následným využitím přepisu, nikoli něčím, co samotný výsledek rozpoznávání prokazuje.\n\nVestavěná funkce potlačení šumu je určena k omezení hudby na pozadí a okolních zvuků, například deště nebo hluku ulice. Google výslovně uvádí, že nedokáže odstranit lidské hlasy na pozadí. Při přípravě nahrávky s překrývajícími se hovory tento rozdíl zachovejte. Hlučné i tiché úseky zkontrolujte podle zdroje, místo abyste předpokládali, že úhlednější přepis dokazuje odstranění rušivého zvuku. Užitečný výsledek ponechává nejisté pasáže rozpoznatelné pro opravu.\n\nU streamovaných úloh citlivost detekce konce promluvy mění okamžik, kdy se promluva považuje za ukončenou. Výrobce popisuje nastavení standard, short a supershort pro stále kratší očekávanou řeč. Rychlejší nastavení může předčasně ukončit rozpoznávání mluvčího, který se uprostřed myšlenky odmlčí. Nastavení přizpůsobte přirozenému diktování, krátké větě nebo velmi stručnému příkazu a spolu s přepisem uchovejte stav označující konečný výsledek. U dokončeného souboru zkontrolujte jména, množství, zápory a hranice promluv jednotlivých mluvčích a poté uchovejte zvolený režim a zdrojový zvuk, aby bylo možné výsledek ověřit nebo znovu použít.",
    "alias_of": null,
    "aliases": [],
    "author": "Google",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.000533333333334",
            "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.000533333333334",
            "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": "Kompletní ceník konfigurace v podrobnostech."
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "google/chirp-3",
    "input": [
      "audio"
    ],
    "kind": "audio",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "Tělo JSON nebo explicitně uvedené kanonické ID modelu jsou neplatné.",
                "http_status": 400,
                "recovery": "Uchovejte odpověď a opravte označené pole požadavku.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Klíč API Ailoot je neplatný.",
                "http_status": 401,
                "recovery": "Použijte svůj autorizovaný klíč API Ailoot.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Skupina klíče nemá přístup k této metodě.",
                "http_status": 403,
                "recovery": "Uchovejte vrácené podrobnosti chyby.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Vybraná metoda nemá žádnou trasu s povoleným přístupem.",
                "http_status": 404,
                "recovery": "Uchovejte vrácené podrobnosti chyby.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Přijatý tarif nedokáže získat potřebné vstupní množství nebo jeho horní mez.",
                "http_status": 422,
                "recovery": "Uchovejte odpověď; použijte způsob zadání vstupu požadovaný přijatým tarifem.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Potřebné úložiště, trasa, cena metody nebo rezervace nejsou dostupné.",
                "http_status": 503,
                "recovery": "Uchovejte celou původní odpověď. Nejasná rezervace neopravňuje k opětovnému odeslání.",
                "type": null
              },
              {
                "code": null,
                "condition": "Původní výsledek, údaje o využití nebo vyúčtování vyžadují kontrolu.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Uchovejte skutečné ID požadavku a původní odpověď. Načítejte existující záznam spravovaný službou; požadavek na vytvoření znovu neodesílejte.",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Uchovejte skutečné X-Client-Request-ID a celou odpověď. Načítejte původní soubory spravované službou a jejich přesné podepsané URL obsahu; vytvoření s nejistým výsledkem nikdy znovu neodesílejte."
            },
            "outputs": {
              "all_results": "Uchovejte úplnou odpověď a hlavičky, všechny skutečné výstupy, původní vrácené identifikátory a všechna pole s údaji o využití. Obnovte původní operaci bez opětovného odeslání požadavku na vytvoření.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Celé původní tělo odpovědi, stav a předané hlavičky. Tento obslužný kód nepřidává žádnou univerzální strukturu JSON, textové pole ani obalovou strukturu úlohy."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "google/chirp-3"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "google/chirp-3"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "google/chirp-3"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Příklad načte váš skutečný neprázdný soubor PCM WAV, zakóduje všechny jeho bajty do base64 a odešle input_audio.format s hodnotou wav."
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "přesné task_id z existujícího záznamu média spravovaného službou",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "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.000533333333334",
                "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.000533333333334",
                "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 the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'google/chirp-3', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Přepis řeči",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "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.000533333333334
          }
        },
        "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.000533333333334",
                "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.000533333333334",
                "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": "google/chirp-3",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.000533333333334",
            "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.000533333333334",
            "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": "google/chirp-3",
        "request_model_id": "google/chirp-3",
        "route_label": "Ultra"
      }
    ],
    "name": "Google: Chirp 3",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "Google Chirp 3 je vícejazyčný model rozpoznávání řeči pro streamování, krátké nahrávky a dávkový přepis delších záznamů. Nabízí automatickou detekci jazyka, interpunkci, přizpůsobení slovní zásoby a podle zvoleného režimu také časové údaje nebo metadata o mluvčích. Jeho funkce potlačení šumu omezuje hluk na pozadí, ale nedokáže odstranit jiné hlasy."
  },
  "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": "Google Chirp 3 je vícejazyčný model rozpoznávání řeči pro streamování, krátké nahrávky a dávkový přepis delších záznamů. Nabízí automatickou detekci jazyka, interpunkci, přizpůsobení slovní zásoby a podle zvoleného režimu také časové údaje nebo metadata o mluvčích. Jeho funkce potlačení šumu omezuje hluk na pozadí, ale nedokáže odstranit jiné hlasy.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "0fc7344b4e843b76963a4ebb69f8a64c416cfd655098034e82e12f55ecda11ca",
    "renderer_sha256": "41721c81890b87836cd3fd41ef732d3276f5969e30822ba09962305294953718"
  },
  "sourceRevision": "f3ee0ee4b148fc30f43883f86ce35fa35cab94af3a55a714167b9ba04bc3b119"
}
