{
  "aboutHtml": "<p>Google Chirp 3 to wielojęzyczny model automatycznego rozpoznawania mowy, który przekształca wypowiedzi z nagrań audio w tekst. Google opisuje go jako model transkrypcji Chirp 3 w rodzinie Speech-to-Text V2, z identyfikatorem modelu chirp_3. Służy do rozpoznawania mowy nagranej lub przesyłanej strumieniowo, z wykrywaniem języka i funkcjami właściwymi dla transkrypcji. Wynikiem jest transkrypcja wraz z metadanymi obsługiwanymi przez wybraną metodę rozpoznawania, a nie wygenerowana mowa czy swobodna odpowiedź asystenta.</p><p>Producent rozróżnia rozpoznawanie strumieniowe, rozpoznawanie synchroniczne dla krótkich klipów oraz rozpoznawanie wsadowe dla dłuższych nagrań. Wybierz tryb odpowiedni do źródłowego dźwięku i wymaganego wyniku. W przypadku krótkiej notatki głosowej wystarczająca może być ukończona odpowiedź tekstowa. W przypadku wywiadu lub nagranej rozmowy bardziej przydatny może być wynik wsadowy zawierający informacje o mówcach. Przy tworzeniu napisów na żywo lub interfejsu poleceń głosowych odróżniaj tekst pośredni od ostatecznego wyniku rozpoznawania i zachowuj informacje o przedziale nagrania, którego dotyczy.</p><p>Przygotuj dźwięk w kodowaniu oczekiwanym przez implementację rozpoznawania. Przykłady Google dla Chirp 3 wykorzystują automatycznie wykrywane dekodowanie dla nagranych plików oraz jawnie określone dekodowanie w konfiguracji strumieniowania surowego dźwięku. Powiązana dokumentacja dekodera V2 wymienia wśród obsługiwanych kodowań WAV z dźwiękiem PCM lub kompandowanym, FLAC, MP3, Ogg/WebM Opus oraz AAC w kontenerach MP4, M4A lub MOV. Nazwa kontenera nie zastępuje rzeczywistego kodeka i konfiguracji próbkowania. Zadbaj o wyraźną mowę i unikaj silnego przesterowania oraz zbędnej konwersji powodującej utratę słyszalnych szczegółów.</p><p>Chirp 3 potrafi automatycznie zidentyfikować i transkrybować dominujący język, a zestaw oczekiwanych wariantów językowo-regionalnych może zawęzić możliwości rozpoznawania. Dostępność języków zależy od metody i funkcji. Lista języków transkrypcji jest szersza niż lista języków obsługujących diaryzację, więc samo rozpoznawanie danego języka nie oznacza, że działają w nim wszystkie funkcje dotyczące mówców lub czasu. Użyj wariantu językowo-regionalnego pasującego do nagrania i zachowaj do sprawdzenia nazwy oraz terminy specjalistyczne wypowiadane przy przełączaniu między językami. Etykieta wykrytego języka jest częścią wyniku, a nie dowodem poprawnego rozpoznania wszystkich nietypowych słów.</p><p>Diaryzacja mówców grupuje wypowiedzi według głosu w nagraniu jednokanałowym. Google udostępnia przykład transkrypcji wsadowej z informacją o mówcy dla każdego słowa. W przypadku wywiadu zachowaj te etykiety razem z rozpoznanym tekstem i porównaj zmiany mówców z nagraniem, zanim przypiszesz im rzeczywiste nazwiska lub role. Podobne głosy, przerywanie wypowiedzi i nakładanie się mowy mogą utrudniać przypisanie. Jasno określ układ kanałów materiału źródłowego i cel weryfikacji mówców, zamiast traktować etykietę jako niezależnie potwierdzoną tożsamość.</p><p>Informacje o czasie również zależą od metody. Rozpoznawanie strumieniowe zapewnia znaczniki czasu na poziomie wypowiedzi, natomiast wskazówki producenta dotyczące rozpoznawania plików opisują opcjonalne czasy poszczególnych słów, z możliwym kompromisem w jakości transkrypcji. Zachowaj metadane rzeczywiście zwrócone przez wybraną metodę i sprawdź dopasowanie czasowe razem z brzmieniem tekstu. Proces tworzenia napisów potrzebuje obu elementów: czytelnego rozpoznanego tekstu i potwierdzenia, że granica czasowa odpowiada właściwemu dźwiękowi. Google ostrzega również, że zwracana wartość pewności na poziomie słowa nie jest rzeczywistą miarą pewności, dlatego nie należy używać jej do potwierdzania poprawności słowa.</p><p>Adaptacja rozpoznawania mowy pozwala podać frazy i nazwy własne, które prawdopodobnie wystąpią w nagraniu. Producent dokumentuje słownik obejmujący do 1 000 fraz i zaleca jak najmniejszą liczbę trafnych wpisów, aby nie pogarszać rozpoznawania innych terminów. W przypadku prezentacji technicznej przygotuj krótką listę rzeczywistych nazw produktów i skrótów, a następnie sprawdź je w transkrypcji. Nadanie terminowi większej wagi pomaga uwzględnić go podczas rozpoznawania; nie dowodzi jednak, że został wypowiedziany, ani nie zastępuje sprawdzenia nagrania.</p><p>Model zapewnia automatyczną interpunkcję i stosowanie wielkich liter, które można wyłączyć w udokumentowanym interfejsie. Google opisuje również funkcję w wersji zapoznawczej pozwalającą podawać własne instrukcje formatowania transkrypcji, na przykład sposób zapisu konkretnej nazwy lub daty. Ogranicz te instrukcje do formatowania rozpoznanej mowy. Transkrypcja, która normalizuje datę lub zapisuje markę wielką literą, nadal musi zachowywać sens wypowiedzi. Streszczenie, tłumaczenie lub analiza faktów to późniejsze zastosowania transkrypcji, a nie coś, co potwierdza sam wynik rozpoznawania.</p><p>Wbudowany moduł odszumiania ma ograniczać muzykę w tle i odgłosy otoczenia, takie jak deszcz czy hałas uliczny. Google wyraźnie stwierdza, że nie może on usuwać ludzkich głosów w tle. Zachowaj to rozróżnienie przy przygotowywaniu nagrania z nakładającymi się rozmowami. Porównuj hałaśliwe i ciche fragmenty z materiałem źródłowym, zamiast zakładać, że bardziej uporządkowana transkrypcja dowodzi usunięcia zakłócającego dźwięku. Przydatny wynik pozwala rozpoznać niepewne fragmenty i je poprawić.</p><p>W zadaniach strumieniowych czułość wykrywania końca wypowiedzi wpływa na to, kiedy wypowiedź zostaje uznana za zakończoną. Producent opisuje ustawienia standard, short i supershort dla coraz krótszych oczekiwanych wypowiedzi. Szybsze ustawienie może uciąć wypowiedź osoby, która robi pauzę w środku myśli. Dopasuj ustawienie do naturalnego dyktowania, krótkiego zdania lub bardzo krótkiego polecenia i zachowaj przy transkrypcji status wyniku końcowego. W przypadku gotowego pliku sprawdź nazwy, ilości, zaprzeczenia i granice wypowiedzi mówców, a następnie zachowaj wybrany tryb oraz źródłowy dźwięk, aby wynik można było zweryfikować lub wykorzystać ponownie.</p>",
  "aboutText": "Google Chirp 3 to wielojęzyczny model automatycznego rozpoznawania mowy, który przekształca wypowiedzi z nagrań audio w tekst. Google opisuje go jako model transkrypcji Chirp 3 w rodzinie Speech-to-Text V2, z identyfikatorem modelu chirp_3. Służy do rozpoznawania mowy nagranej lub przesyłanej strumieniowo, z wykrywaniem języka i funkcjami właściwymi dla transkrypcji. Wynikiem jest transkrypcja wraz z metadanymi obsługiwanymi przez wybraną metodę rozpoznawania, a nie wygenerowana mowa czy swobodna odpowiedź asystenta.\n\nProducent rozróżnia rozpoznawanie strumieniowe, rozpoznawanie synchroniczne dla krótkich klipów oraz rozpoznawanie wsadowe dla dłuższych nagrań. Wybierz tryb odpowiedni do źródłowego dźwięku i wymaganego wyniku. W przypadku krótkiej notatki głosowej wystarczająca może być ukończona odpowiedź tekstowa. W przypadku wywiadu lub nagranej rozmowy bardziej przydatny może być wynik wsadowy zawierający informacje o mówcach. Przy tworzeniu napisów na żywo lub interfejsu poleceń głosowych odróżniaj tekst pośredni od ostatecznego wyniku rozpoznawania i zachowuj informacje o przedziale nagrania, którego dotyczy.\n\nPrzygotuj dźwięk w kodowaniu oczekiwanym przez implementację rozpoznawania. Przykłady Google dla Chirp 3 wykorzystują automatycznie wykrywane dekodowanie dla nagranych plików oraz jawnie określone dekodowanie w konfiguracji strumieniowania surowego dźwięku. Powiązana dokumentacja dekodera V2 wymienia wśród obsługiwanych kodowań WAV z dźwiękiem PCM lub kompandowanym, FLAC, MP3, Ogg/WebM Opus oraz AAC w kontenerach MP4, M4A lub MOV. Nazwa kontenera nie zastępuje rzeczywistego kodeka i konfiguracji próbkowania. Zadbaj o wyraźną mowę i unikaj silnego przesterowania oraz zbędnej konwersji powodującej utratę słyszalnych szczegółów.\n\nChirp 3 potrafi automatycznie zidentyfikować i transkrybować dominujący język, a zestaw oczekiwanych wariantów językowo-regionalnych może zawęzić możliwości rozpoznawania. Dostępność języków zależy od metody i funkcji. Lista języków transkrypcji jest szersza niż lista języków obsługujących diaryzację, więc samo rozpoznawanie danego języka nie oznacza, że działają w nim wszystkie funkcje dotyczące mówców lub czasu. Użyj wariantu językowo-regionalnego pasującego do nagrania i zachowaj do sprawdzenia nazwy oraz terminy specjalistyczne wypowiadane przy przełączaniu między językami. Etykieta wykrytego języka jest częścią wyniku, a nie dowodem poprawnego rozpoznania wszystkich nietypowych słów.\n\nDiaryzacja mówców grupuje wypowiedzi według głosu w nagraniu jednokanałowym. Google udostępnia przykład transkrypcji wsadowej z informacją o mówcy dla każdego słowa. W przypadku wywiadu zachowaj te etykiety razem z rozpoznanym tekstem i porównaj zmiany mówców z nagraniem, zanim przypiszesz im rzeczywiste nazwiska lub role. Podobne głosy, przerywanie wypowiedzi i nakładanie się mowy mogą utrudniać przypisanie. Jasno określ układ kanałów materiału źródłowego i cel weryfikacji mówców, zamiast traktować etykietę jako niezależnie potwierdzoną tożsamość.\n\nInformacje o czasie również zależą od metody. Rozpoznawanie strumieniowe zapewnia znaczniki czasu na poziomie wypowiedzi, natomiast wskazówki producenta dotyczące rozpoznawania plików opisują opcjonalne czasy poszczególnych słów, z możliwym kompromisem w jakości transkrypcji. Zachowaj metadane rzeczywiście zwrócone przez wybraną metodę i sprawdź dopasowanie czasowe razem z brzmieniem tekstu. Proces tworzenia napisów potrzebuje obu elementów: czytelnego rozpoznanego tekstu i potwierdzenia, że granica czasowa odpowiada właściwemu dźwiękowi. Google ostrzega również, że zwracana wartość pewności na poziomie słowa nie jest rzeczywistą miarą pewności, dlatego nie należy używać jej do potwierdzania poprawności słowa.\n\nAdaptacja rozpoznawania mowy pozwala podać frazy i nazwy własne, które prawdopodobnie wystąpią w nagraniu. Producent dokumentuje słownik obejmujący do 1 000 fraz i zaleca jak najmniejszą liczbę trafnych wpisów, aby nie pogarszać rozpoznawania innych terminów. W przypadku prezentacji technicznej przygotuj krótką listę rzeczywistych nazw produktów i skrótów, a następnie sprawdź je w transkrypcji. Nadanie terminowi większej wagi pomaga uwzględnić go podczas rozpoznawania; nie dowodzi jednak, że został wypowiedziany, ani nie zastępuje sprawdzenia nagrania.\n\nModel zapewnia automatyczną interpunkcję i stosowanie wielkich liter, które można wyłączyć w udokumentowanym interfejsie. Google opisuje również funkcję w wersji zapoznawczej pozwalającą podawać własne instrukcje formatowania transkrypcji, na przykład sposób zapisu konkretnej nazwy lub daty. Ogranicz te instrukcje do formatowania rozpoznanej mowy. Transkrypcja, która normalizuje datę lub zapisuje markę wielką literą, nadal musi zachowywać sens wypowiedzi. Streszczenie, tłumaczenie lub analiza faktów to późniejsze zastosowania transkrypcji, a nie coś, co potwierdza sam wynik rozpoznawania.\n\nWbudowany moduł odszumiania ma ograniczać muzykę w tle i odgłosy otoczenia, takie jak deszcz czy hałas uliczny. Google wyraźnie stwierdza, że nie może on usuwać ludzkich głosów w tle. Zachowaj to rozróżnienie przy przygotowywaniu nagrania z nakładającymi się rozmowami. Porównuj hałaśliwe i ciche fragmenty z materiałem źródłowym, zamiast zakładać, że bardziej uporządkowana transkrypcja dowodzi usunięcia zakłócającego dźwięku. Przydatny wynik pozwala rozpoznać niepewne fragmenty i je poprawić.\n\nW zadaniach strumieniowych czułość wykrywania końca wypowiedzi wpływa na to, kiedy wypowiedź zostaje uznana za zakończoną. Producent opisuje ustawienia standard, short i supershort dla coraz krótszych oczekiwanych wypowiedzi. Szybsze ustawienie może uciąć wypowiedź osoby, która robi pauzę w środku myśli. Dopasuj ustawienie do naturalnego dyktowania, krótkiego zdania lub bardzo krótkiego polecenia i zachowaj przy transkrypcji status wyniku końcowego. W przypadku gotowego pliku sprawdź nazwy, ilości, zaprzeczenia i granice wypowiedzi mówców, a następnie zachowaj wybrany tryb oraz źródłowy dźwięk, aby wynik można było zweryfikować lub wykorzystać ponownie.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "db8a8427037b2a29205f607fbf6126e4e5b5c21a412b330fb9f5440366a6e129",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "pl",
  "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=\"Zamknij\">×</button></div><div class=\"idline\"><span>Google /</span><code>google/chirp-3</code><button type=\"button\" id=\"copy-id\">Kopiuj ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Sekcje karty modelu\"><button type=\"button\" data-card-jump=\"overview\">Start</button><button type=\"button\" data-card-jump=\"methods\">Dane wejściowe i metody</button><button type=\"button\" data-card-jump=\"pricing\">Cennik</button><button type=\"button\" data-card-jump=\"examples\">Przykłady</button><button type=\"button\" data-card-jump=\"results\">Wyniki</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\">Rozpoznawanie</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\">Start</h3><p class=\"mdesc-full\">Google Chirp 3 to wielojęzyczny model rozpoznawania mowy przeznaczony do przetwarzania strumieniowego, krótkich nagrań i transkrypcji dłuższych materiałów w trybie wsadowym. Zapewnia automatyczne wykrywanie języka, interpunkcję, adaptację słownictwa oraz informacje o czasie lub mówcach zależne od wybranego trybu. Jego moduł odszumiania ogranicza szum tła, lecz nie usuwa innych głosów.</p><dl class=\"card-io\" data-card-io><div><dt>Akceptowane dane wejściowe</dt><dd>Audio</dd></div><div><dt>Wyniki</dt><dd>Tekst</dd></div></dl><details class=\"card-about\"><summary>O modelu</summary><p class=\"note-s\" data-model-method-boundary>Ten opis przedstawia możliwości modelu. Dane wejściowe, wyniki i opcje dostępne w Ailoot podano poniżej dla wybranej metody.</p><div class=\"mabout\" id=\"m-about\"><p>Google Chirp 3 to wielojęzyczny model automatycznego rozpoznawania mowy, który przekształca wypowiedzi z nagrań audio w tekst. Google opisuje go jako model transkrypcji Chirp 3 w rodzinie Speech-to-Text V2, z identyfikatorem modelu chirp_3. Służy do rozpoznawania mowy nagranej lub przesyłanej strumieniowo, z wykrywaniem języka i funkcjami właściwymi dla transkrypcji. Wynikiem jest transkrypcja wraz z metadanymi obsługiwanymi przez wybraną metodę rozpoznawania, a nie wygenerowana mowa czy swobodna odpowiedź asystenta.</p><p>Producent rozróżnia rozpoznawanie strumieniowe, rozpoznawanie synchroniczne dla krótkich klipów oraz rozpoznawanie wsadowe dla dłuższych nagrań. Wybierz tryb odpowiedni do źródłowego dźwięku i wymaganego wyniku. W przypadku krótkiej notatki głosowej wystarczająca może być ukończona odpowiedź tekstowa. W przypadku wywiadu lub nagranej rozmowy bardziej przydatny może być wynik wsadowy zawierający informacje o mówcach. Przy tworzeniu napisów na żywo lub interfejsu poleceń głosowych odróżniaj tekst pośredni od ostatecznego wyniku rozpoznawania i zachowuj informacje o przedziale nagrania, którego dotyczy.</p><p>Przygotuj dźwięk w kodowaniu oczekiwanym przez implementację rozpoznawania. Przykłady Google dla Chirp 3 wykorzystują automatycznie wykrywane dekodowanie dla nagranych plików oraz jawnie określone dekodowanie w konfiguracji strumieniowania surowego dźwięku. Powiązana dokumentacja dekodera V2 wymienia wśród obsługiwanych kodowań WAV z dźwiękiem PCM lub kompandowanym, FLAC, MP3, Ogg/WebM Opus oraz AAC w kontenerach MP4, M4A lub MOV. Nazwa kontenera nie zastępuje rzeczywistego kodeka i konfiguracji próbkowania. Zadbaj o wyraźną mowę i unikaj silnego przesterowania oraz zbędnej konwersji powodującej utratę słyszalnych szczegółów.</p><p>Chirp 3 potrafi automatycznie zidentyfikować i transkrybować dominujący język, a zestaw oczekiwanych wariantów językowo-regionalnych może zawęzić możliwości rozpoznawania. Dostępność języków zależy od metody i funkcji. Lista języków transkrypcji jest szersza niż lista języków obsługujących diaryzację, więc samo rozpoznawanie danego języka nie oznacza, że działają w nim wszystkie funkcje dotyczące mówców lub czasu. Użyj wariantu językowo-regionalnego pasującego do nagrania i zachowaj do sprawdzenia nazwy oraz terminy specjalistyczne wypowiadane przy przełączaniu między językami. Etykieta wykrytego języka jest częścią wyniku, a nie dowodem poprawnego rozpoznania wszystkich nietypowych słów.</p><p>Diaryzacja mówców grupuje wypowiedzi według głosu w nagraniu jednokanałowym. Google udostępnia przykład transkrypcji wsadowej z informacją o mówcy dla każdego słowa. W przypadku wywiadu zachowaj te etykiety razem z rozpoznanym tekstem i porównaj zmiany mówców z nagraniem, zanim przypiszesz im rzeczywiste nazwiska lub role. Podobne głosy, przerywanie wypowiedzi i nakładanie się mowy mogą utrudniać przypisanie. Jasno określ układ kanałów materiału źródłowego i cel weryfikacji mówców, zamiast traktować etykietę jako niezależnie potwierdzoną tożsamość.</p><p>Informacje o czasie również zależą od metody. Rozpoznawanie strumieniowe zapewnia znaczniki czasu na poziomie wypowiedzi, natomiast wskazówki producenta dotyczące rozpoznawania plików opisują opcjonalne czasy poszczególnych słów, z możliwym kompromisem w jakości transkrypcji. Zachowaj metadane rzeczywiście zwrócone przez wybraną metodę i sprawdź dopasowanie czasowe razem z brzmieniem tekstu. Proces tworzenia napisów potrzebuje obu elementów: czytelnego rozpoznanego tekstu i potwierdzenia, że granica czasowa odpowiada właściwemu dźwiękowi. Google ostrzega również, że zwracana wartość pewności na poziomie słowa nie jest rzeczywistą miarą pewności, dlatego nie należy używać jej do potwierdzania poprawności słowa.</p><p>Adaptacja rozpoznawania mowy pozwala podać frazy i nazwy własne, które prawdopodobnie wystąpią w nagraniu. Producent dokumentuje słownik obejmujący do 1 000 fraz i zaleca jak najmniejszą liczbę trafnych wpisów, aby nie pogarszać rozpoznawania innych terminów. W przypadku prezentacji technicznej przygotuj krótką listę rzeczywistych nazw produktów i skrótów, a następnie sprawdź je w transkrypcji. Nadanie terminowi większej wagi pomaga uwzględnić go podczas rozpoznawania; nie dowodzi jednak, że został wypowiedziany, ani nie zastępuje sprawdzenia nagrania.</p><p>Model zapewnia automatyczną interpunkcję i stosowanie wielkich liter, które można wyłączyć w udokumentowanym interfejsie. Google opisuje również funkcję w wersji zapoznawczej pozwalającą podawać własne instrukcje formatowania transkrypcji, na przykład sposób zapisu konkretnej nazwy lub daty. Ogranicz te instrukcje do formatowania rozpoznanej mowy. Transkrypcja, która normalizuje datę lub zapisuje markę wielką literą, nadal musi zachowywać sens wypowiedzi. Streszczenie, tłumaczenie lub analiza faktów to późniejsze zastosowania transkrypcji, a nie coś, co potwierdza sam wynik rozpoznawania.</p><p>Wbudowany moduł odszumiania ma ograniczać muzykę w tle i odgłosy otoczenia, takie jak deszcz czy hałas uliczny. Google wyraźnie stwierdza, że nie może on usuwać ludzkich głosów w tle. Zachowaj to rozróżnienie przy przygotowywaniu nagrania z nakładającymi się rozmowami. Porównuj hałaśliwe i ciche fragmenty z materiałem źródłowym, zamiast zakładać, że bardziej uporządkowana transkrypcja dowodzi usunięcia zakłócającego dźwięku. Przydatny wynik pozwala rozpoznać niepewne fragmenty i je poprawić.</p><p>W zadaniach strumieniowych czułość wykrywania końca wypowiedzi wpływa na to, kiedy wypowiedź zostaje uznana za zakończoną. Producent opisuje ustawienia standard, short i supershort dla coraz krótszych oczekiwanych wypowiedzi. Szybsze ustawienie może uciąć wypowiedź osoby, która robi pauzę w środku myśli. Dopasuj ustawienie do naturalnego dyktowania, krótkiego zdania lub bardzo krótkiego polecenia i zachowaj przy transkrypcji status wyniku końcowego. W przypadku gotowego pliku sprawdź nazwy, ilości, zaprzeczenia i granice wypowiedzi mówców, a następnie zachowaj wybrany tryb oraz źródłowy dźwięk, aby wynik można było zweryfikować lub wykorzystać ponownie.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Dostępne w Ailoot · dane wejściowe i metody</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Transkrypcja</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Wejście</dt><dd><code>audio</code></dd></div><div><dt>Wyjście</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>Wymaganie</th><th>Wartości i limity</th><th>Domyślnie</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=\"Wymaganie\"><span class=\"card-cell-label\">Wymaganie</span>Wymagane</td><td data-cell-label=\"Wartości i limity\"><span class=\"card-cell-label\">Wartości i limity</span><div>google/chirp-3</div></td><td data-cell-label=\"Domyślnie\" data-default=\"unspecified\"><span class=\"card-cell-label\">Domyślnie</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=\"Wymaganie\"><span class=\"card-cell-label\">Wymaganie</span>Wymagane</td><td data-cell-label=\"Wartości i limity\"><span class=\"card-cell-label\">Wartości i limity</span></td><td data-cell-label=\"Domyślnie\" data-default=\"unspecified\"><span class=\"card-cell-label\">Domyślnie</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Parametry i cykl życia 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>Przykład odczytuje Twój rzeczywisty, niepusty plik PCM WAV, koduje wszystkie bajty pliku jako base64 i wysyła input_audio.format z wartością wav.</td></tr></tbody></table></div><p>Cykl życia: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · dokładne task_id z istniejącego rekordu multimediów należących do użytkownika</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\">Cennik</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.</p><dl data-price-conditions><dt>Tryb szybki</dt><dd>Nie określono <span class=\"note-s\">Gdy wybrany jest tryb szybki</span></dd><dt>Tryb flex</dt><dd>Nie określono <span class=\"note-s\">Gdy wybrany jest tryb flex</span></dd><dt>Maksymalna intensywność rozumowania</dt><dd>Nie określono <span class=\"note-s\">Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Stawki Ailoot</h4><h4>Ceny według konfiguracji</h4><p class=\"note-s\">Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfiguracja</th><th>Tabela stawek</th><th>Jednostka rozliczeniowa</th><th>Opłata</th></tr></thead><tbody><tr><th data-cell-label=\"Konfiguracja\" scope=\"row\"><span class=\"card-cell-label\">Konfiguracja</span>Bazowe stawki za tokeny</th><td data-cell-label=\"Tabela stawek\"><span class=\"card-cell-label\">Tabela stawek</span>Stawka podstawowa</td><td data-cell-label=\"Jednostka rozliczeniowa\"><span class=\"card-cell-label\">Jednostka rozliczeniowa</span>—</td><td data-cell-label=\"Opłata\"><span class=\"card-cell-label\">Opłata</span><div><span>Wejście · Tokeny wejściowe</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenów</span></div><div><span>Wyjście · Tokeny wyjściowe</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenów</span></div><div><span>Wejście · Odczyt cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenów</span></div><div><span>Wejście · Zapis do cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenów</span></div><div><span>Wejście · Zapis do cache, 1 godz.</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenów</span></div></td></tr><tr><th data-cell-label=\"Konfiguracja\" scope=\"row\"><span class=\"card-cell-label\">Konfiguracja</span>sekunda wejściowego audio</th><td data-cell-label=\"Tabela stawek\"><span class=\"card-cell-label\">Tabela stawek</span>—</td><td data-cell-label=\"Jednostka rozliczeniowa\"><span class=\"card-cell-label\">Jednostka rozliczeniowa</span>za sekundę dźwięku wejściowego</td><td data-cell-label=\"Opłata\"><span class=\"card-cell-label\">Opłata</span><div><span>Wejście · sekunda wejściowego audio</span> <b>$0.000533333333334</b> <span class=\"price-unit\">za sekundę dźwięku wejściowego</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. <a href=\"/docs/pl/billing/reserve/\">Jak działają rezerwacja i rozliczenie →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Przykładowe żądania</h3><h4>Ailoot Ultra · Transkrypcja</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Warianty kodu\"><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 · rzeczywisty plik WAV i kompletny pierwotny wynik</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopiuj kod\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-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\">Odbieranie i zapisywanie wyników</h3><h4>Ailoot Ultra · Transkrypcja</h4><p class=\"note-s\">Kompletna treść oryginalnej odpowiedzi, status i przekazane nagłówki. Ta funkcja obsługująca nie dodaje uniwersalnej struktury JSON, pola tekstowego ani obudowy zadania.</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>Zachowaj wszystkie ukończone wyniki</h5><p class=\"note-s\">Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.</p><p class=\"note-s\">Zachowaj pełną odpowiedź i nagłówki, wszystkie rzeczywiście uzyskane wyniki, pierwotnie zwrócone identyfikatory oraz wszystkie pola zużycia. Odzyskaj pierwotną operację bez ponownego wysyłania żądania utworzenia.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Jeśli trzeba sprawdzić pierwotną odpowiedź</h5><p class=\"note-s\">Zachowaj rzeczywiste X-Client-Request-ID i kompletną odpowiedź. Odczytuj pierwotne zasoby należące do użytkownika i ich dokładne podpisane adresy URL treści; nigdy nie ponawiaj niepewnego utworzenia.</p></div><details class=\"card-about\" data-output-fields><summary>Pola odpowiedzi</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>Błędy i dalsze kroki</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Odpowiedź</th><th>Warunek</th><th>Następny krok</th></tr></thead><tbody><tr><th data-cell-label=\"Odpowiedź\" scope=\"row\"><span class=\"card-cell-label\">Odpowiedź</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Warunek\"><span class=\"card-cell-label\">Warunek</span>Treść JSON lub jawny kanoniczny identyfikator modelu są nieprawidłowe.</td><td data-cell-label=\"Następny krok\"><span class=\"card-cell-label\">Następny krok</span>Zachowaj odpowiedź i popraw wskazane pole żądania.</td></tr><tr><th data-cell-label=\"Odpowiedź\" scope=\"row\"><span class=\"card-cell-label\">Odpowiedź</span>401 · <code>authentication_error</code></th><td data-cell-label=\"Warunek\"><span class=\"card-cell-label\">Warunek</span>Klucz API Ailoot jest nieprawidłowy.</td><td data-cell-label=\"Następny krok\"><span class=\"card-cell-label\">Następny krok</span>Użyj swojego autoryzowanego klucza API Ailoot.</td></tr><tr><th data-cell-label=\"Odpowiedź\" scope=\"row\"><span class=\"card-cell-label\">Odpowiedź</span>403 · <code>permission_error</code></th><td data-cell-label=\"Warunek\"><span class=\"card-cell-label\">Warunek</span>Grupa klucza nie ma uprawnień do tej metody.</td><td data-cell-label=\"Następny krok\"><span class=\"card-cell-label\">Następny krok</span>Zachowaj zwrócone szczegóły błędu.</td></tr><tr><th data-cell-label=\"Odpowiedź\" scope=\"row\"><span class=\"card-cell-label\">Odpowiedź</span>404 · <code>not_found_error</code></th><td data-cell-label=\"Warunek\"><span class=\"card-cell-label\">Warunek</span>Wybrana metoda nie ma dopuszczonej ścieżki.</td><td data-cell-label=\"Następny krok\"><span class=\"card-cell-label\">Następny krok</span>Zachowaj zwrócone szczegóły błędu.</td></tr><tr><th data-cell-label=\"Odpowiedź\" scope=\"row\"><span class=\"card-cell-label\">Odpowiedź</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Warunek\"><span class=\"card-cell-label\">Warunek</span>Zaakceptowana taryfa nie może uzyskać wymaganej ilości danych wejściowych lub ich górnej granicy.</td><td data-cell-label=\"Następny krok\"><span class=\"card-cell-label\">Następny krok</span>Zachowaj odpowiedź; użyj reprezentacji danych wejściowych wymaganej przez zaakceptowaną taryfę.</td></tr><tr><th data-cell-label=\"Odpowiedź\" scope=\"row\"><span class=\"card-cell-label\">Odpowiedź</span>503 · <code></code></th><td data-cell-label=\"Warunek\"><span class=\"card-cell-label\">Warunek</span>Wymagany magazyn, ścieżka, cena metody lub rezerwacja są niedostępne.</td><td data-cell-label=\"Następny krok\"><span class=\"card-cell-label\">Następny krok</span>Zachowaj kompletną oryginalną odpowiedź. Niepewna rezerwacja nie uprawnia do ponownego wysłania.</td></tr><tr><th data-cell-label=\"Odpowiedź\" scope=\"row\"><span class=\"card-cell-label\">Odpowiedź</span>502 · <code>server_error</code></th><td data-cell-label=\"Warunek\"><span class=\"card-cell-label\">Warunek</span>Pierwotny wynik, dane użycia lub rozliczenie wymagają sprawdzenia.</td><td data-cell-label=\"Następny krok\"><span class=\"card-cell-label\">Następny krok</span>Zachowaj rzeczywisty identyfikator żądania i oryginalną odpowiedź. Odczytuj istniejący rekord należący do użytkownika; nie wysyłaj ponownie żądania utworzenia.</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 ścieżek metod</h4><p class=\"note-s\">Użyj ścieżek metod podanych powyżej.</p><h4>Powiązane ID modeli</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": "Treść JSON lub jawny kanoniczny identyfikator modelu są nieprawidłowe.",
                "http_status": 400,
                "recovery": "Zachowaj odpowiedź i popraw wskazane pole żądania.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Klucz API Ailoot jest nieprawidłowy.",
                "http_status": 401,
                "recovery": "Użyj swojego autoryzowanego klucza API Ailoot.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Grupa klucza nie ma uprawnień do tej metody.",
                "http_status": 403,
                "recovery": "Zachowaj zwrócone szczegóły błędu.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Wybrana metoda nie ma dopuszczonej ścieżki.",
                "http_status": 404,
                "recovery": "Zachowaj zwrócone szczegóły błędu.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Zaakceptowana taryfa nie może uzyskać wymaganej ilości danych wejściowych lub ich górnej granicy.",
                "http_status": 422,
                "recovery": "Zachowaj odpowiedź; użyj reprezentacji danych wejściowych wymaganej przez zaakceptowaną taryfę.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Wymagany magazyn, ścieżka, cena metody lub rezerwacja są niedostępne.",
                "http_status": 503,
                "recovery": "Zachowaj kompletną oryginalną odpowiedź. Niepewna rezerwacja nie uprawnia do ponownego wysłania.",
                "type": null
              },
              {
                "code": null,
                "condition": "Pierwotny wynik, dane użycia lub rozliczenie wymagają sprawdzenia.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Zachowaj rzeczywisty identyfikator żądania i oryginalną odpowiedź. Odczytuj istniejący rekord należący do użytkownika; nie wysyłaj ponownie żądania utworzenia.",
                "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": "Zachowaj rzeczywiste X-Client-Request-ID i kompletną odpowiedź. Odczytuj pierwotne zasoby należące do użytkownika i ich dokładne podpisane adresy URL treści; nigdy nie ponawiaj niepewnego utworzenia."
            },
            "outputs": {
              "all_results": "Zachowaj pełną odpowiedź i nagłówki, wszystkie rzeczywiście uzyskane wyniki, pierwotnie zwrócone identyfikatory oraz wszystkie pola zużycia. Odzyskaj pierwotną operację bez ponownego wysyłania żądania utworzenia.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Kompletna treść oryginalnej odpowiedzi, status i przekazane nagłówki. Ta funkcja obsługująca nie dodaje uniwersalnej struktury JSON, pola tekstowego ani obudowy zadania."
            },
            "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": [
              "Przykład odczytuje Twój rzeczywisty, niepusty plik PCM WAV, koduje wszystkie bajty pliku jako base64 i wysyła input_audio.format z wartością 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": "dokładne task_id z istniejącego rekordu multimediów należących do użytkownika",
                "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": "Transkrypcja",
        "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": "9d7002f78981f0a47fc2679f1614eec923d78113a34359ed8ba5db14ea28b5bf",
    "input_html_sha256": "2bca20f07588949a131f9487b099872159daad84a4b121a0402184e4a1b54a02",
    "private_audit_sha256": "920995930a2af8567f019c459b2b0b995f5526c455b4b800edf01d9ab58e9f35",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/pl/google-chirp-3/",
    "description": "Google Chirp 3 to wielojęzyczny model rozpoznawania mowy przeznaczony do przetwarzania strumieniowego, krótkich nagrań i transkrypcji dłuższych materiałów w trybie wsadowym. Zapewnia automatyczne wykrywanie języka, interpunkcję, adaptację słownictwa oraz informacje o czasie lub mówcach zależne od wybranego trybu. Jego moduł odszumiania ogranicza szum tła, lecz nie usuwa innych głosów.",
    "locale": "pl",
    "md_url": "https://ailoot.ai/models/pl/google-chirp-3/index.md",
    "title": "Google: Chirp 3 — Ailoot",
    "url": "https://ailoot.ai/models/pl/google-chirp-3/"
  },
  "rawModel": {
    "about": "Google Chirp 3 to wielojęzyczny model automatycznego rozpoznawania mowy, który przekształca wypowiedzi z nagrań audio w tekst. Google opisuje go jako model transkrypcji Chirp 3 w rodzinie Speech-to-Text V2, z identyfikatorem modelu chirp_3. Służy do rozpoznawania mowy nagranej lub przesyłanej strumieniowo, z wykrywaniem języka i funkcjami właściwymi dla transkrypcji. Wynikiem jest transkrypcja wraz z metadanymi obsługiwanymi przez wybraną metodę rozpoznawania, a nie wygenerowana mowa czy swobodna odpowiedź asystenta.\n\nProducent rozróżnia rozpoznawanie strumieniowe, rozpoznawanie synchroniczne dla krótkich klipów oraz rozpoznawanie wsadowe dla dłuższych nagrań. Wybierz tryb odpowiedni do źródłowego dźwięku i wymaganego wyniku. W przypadku krótkiej notatki głosowej wystarczająca może być ukończona odpowiedź tekstowa. W przypadku wywiadu lub nagranej rozmowy bardziej przydatny może być wynik wsadowy zawierający informacje o mówcach. Przy tworzeniu napisów na żywo lub interfejsu poleceń głosowych odróżniaj tekst pośredni od ostatecznego wyniku rozpoznawania i zachowuj informacje o przedziale nagrania, którego dotyczy.\n\nPrzygotuj dźwięk w kodowaniu oczekiwanym przez implementację rozpoznawania. Przykłady Google dla Chirp 3 wykorzystują automatycznie wykrywane dekodowanie dla nagranych plików oraz jawnie określone dekodowanie w konfiguracji strumieniowania surowego dźwięku. Powiązana dokumentacja dekodera V2 wymienia wśród obsługiwanych kodowań WAV z dźwiękiem PCM lub kompandowanym, FLAC, MP3, Ogg/WebM Opus oraz AAC w kontenerach MP4, M4A lub MOV. Nazwa kontenera nie zastępuje rzeczywistego kodeka i konfiguracji próbkowania. Zadbaj o wyraźną mowę i unikaj silnego przesterowania oraz zbędnej konwersji powodującej utratę słyszalnych szczegółów.\n\nChirp 3 potrafi automatycznie zidentyfikować i transkrybować dominujący język, a zestaw oczekiwanych wariantów językowo-regionalnych może zawęzić możliwości rozpoznawania. Dostępność języków zależy od metody i funkcji. Lista języków transkrypcji jest szersza niż lista języków obsługujących diaryzację, więc samo rozpoznawanie danego języka nie oznacza, że działają w nim wszystkie funkcje dotyczące mówców lub czasu. Użyj wariantu językowo-regionalnego pasującego do nagrania i zachowaj do sprawdzenia nazwy oraz terminy specjalistyczne wypowiadane przy przełączaniu między językami. Etykieta wykrytego języka jest częścią wyniku, a nie dowodem poprawnego rozpoznania wszystkich nietypowych słów.\n\nDiaryzacja mówców grupuje wypowiedzi według głosu w nagraniu jednokanałowym. Google udostępnia przykład transkrypcji wsadowej z informacją o mówcy dla każdego słowa. W przypadku wywiadu zachowaj te etykiety razem z rozpoznanym tekstem i porównaj zmiany mówców z nagraniem, zanim przypiszesz im rzeczywiste nazwiska lub role. Podobne głosy, przerywanie wypowiedzi i nakładanie się mowy mogą utrudniać przypisanie. Jasno określ układ kanałów materiału źródłowego i cel weryfikacji mówców, zamiast traktować etykietę jako niezależnie potwierdzoną tożsamość.\n\nInformacje o czasie również zależą od metody. Rozpoznawanie strumieniowe zapewnia znaczniki czasu na poziomie wypowiedzi, natomiast wskazówki producenta dotyczące rozpoznawania plików opisują opcjonalne czasy poszczególnych słów, z możliwym kompromisem w jakości transkrypcji. Zachowaj metadane rzeczywiście zwrócone przez wybraną metodę i sprawdź dopasowanie czasowe razem z brzmieniem tekstu. Proces tworzenia napisów potrzebuje obu elementów: czytelnego rozpoznanego tekstu i potwierdzenia, że granica czasowa odpowiada właściwemu dźwiękowi. Google ostrzega również, że zwracana wartość pewności na poziomie słowa nie jest rzeczywistą miarą pewności, dlatego nie należy używać jej do potwierdzania poprawności słowa.\n\nAdaptacja rozpoznawania mowy pozwala podać frazy i nazwy własne, które prawdopodobnie wystąpią w nagraniu. Producent dokumentuje słownik obejmujący do 1 000 fraz i zaleca jak najmniejszą liczbę trafnych wpisów, aby nie pogarszać rozpoznawania innych terminów. W przypadku prezentacji technicznej przygotuj krótką listę rzeczywistych nazw produktów i skrótów, a następnie sprawdź je w transkrypcji. Nadanie terminowi większej wagi pomaga uwzględnić go podczas rozpoznawania; nie dowodzi jednak, że został wypowiedziany, ani nie zastępuje sprawdzenia nagrania.\n\nModel zapewnia automatyczną interpunkcję i stosowanie wielkich liter, które można wyłączyć w udokumentowanym interfejsie. Google opisuje również funkcję w wersji zapoznawczej pozwalającą podawać własne instrukcje formatowania transkrypcji, na przykład sposób zapisu konkretnej nazwy lub daty. Ogranicz te instrukcje do formatowania rozpoznanej mowy. Transkrypcja, która normalizuje datę lub zapisuje markę wielką literą, nadal musi zachowywać sens wypowiedzi. Streszczenie, tłumaczenie lub analiza faktów to późniejsze zastosowania transkrypcji, a nie coś, co potwierdza sam wynik rozpoznawania.\n\nWbudowany moduł odszumiania ma ograniczać muzykę w tle i odgłosy otoczenia, takie jak deszcz czy hałas uliczny. Google wyraźnie stwierdza, że nie może on usuwać ludzkich głosów w tle. Zachowaj to rozróżnienie przy przygotowywaniu nagrania z nakładającymi się rozmowami. Porównuj hałaśliwe i ciche fragmenty z materiałem źródłowym, zamiast zakładać, że bardziej uporządkowana transkrypcja dowodzi usunięcia zakłócającego dźwięku. Przydatny wynik pozwala rozpoznać niepewne fragmenty i je poprawić.\n\nW zadaniach strumieniowych czułość wykrywania końca wypowiedzi wpływa na to, kiedy wypowiedź zostaje uznana za zakończoną. Producent opisuje ustawienia standard, short i supershort dla coraz krótszych oczekiwanych wypowiedzi. Szybsze ustawienie może uciąć wypowiedź osoby, która robi pauzę w środku myśli. Dopasuj ustawienie do naturalnego dyktowania, krótkiego zdania lub bardzo krótkiego polecenia i zachowaj przy transkrypcji status wyniku końcowego. W przypadku gotowego pliku sprawdź nazwy, ilości, zaprzeczenia i granice wypowiedzi mówców, a następnie zachowaj wybrany tryb oraz źródłowy dźwięk, aby wynik można było zweryfikować lub wykorzystać ponownie.",
    "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": "Pełny cennik konfiguracji w szczegółach."
      }
    ],
    "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": "Treść JSON lub jawny kanoniczny identyfikator modelu są nieprawidłowe.",
                "http_status": 400,
                "recovery": "Zachowaj odpowiedź i popraw wskazane pole żądania.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Klucz API Ailoot jest nieprawidłowy.",
                "http_status": 401,
                "recovery": "Użyj swojego autoryzowanego klucza API Ailoot.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Grupa klucza nie ma uprawnień do tej metody.",
                "http_status": 403,
                "recovery": "Zachowaj zwrócone szczegóły błędu.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Wybrana metoda nie ma dopuszczonej ścieżki.",
                "http_status": 404,
                "recovery": "Zachowaj zwrócone szczegóły błędu.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Zaakceptowana taryfa nie może uzyskać wymaganej ilości danych wejściowych lub ich górnej granicy.",
                "http_status": 422,
                "recovery": "Zachowaj odpowiedź; użyj reprezentacji danych wejściowych wymaganej przez zaakceptowaną taryfę.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Wymagany magazyn, ścieżka, cena metody lub rezerwacja są niedostępne.",
                "http_status": 503,
                "recovery": "Zachowaj kompletną oryginalną odpowiedź. Niepewna rezerwacja nie uprawnia do ponownego wysłania.",
                "type": null
              },
              {
                "code": null,
                "condition": "Pierwotny wynik, dane użycia lub rozliczenie wymagają sprawdzenia.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Zachowaj rzeczywisty identyfikator żądania i oryginalną odpowiedź. Odczytuj istniejący rekord należący do użytkownika; nie wysyłaj ponownie żądania utworzenia.",
                "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": "Zachowaj rzeczywiste X-Client-Request-ID i kompletną odpowiedź. Odczytuj pierwotne zasoby należące do użytkownika i ich dokładne podpisane adresy URL treści; nigdy nie ponawiaj niepewnego utworzenia."
            },
            "outputs": {
              "all_results": "Zachowaj pełną odpowiedź i nagłówki, wszystkie rzeczywiście uzyskane wyniki, pierwotnie zwrócone identyfikatory oraz wszystkie pola zużycia. Odzyskaj pierwotną operację bez ponownego wysyłania żądania utworzenia.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Kompletna treść oryginalnej odpowiedzi, status i przekazane nagłówki. Ta funkcja obsługująca nie dodaje uniwersalnej struktury JSON, pola tekstowego ani obudowy zadania."
            },
            "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": [
              "Przykład odczytuje Twój rzeczywisty, niepusty plik PCM WAV, koduje wszystkie bajty pliku jako base64 i wysyła input_audio.format z wartością 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": "dokładne task_id z istniejącego rekordu multimediów należących do użytkownika",
                "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": "Transkrypcja",
        "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 to wielojęzyczny model rozpoznawania mowy przeznaczony do przetwarzania strumieniowego, krótkich nagrań i transkrypcji dłuższych materiałów w trybie wsadowym. Zapewnia automatyczne wykrywanie języka, interpunkcję, adaptację słownictwa oraz informacje o czasie lub mówcach zależne od wybranego trybu. Jego moduł odszumiania ogranicza szum tła, lecz nie usuwa innych głosów."
  },
  "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 to wielojęzyczny model rozpoznawania mowy przeznaczony do przetwarzania strumieniowego, krótkich nagrań i transkrypcji dłuższych materiałów w trybie wsadowym. Zapewnia automatyczne wykrywanie języka, interpunkcję, adaptację słownictwa oraz informacje o czasie lub mówcach zależne od wybranego trybu. Jego moduł odszumiania ogranicza szum tła, lecz nie usuwa innych głosów.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "c04ec4741315f84c2b61b0e38056b1ee5ff1afcec83756e16b149da804a876a5",
    "renderer_sha256": "1217dcf19a93e99ac1d6fd7bf974dc19adc12fea4bd4470c2601f04e48f688cb"
  },
  "sourceRevision": "24e294565dee4ed6970d6018ca252fd81c999786be0f7d569987863d6a97eebb"
}
