{
  "aboutHtml": "<p>GPT Transcribe on OpenAI:n puheesta tekstiksi -malli valmiille äänitiedostoille, suoratoistettaville tiedostolitteroinneille ja vahvistetuille äänivuoroille Realtime-istunnoissa. Se ottaa vastaan ääntä ja valinnaista tekstikontekstia ja palauttaa tunnistettua tekstiä. Tuottaja asemoi sen tallennetun puheen tarkkaan litterointiin alkuperäisellä kielellä, myös alakohtaisessa sanastossa, monikielisissä tallenteissa ja puheen sisäisessä kielten vaihtelussa. Hyödyllinen tulos on tallenteeseen yhdistetty litterointi sekä tunnistettujen kielten metatiedot silloin, kun malli pystyy ennustamaan kielen luotettavasti.</p><h4>Valmiin tallenteen valmistelu</h4><p>OpenAI:n tiedostolitteroinnin työnkulku hyväksyy enintään 25 MB:n lataukset. Nykyinen päätepisteviite luettelee syötemuodot FLAC, MP3, MP4, MPEG, MPGA, M4A, OGG, WAV ja WebM ja suosittelee riittäviä tiedostometatietoja muodon tunnistamiseen, kuten sopivaa tiedostopäätettä ja sisältötyyppiä. Suuremmalle tallenteelle ohje suosittelee pakkaamista tai jakamista enintään 25 MB:n tiedostoiksi. Vältä katkaisemista kesken lauseen, sillä ympäröivän puheen poistaminen voi heikentää tunnistustarkkuutta. Säilytä osien järjestys ja niiden sijainnit alkuperäisessä tallenteessa.</p><p>Anna kokousta, haastattelua tai tallennettua esitystä varten todellinen ääni ja kerro aihe sekä todennäköisesti puhuttu terminologia. Hyödyllinen tulos on tunnistettu sanamuoto eikä keskustelusta päätelty yhteenveto. Säilytä tallenteen tunniste palautetun tekstin mukana, jotta nimeä, lukua tai epävarmaa ilmausta tarkistava henkilö voi palata oikeaan lähteeseen. Litterointi voi sitten toimia erillisen yhteenveto-, käännös- tai toimitustyönkulun aineistona.</p><h4>Konteksti, avainsanavihjeet ja odotetut kielet</h4><p>Tuottaja erottaa kolme ohjaustapaa. Kehote antaa vapaamuotoista kontekstia tallenteen aiheesta tai tilanteesta. Avainsanat antavat puheessa odotettuja täsmällisiä sanoja tai ilmauksia. languages-luettelo kertoo odotetut puhutut kielet. Kuvaa kaksikielisessä tuotekeskustelussa tilanne kehotteessa, luettele olennaiset tuotenimet avainsanoina ja anna odotetut kielet. Nämä ovat tunnistusvihjeitä, eivät ohjeita lisätä sanastoa, jota kukaan ei käyttänyt.</p><p>GPT Transcribe käyttää monikollista languages-kenttää vanhemman yksiköllisen language-kentän sijaan; OpenAI ohjeistaa, ettei molempia saa lähettää. Sen ohje hyväksyy tuetut ISO 639-1 -koodit, valitut ISO 639-3 -koodit ja alueelliset kiinan kielialuekoodit ja hylkää tukemattomat tai virheelliset arvot. Jokaisen avainsanan on pysyttävä yhdellä rivillä, eikä se saa sisältää kulmasulkua, rivinpalautusmerkkiä tai rivinvaihtomerkkiä. Virheellinen avainsana tai liian pitkä kehote voi johtaa koko pyynnön hylkäämiseen. Pidä konteksti olennaisena ja tarkista, esiintyvätkö vihjeinä annetut nimet todella äänessä, sen sijaan että pitäisit vihjeluetteloa litterointina.</p><h4>JSON-tulos ja tunnistettujen kielten ennusteet</h4><p>Dokumentoitu tiedostotulos on JSON, joka sisältää litteroinnin ja tunnistetut kielet. Nämä kieliennusteet ovat mallin tulos eivätkä annettujen kielivihjeiden kopio. Tyhjä kieliluettelo on kelvollinen tulos, kun malli ei voi tehdä luotettavaa ennustetta; se ei osoita tallenteen olleen hiljainen tai litteroinnin epäonnistuneen. Pidä tunnistettu teksti ja kielimetatiedot erillään, jotta jatkokäsittely voi käyttää kumpaakin merkityksensä mukaisesti.</p><h4>Tiedostolitteroinnin suoratoisto</h4><p>Valmiin tiedoston litterointiteksti voi valmistua vähitellen käsittelyn aikana. OpenAI dokumentoi tapahtumat transcript.text.delta osittaiselle tekstille ja transcript.text.done koko tiedoston litteroinnille; lopullinen tapahtuma sisältää myös tunnistetut kielet. Tämä suoratoistaa jo annetun tallenteen tulosta. Se auttaa näyttämään pitkän latauksen etenemisen, ja lopullinen tapahtuma määrittää tekstin, joka säilytetään valmiina tuloksena.</p><h4>Vahvistetut vuorot Realtime-istunnoissa</h4><p>GPT Transcribe tarjoaa myös erikoistuneen Realtime-työnkulun WebSocketin kautta. Ääntä lisätään syötepuskuriin, minkä jälkeen sovellus vahvistaa äänivuoron nimenomaisesti. Litterointi alkaa tästä vahvistetusta osasta ja voi lähettää osittaisia tekstituloksia ennen valmistumistapahtumaa, joka sisältää myös tunnistetun kielen tiedot. Malli käyttää automaattisesti aiempia litteroituja vuoroja kontekstina tässä tuottajan istuntokulussa. Tämä eroaa jatkuvasta reaaliaikaisen tekstityksen tuottamisesta mikrofonin äänen saapuessa; OpenAI nimeää GPT Live Transcribe -mallin tähän jatkuvaan työnkulkuun.</p><p>Säilytä useiden vuorojen käsittelyssä syötealkion tunniste sitä vastaavan litteroinnin mukana. OpenAI varoittaa, ettei eri vuorojen valmistumistapahtumien tarvitse saapua puhejärjestyksessä, joten yhdistä jokainen lopullinen tulos sen vahvistettuun syötteeseen sen sijaan, että järjestäisit keskustelun pelkän valmistumisajan mukaan. Hyödyllinen tuotos on oikeista lopullisista alkioista koottu järjestetty litterointi, jossa väliteksti käsitellään etenemistietona eikä erillisenä valmiina lausumana.</p><h4>Erikoistuneet tulokset ja olennaiset rajat</h4><p>Tämä profiili ei tarjoa yleistä tekstitys-, aikaleima-, käännös- tai puhujatunnistesopimusta. OpenAI:n siirtymäohje erottaa nämä erikoistuneet ominaisuudet: mallin omat tekstitysmuodot ja sanakohtainen ajoitus tarvitsevat yhteensopivan mallin ja muodon, kun taas puhujatunnisteet käyttävät GPT-4o Transcribe Diarize -mallia. GPT Transcribe palauttaa tiedostolle JSON-tuloksen eikä suoraan korvaa SRT-, VTT- tai yksityiskohtaisia aikaleimavastauksia. Sen täsmällinen mallikortti ei julkaise numeerista konteksti- tai enimmäistulostekiintiötä, joten keskustelumallin tokeni-ikkunaa ei pidä olettaa äänen litteroinnille.</p><p>Vertaa vaikeaa sanastoa, lukuja, aksentteja, taustamelua ja kielenvaihdoksia tallenteeseen. Tarkista, että olennaiset vihjeet paransivat tunnistusta lisäämättä puheessa esiintymättömiä termejä ja että lopullinen litterointi sisältää äänen loppuosan. Säilytä monikielisessä tuloksessa puhutut sanamuodot ennen käännetyn version valmistelua. Näillä tarkistuksilla litteroinnista tulee hyödyllistä lähdeaineistoa, ja kontekstivihjeet, tunnistetut kielet ja tunnistettu puhe pysyvät selkeästi erillisinä.</p>",
  "aboutText": "GPT Transcribe on OpenAI:n puheesta tekstiksi -malli valmiille äänitiedostoille, suoratoistettaville tiedostolitteroinneille ja vahvistetuille äänivuoroille Realtime-istunnoissa. Se ottaa vastaan ääntä ja valinnaista tekstikontekstia ja palauttaa tunnistettua tekstiä. Tuottaja asemoi sen tallennetun puheen tarkkaan litterointiin alkuperäisellä kielellä, myös alakohtaisessa sanastossa, monikielisissä tallenteissa ja puheen sisäisessä kielten vaihtelussa. Hyödyllinen tulos on tallenteeseen yhdistetty litterointi sekä tunnistettujen kielten metatiedot silloin, kun malli pystyy ennustamaan kielen luotettavasti.\n\n### Valmiin tallenteen valmistelu\n\nOpenAI:n tiedostolitteroinnin työnkulku hyväksyy enintään 25 MB:n lataukset. Nykyinen päätepisteviite luettelee syötemuodot FLAC, MP3, MP4, MPEG, MPGA, M4A, OGG, WAV ja WebM ja suosittelee riittäviä tiedostometatietoja muodon tunnistamiseen, kuten sopivaa tiedostopäätettä ja sisältötyyppiä. Suuremmalle tallenteelle ohje suosittelee pakkaamista tai jakamista enintään 25 MB:n tiedostoiksi. Vältä katkaisemista kesken lauseen, sillä ympäröivän puheen poistaminen voi heikentää tunnistustarkkuutta. Säilytä osien järjestys ja niiden sijainnit alkuperäisessä tallenteessa.\n\nAnna kokousta, haastattelua tai tallennettua esitystä varten todellinen ääni ja kerro aihe sekä todennäköisesti puhuttu terminologia. Hyödyllinen tulos on tunnistettu sanamuoto eikä keskustelusta päätelty yhteenveto. Säilytä tallenteen tunniste palautetun tekstin mukana, jotta nimeä, lukua tai epävarmaa ilmausta tarkistava henkilö voi palata oikeaan lähteeseen. Litterointi voi sitten toimia erillisen yhteenveto-, käännös- tai toimitustyönkulun aineistona.\n\n### Konteksti, avainsanavihjeet ja odotetut kielet\n\nTuottaja erottaa kolme ohjaustapaa. Kehote antaa vapaamuotoista kontekstia tallenteen aiheesta tai tilanteesta. Avainsanat antavat puheessa odotettuja täsmällisiä sanoja tai ilmauksia. languages-luettelo kertoo odotetut puhutut kielet. Kuvaa kaksikielisessä tuotekeskustelussa tilanne kehotteessa, luettele olennaiset tuotenimet avainsanoina ja anna odotetut kielet. Nämä ovat tunnistusvihjeitä, eivät ohjeita lisätä sanastoa, jota kukaan ei käyttänyt.\n\nGPT Transcribe käyttää monikollista languages-kenttää vanhemman yksiköllisen language-kentän sijaan; OpenAI ohjeistaa, ettei molempia saa lähettää. Sen ohje hyväksyy tuetut ISO 639-1 -koodit, valitut ISO 639-3 -koodit ja alueelliset kiinan kielialuekoodit ja hylkää tukemattomat tai virheelliset arvot. Jokaisen avainsanan on pysyttävä yhdellä rivillä, eikä se saa sisältää kulmasulkua, rivinpalautusmerkkiä tai rivinvaihtomerkkiä. Virheellinen avainsana tai liian pitkä kehote voi johtaa koko pyynnön hylkäämiseen. Pidä konteksti olennaisena ja tarkista, esiintyvätkö vihjeinä annetut nimet todella äänessä, sen sijaan että pitäisit vihjeluetteloa litterointina.\n\n### JSON-tulos ja tunnistettujen kielten ennusteet\n\nDokumentoitu tiedostotulos on JSON, joka sisältää litteroinnin ja tunnistetut kielet. Nämä kieliennusteet ovat mallin tulos eivätkä annettujen kielivihjeiden kopio. Tyhjä kieliluettelo on kelvollinen tulos, kun malli ei voi tehdä luotettavaa ennustetta; se ei osoita tallenteen olleen hiljainen tai litteroinnin epäonnistuneen. Pidä tunnistettu teksti ja kielimetatiedot erillään, jotta jatkokäsittely voi käyttää kumpaakin merkityksensä mukaisesti.\n\n### Tiedostolitteroinnin suoratoisto\n\nValmiin tiedoston litterointiteksti voi valmistua vähitellen käsittelyn aikana. OpenAI dokumentoi tapahtumat transcript.text.delta osittaiselle tekstille ja transcript.text.done koko tiedoston litteroinnille; lopullinen tapahtuma sisältää myös tunnistetut kielet. Tämä suoratoistaa jo annetun tallenteen tulosta. Se auttaa näyttämään pitkän latauksen etenemisen, ja lopullinen tapahtuma määrittää tekstin, joka säilytetään valmiina tuloksena.\n\n### Vahvistetut vuorot Realtime-istunnoissa\n\nGPT Transcribe tarjoaa myös erikoistuneen Realtime-työnkulun WebSocketin kautta. Ääntä lisätään syötepuskuriin, minkä jälkeen sovellus vahvistaa äänivuoron nimenomaisesti. Litterointi alkaa tästä vahvistetusta osasta ja voi lähettää osittaisia tekstituloksia ennen valmistumistapahtumaa, joka sisältää myös tunnistetun kielen tiedot. Malli käyttää automaattisesti aiempia litteroituja vuoroja kontekstina tässä tuottajan istuntokulussa. Tämä eroaa jatkuvasta reaaliaikaisen tekstityksen tuottamisesta mikrofonin äänen saapuessa; OpenAI nimeää GPT Live Transcribe -mallin tähän jatkuvaan työnkulkuun.\n\nSäilytä useiden vuorojen käsittelyssä syötealkion tunniste sitä vastaavan litteroinnin mukana. OpenAI varoittaa, ettei eri vuorojen valmistumistapahtumien tarvitse saapua puhejärjestyksessä, joten yhdistä jokainen lopullinen tulos sen vahvistettuun syötteeseen sen sijaan, että järjestäisit keskustelun pelkän valmistumisajan mukaan. Hyödyllinen tuotos on oikeista lopullisista alkioista koottu järjestetty litterointi, jossa väliteksti käsitellään etenemistietona eikä erillisenä valmiina lausumana.\n\n### Erikoistuneet tulokset ja olennaiset rajat\n\nTämä profiili ei tarjoa yleistä tekstitys-, aikaleima-, käännös- tai puhujatunnistesopimusta. OpenAI:n siirtymäohje erottaa nämä erikoistuneet ominaisuudet: mallin omat tekstitysmuodot ja sanakohtainen ajoitus tarvitsevat yhteensopivan mallin ja muodon, kun taas puhujatunnisteet käyttävät GPT-4o Transcribe Diarize -mallia. GPT Transcribe palauttaa tiedostolle JSON-tuloksen eikä suoraan korvaa SRT-, VTT- tai yksityiskohtaisia aikaleimavastauksia. Sen täsmällinen mallikortti ei julkaise numeerista konteksti- tai enimmäistulostekiintiötä, joten keskustelumallin tokeni-ikkunaa ei pidä olettaa äänen litteroinnille.\n\nVertaa vaikeaa sanastoa, lukuja, aksentteja, taustamelua ja kielenvaihdoksia tallenteeseen. Tarkista, että olennaiset vihjeet paransivat tunnistusta lisäämättä puheessa esiintymättömiä termejä ja että lopullinen litterointi sisältää äänen loppuosan. Säilytä monikielisessä tuloksessa puhutut sanamuodot ennen käännetyn version valmistelua. Näillä tarkistuksilla litteroinnista tulee hyödyllistä lähdeaineistoa, ja kontekstivihjeet, tunnistetut kielet ja tunnistettu puhe pysyvät selkeästi erillisinä.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "26c11332803b0ff60aef8436fa9292a7a84cb6847fe92edbd96a3ba8f68984de",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "fi",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">O</span><h2 id=\"sheet-title\">OpenAI: GPT Transcribe</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Sulje\">×</button></div><div class=\"idline\"><span>OpenAI /</span><code>openai/gpt-transcribe</code><button type=\"button\" id=\"copy-id\">Kopioi ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Mallikortin osiot\"><button type=\"button\" data-card-jump=\"overview\">Aloitus</button><button type=\"button\" data-card-jump=\"methods\">Syötteet &amp; menetelmät</button><button type=\"button\" data-card-jump=\"pricing\">Hinnoittelu</button><button type=\"button\" data-card-jump=\"examples\">Esimerkit</button><button type=\"button\" data-card-jump=\"results\">Tulokset</button><button type=\"button\" data-card-jump=\"aliases\">Aliakset</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API-menetelmät\"><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|openai%2Fgpt-transcribe\">Tunnistus</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\">Aloitus</h3><p class=\"mdesc-full\">GPT Transcribe muuttaa tallennetun puheen tekstiksi alkuperäisellä kielellä käyttäen kontekstikehotteita, täsmällisiä avainsanavihjeitä ja useita kielivihjeitä. OpenAI dokumentoi valmiiden tiedostojen litteroinnin, tiedostotulosten suoratoiston ja litteroinnin Realtime-äänivuorojen vahvistamisen jälkeen.</p><dl class=\"card-io\" data-card-io><div><dt>Hyväksytyt syötteet</dt><dd>Ääni</dd></div><div><dt>Tulokset</dt><dd>Teksti</dd></div></dl><details class=\"card-about\"><summary>Tietoa mallista</summary><p class=\"note-s\" data-model-method-boundary>Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.</p><div class=\"mabout\" id=\"m-about\"><p>GPT Transcribe on OpenAI:n puheesta tekstiksi -malli valmiille äänitiedostoille, suoratoistettaville tiedostolitteroinneille ja vahvistetuille äänivuoroille Realtime-istunnoissa. Se ottaa vastaan ääntä ja valinnaista tekstikontekstia ja palauttaa tunnistettua tekstiä. Tuottaja asemoi sen tallennetun puheen tarkkaan litterointiin alkuperäisellä kielellä, myös alakohtaisessa sanastossa, monikielisissä tallenteissa ja puheen sisäisessä kielten vaihtelussa. Hyödyllinen tulos on tallenteeseen yhdistetty litterointi sekä tunnistettujen kielten metatiedot silloin, kun malli pystyy ennustamaan kielen luotettavasti.</p><h4>Valmiin tallenteen valmistelu</h4><p>OpenAI:n tiedostolitteroinnin työnkulku hyväksyy enintään 25 MB:n lataukset. Nykyinen päätepisteviite luettelee syötemuodot FLAC, MP3, MP4, MPEG, MPGA, M4A, OGG, WAV ja WebM ja suosittelee riittäviä tiedostometatietoja muodon tunnistamiseen, kuten sopivaa tiedostopäätettä ja sisältötyyppiä. Suuremmalle tallenteelle ohje suosittelee pakkaamista tai jakamista enintään 25 MB:n tiedostoiksi. Vältä katkaisemista kesken lauseen, sillä ympäröivän puheen poistaminen voi heikentää tunnistustarkkuutta. Säilytä osien järjestys ja niiden sijainnit alkuperäisessä tallenteessa.</p><p>Anna kokousta, haastattelua tai tallennettua esitystä varten todellinen ääni ja kerro aihe sekä todennäköisesti puhuttu terminologia. Hyödyllinen tulos on tunnistettu sanamuoto eikä keskustelusta päätelty yhteenveto. Säilytä tallenteen tunniste palautetun tekstin mukana, jotta nimeä, lukua tai epävarmaa ilmausta tarkistava henkilö voi palata oikeaan lähteeseen. Litterointi voi sitten toimia erillisen yhteenveto-, käännös- tai toimitustyönkulun aineistona.</p><h4>Konteksti, avainsanavihjeet ja odotetut kielet</h4><p>Tuottaja erottaa kolme ohjaustapaa. Kehote antaa vapaamuotoista kontekstia tallenteen aiheesta tai tilanteesta. Avainsanat antavat puheessa odotettuja täsmällisiä sanoja tai ilmauksia. languages-luettelo kertoo odotetut puhutut kielet. Kuvaa kaksikielisessä tuotekeskustelussa tilanne kehotteessa, luettele olennaiset tuotenimet avainsanoina ja anna odotetut kielet. Nämä ovat tunnistusvihjeitä, eivät ohjeita lisätä sanastoa, jota kukaan ei käyttänyt.</p><p>GPT Transcribe käyttää monikollista languages-kenttää vanhemman yksiköllisen language-kentän sijaan; OpenAI ohjeistaa, ettei molempia saa lähettää. Sen ohje hyväksyy tuetut ISO 639-1 -koodit, valitut ISO 639-3 -koodit ja alueelliset kiinan kielialuekoodit ja hylkää tukemattomat tai virheelliset arvot. Jokaisen avainsanan on pysyttävä yhdellä rivillä, eikä se saa sisältää kulmasulkua, rivinpalautusmerkkiä tai rivinvaihtomerkkiä. Virheellinen avainsana tai liian pitkä kehote voi johtaa koko pyynnön hylkäämiseen. Pidä konteksti olennaisena ja tarkista, esiintyvätkö vihjeinä annetut nimet todella äänessä, sen sijaan että pitäisit vihjeluetteloa litterointina.</p><h4>JSON-tulos ja tunnistettujen kielten ennusteet</h4><p>Dokumentoitu tiedostotulos on JSON, joka sisältää litteroinnin ja tunnistetut kielet. Nämä kieliennusteet ovat mallin tulos eivätkä annettujen kielivihjeiden kopio. Tyhjä kieliluettelo on kelvollinen tulos, kun malli ei voi tehdä luotettavaa ennustetta; se ei osoita tallenteen olleen hiljainen tai litteroinnin epäonnistuneen. Pidä tunnistettu teksti ja kielimetatiedot erillään, jotta jatkokäsittely voi käyttää kumpaakin merkityksensä mukaisesti.</p><h4>Tiedostolitteroinnin suoratoisto</h4><p>Valmiin tiedoston litterointiteksti voi valmistua vähitellen käsittelyn aikana. OpenAI dokumentoi tapahtumat transcript.text.delta osittaiselle tekstille ja transcript.text.done koko tiedoston litteroinnille; lopullinen tapahtuma sisältää myös tunnistetut kielet. Tämä suoratoistaa jo annetun tallenteen tulosta. Se auttaa näyttämään pitkän latauksen etenemisen, ja lopullinen tapahtuma määrittää tekstin, joka säilytetään valmiina tuloksena.</p><h4>Vahvistetut vuorot Realtime-istunnoissa</h4><p>GPT Transcribe tarjoaa myös erikoistuneen Realtime-työnkulun WebSocketin kautta. Ääntä lisätään syötepuskuriin, minkä jälkeen sovellus vahvistaa äänivuoron nimenomaisesti. Litterointi alkaa tästä vahvistetusta osasta ja voi lähettää osittaisia tekstituloksia ennen valmistumistapahtumaa, joka sisältää myös tunnistetun kielen tiedot. Malli käyttää automaattisesti aiempia litteroituja vuoroja kontekstina tässä tuottajan istuntokulussa. Tämä eroaa jatkuvasta reaaliaikaisen tekstityksen tuottamisesta mikrofonin äänen saapuessa; OpenAI nimeää GPT Live Transcribe -mallin tähän jatkuvaan työnkulkuun.</p><p>Säilytä useiden vuorojen käsittelyssä syötealkion tunniste sitä vastaavan litteroinnin mukana. OpenAI varoittaa, ettei eri vuorojen valmistumistapahtumien tarvitse saapua puhejärjestyksessä, joten yhdistä jokainen lopullinen tulos sen vahvistettuun syötteeseen sen sijaan, että järjestäisit keskustelun pelkän valmistumisajan mukaan. Hyödyllinen tuotos on oikeista lopullisista alkioista koottu järjestetty litterointi, jossa väliteksti käsitellään etenemistietona eikä erillisenä valmiina lausumana.</p><h4>Erikoistuneet tulokset ja olennaiset rajat</h4><p>Tämä profiili ei tarjoa yleistä tekstitys-, aikaleima-, käännös- tai puhujatunnistesopimusta. OpenAI:n siirtymäohje erottaa nämä erikoistuneet ominaisuudet: mallin omat tekstitysmuodot ja sanakohtainen ajoitus tarvitsevat yhteensopivan mallin ja muodon, kun taas puhujatunnisteet käyttävät GPT-4o Transcribe Diarize -mallia. GPT Transcribe palauttaa tiedostolle JSON-tuloksen eikä suoraan korvaa SRT-, VTT- tai yksityiskohtaisia aikaleimavastauksia. Sen täsmällinen mallikortti ei julkaise numeerista konteksti- tai enimmäistulostekiintiötä, joten keskustelumallin tokeni-ikkunaa ei pidä olettaa äänen litteroinnille.</p><p>Vertaa vaikeaa sanastoa, lukuja, aksentteja, taustamelua ja kielenvaihdoksia tallenteeseen. Tarkista, että olennaiset vihjeet paransivat tunnistusta lisäämättä puheessa esiintymättömiä termejä ja että lopullinen litterointi sisältää äänen loppuosan. Säilytä monikielisessä tuloksessa puhutut sanamuodot ennen käännetyn version valmistelua. Näillä tarkistuksilla litteroinnista tulee hyödyllistä lähdeaineistoa, ja kontekstivihjeet, tunnistetut kielet ja tunnistettu puhe pysyvät selkeästi erillisinä.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Saatavilla Ailootissa · syötteet &amp; menetelmät</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Litterointi</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Syötetyypit</dt><dd><code>audio</code></dd></div><div><dt>Tulostyypit</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Kenttä</th><th>Tyyppi</th><th>Vaatimus</th><th>Arvot &amp; rajat</th><th>Oletus</th></tr></thead><tbody><tr><th data-cell-label=\"Kenttä\" scope=\"row\"><span class=\"card-cell-label\">Kenttä</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Tyyppi\" data-field-type><span class=\"card-cell-label\">Tyyppi</span><code>string</code></td><td data-cell-label=\"Vaatimus\"><span class=\"card-cell-label\">Vaatimus</span>Pakollinen</td><td data-cell-label=\"Arvot &amp; rajat\"><span class=\"card-cell-label\">Arvot &amp; rajat</span><div>openai/gpt-transcribe</div></td><td data-cell-label=\"Oletus\" data-default=\"unspecified\"><span class=\"card-cell-label\">Oletus</span>—</td></tr><tr><th data-cell-label=\"Kenttä\" scope=\"row\"><span class=\"card-cell-label\">Kenttä</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"Tyyppi\" data-field-type><span class=\"card-cell-label\">Tyyppi</span><code>object</code></td><td data-cell-label=\"Vaatimus\"><span class=\"card-cell-label\">Vaatimus</span>Pakollinen</td><td data-cell-label=\"Arvot &amp; rajat\"><span class=\"card-cell-label\">Arvot &amp; rajat</span></td><td data-cell-label=\"Oletus\" data-default=\"unspecified\"><span class=\"card-cell-label\">Oletus</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Menetelmän parametrit ja elinkaari</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parametri</th><th>Sopimus</th></tr></thead><tbody><tr><th data-cell-label=\"Parametri\" scope=\"row\"><span class=\"card-cell-label\">Parametri</span><code>content_type</code></th><td data-cell-label=\"Sopimus\"><span class=\"card-cell-label\">Sopimus</span>application/json</td></tr><tr><th data-cell-label=\"Parametri\" scope=\"row\"><span class=\"card-cell-label\">Parametri</span><code>required</code></th><td data-cell-label=\"Sopimus\"><span class=\"card-cell-label\">Sopimus</span>model, input_audio</td></tr><tr><th data-cell-label=\"Parametri\" scope=\"row\"><span class=\"card-cell-label\">Parametri</span><code>material_types</code></th><td data-cell-label=\"Sopimus\"><span class=\"card-cell-label\">Sopimus</span>audio</td></tr><tr><th data-cell-label=\"Parametri\" scope=\"row\"><span class=\"card-cell-label\">Parametri</span><code>material_conditions</code></th><td data-cell-label=\"Sopimus\"><span class=\"card-cell-label\">Sopimus</span>Esimerkki lukee todellisen, ei-tyhjän PCM WAV -tiedostosi, koodaa tiedoston kaikki tavut base64-muotoon ja lähettää input_audio.format-kentän arvona wav.</td></tr></tbody></table></div><p>Elinkaari: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · täsmällinen task_id olemassa olevasta käyttäjälle kuuluvasta mediatietueesta</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\">Hinnoittelu</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.</p><dl data-price-conditions><dt>Nopea tila</dt><dd>Ei määritetty <span class=\"note-s\">Kun nopea tila on valittu</span></dd><dt>Flex-tila</dt><dd>Ei määritetty <span class=\"note-s\">Kun flex-tila on valittu</span></dd><dt>Päättelyn enimmäisteho</dt><dd>Ei määritetty <span class=\"note-s\">Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot-hinnat</h4><h4>Hinnat asetusten mukaan</h4><p class=\"note-s\">Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Asetukset</th><th>Hinnasto</th><th>Laskutusyksikkö</th><th>Veloitus</th></tr></thead><tbody><tr><th data-cell-label=\"Asetukset\" scope=\"row\"><span class=\"card-cell-label\">Asetukset</span>Tokenien perushinnat</th><td data-cell-label=\"Hinnasto\"><span class=\"card-cell-label\">Hinnasto</span>Perushinta</td><td data-cell-label=\"Laskutusyksikkö\"><span class=\"card-cell-label\">Laskutusyksikkö</span>—</td><td data-cell-label=\"Veloitus\"><span class=\"card-cell-label\">Veloitus</span><div><span>Syöte · Syötetokenit</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenia</span></div><div><span>Tuloste · Tulostokenit</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenia</span></div><div><span>Syöte · Välimuistin luku</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenia</span></div><div><span>Syöte · Välimuistiin kirjoitus</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenia</span></div><div><span>Syöte · Välimuistiin kirjoitus, 1 tunti</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenia</span></div></td></tr><tr><th data-cell-label=\"Asetukset\" scope=\"row\"><span class=\"card-cell-label\">Asetukset</span>äänisyötteen sekunti</th><td data-cell-label=\"Hinnasto\"><span class=\"card-cell-label\">Hinnasto</span>—</td><td data-cell-label=\"Laskutusyksikkö\"><span class=\"card-cell-label\">Laskutusyksikkö</span>syöteäänen sekuntia kohden</td><td data-cell-label=\"Veloitus\"><span class=\"card-cell-label\">Veloitus</span><div><span>Syöte · äänisyötteen sekunti</span> <b>$0.00015</b> <span class=\"price-unit\">syöteäänen sekuntia kohden</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. <a href=\"/docs/fi/billing/reserve/\">Varauksen ja lopullisen veloituksen toiminta →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Esimerkkipyynnöt</h3><h4>Ailoot Ultra · Litterointi</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Koodivaihtoehdot\"><button class=\"cg-tab\" id=\"model-code-2158-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2158-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · todellinen WAV-tiedosto ja koko alkuperäinen tulos</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopioi koodi\"><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-2158-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2158-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;openai/gpt-transcribe&#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\">Vastaanota ja tallenna tulokset</h3><h4>Ailoot Ultra · Litterointi</h4><p class=\"note-s\">Koko alkuperäinen vastaussisältö, tila ja välitetyt otsakkeet. Tämä käsittelijä ei lisää yleistä JSON-rakennetta, tekstikenttää tai tehtävän käärettä.</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>Säilytä kaikki valmistuneet tulokset</h5><p class=\"note-s\">Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.</p><p class=\"note-s\">Säilytä koko vastaus ja otsakkeet, jokainen todellinen tuloste, alkuperäiset palautetut tunnisteet ja kaikki käyttötietokentät. Selvitä alkuperäisen operaation tila lähettämättä luontipyyntöä uudelleen.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Jos alkuperäinen vastaus on tarkistettava</h5><p class=\"note-s\">Säilytä todellinen X-Client-Request-ID ja koko vastaus. Lue alkuperäisiä käyttäjälle kuuluvia aineistoja ja niiden täsmällisiä allekirjoitettuja sisällön URL-osoitteita; älä koskaan lähetä epävarmaa luontipyyntöä uudelleen.</p></div><details class=\"card-about\" data-output-fields><summary>Vastauksen kentät</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Kenttä</th><th>Tyyppi</th></tr></thead><tbody><tr><th data-cell-label=\"Kenttä\" scope=\"row\"><span class=\"card-cell-label\">Kenttä</span><code class=\"card-field-name\">text (when present)</code></th><td data-cell-label=\"Tyyppi\" data-field-type><span class=\"card-cell-label\">Tyyppi</span></td></tr><tr><th data-cell-label=\"Kenttä\" scope=\"row\"><span class=\"card-cell-label\">Kenttä</span><code class=\"card-field-name\">usage (when present)</code></th><td data-cell-label=\"Tyyppi\" data-field-type><span class=\"card-cell-label\">Tyyppi</span></td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Virheet ja seuraavat vaiheet</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Vastaus</th><th>Ehto</th><th>Seuraava vaihe</th></tr></thead><tbody><tr><th data-cell-label=\"Vastaus\" scope=\"row\"><span class=\"card-cell-label\">Vastaus</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Ehto\"><span class=\"card-cell-label\">Ehto</span>JSON-sisältö tai nimenomainen kanoninen mallin tunniste on virheellinen.</td><td data-cell-label=\"Seuraava vaihe\"><span class=\"card-cell-label\">Seuraava vaihe</span>Säilytä vastaus ja korjaa ilmoitettu pyyntökenttä.</td></tr><tr><th data-cell-label=\"Vastaus\" scope=\"row\"><span class=\"card-cell-label\">Vastaus</span>401 · <code>authentication_error</code></th><td data-cell-label=\"Ehto\"><span class=\"card-cell-label\">Ehto</span>Ailoot API -avain on virheellinen.</td><td data-cell-label=\"Seuraava vaihe\"><span class=\"card-cell-label\">Seuraava vaihe</span>Käytä käyttöön oikeutettua Ailoot API -avaintasi.</td></tr><tr><th data-cell-label=\"Vastaus\" scope=\"row\"><span class=\"card-cell-label\">Vastaus</span>403 · <code>permission_error</code></th><td data-cell-label=\"Ehto\"><span class=\"card-cell-label\">Ehto</span>Avaimen ryhmällä ei ole käyttöoikeutta tähän menetelmään.</td><td data-cell-label=\"Seuraava vaihe\"><span class=\"card-cell-label\">Seuraava vaihe</span>Säilytä palautetut virheen lisätiedot.</td></tr><tr><th data-cell-label=\"Vastaus\" scope=\"row\"><span class=\"card-cell-label\">Vastaus</span>404 · <code>not_found_error</code></th><td data-cell-label=\"Ehto\"><span class=\"card-cell-label\">Ehto</span>Valitulla menetelmällä ei ole käyttöön hyväksyttyä reittiä.</td><td data-cell-label=\"Seuraava vaihe\"><span class=\"card-cell-label\">Seuraava vaihe</span>Säilytä palautetut virheen lisätiedot.</td></tr><tr><th data-cell-label=\"Vastaus\" scope=\"row\"><span class=\"card-cell-label\">Vastaus</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Ehto\"><span class=\"card-cell-label\">Ehto</span>Hyväksytyn hinnaston edellyttämää syötemäärää tai sen rajaa ei saada selville.</td><td data-cell-label=\"Seuraava vaihe\"><span class=\"card-cell-label\">Seuraava vaihe</span>Säilytä vastaus; käytä hyväksytyn hinnaston edellyttämää syötteen esitysmuotoa.</td></tr><tr><th data-cell-label=\"Vastaus\" scope=\"row\"><span class=\"card-cell-label\">Vastaus</span>503 · <code></code></th><td data-cell-label=\"Ehto\"><span class=\"card-cell-label\">Ehto</span>Vaadittu tallennustila, reitti, menetelmän hinta tai katevaraus ei ole saatavilla.</td><td data-cell-label=\"Seuraava vaihe\"><span class=\"card-cell-label\">Seuraava vaihe</span>Säilytä koko alkuperäinen vastaus. Epävarma katevaraus ei oikeuta uudelleenlähetykseen.</td></tr><tr><th data-cell-label=\"Vastaus\" scope=\"row\"><span class=\"card-cell-label\">Vastaus</span>502 · <code>server_error</code></th><td data-cell-label=\"Ehto\"><span class=\"card-cell-label\">Ehto</span>Alkuperäinen tulos, käyttötiedot tai veloituksen lopullinen kirjaus on tarkistettava.</td><td data-cell-label=\"Seuraava vaihe\"><span class=\"card-cell-label\">Seuraava vaihe</span>Säilytä todellinen pyynnön tunniste ja alkuperäinen vastaus. Lue olemassa olevaa käyttäjälle kuuluvaa tietuetta; älä lähetä luontipyyntöä uudelleen.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Aliakset</h3><h4>Mallin aliakset</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=openai%2Fgpt-transcribe&amp;route=Ultra&amp;caller=openai%2Fgpt-transcribe&amp;fmt=transcriptions\"><code>openai/gpt-transcribe</code></a></span></p><h4>Menetelmäpolkujen aliakset</h4><p class=\"note-s\">Käytä yllä näytettyjä menetelmäpolkuja.</p><h4>Liittyvät kutsujan ID:t</h4><p class=\"note-s\"><a href=\"#m=openai%2Fgpt-transcribe&amp;route=Ultra&amp;caller=openai%2Fgpt-transcribe&amp;fmt=transcriptions\"><code>openai/gpt-transcribe</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "openai/gpt-transcribe",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "openai/gpt-transcribe",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|openai%2Fgpt-transcribe",
      "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": "JSON-sisältö tai nimenomainen kanoninen mallin tunniste on virheellinen.",
                "http_status": 400,
                "recovery": "Säilytä vastaus ja korjaa ilmoitettu pyyntökenttä.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Ailoot API -avain on virheellinen.",
                "http_status": 401,
                "recovery": "Käytä käyttöön oikeutettua Ailoot API -avaintasi.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Avaimen ryhmällä ei ole käyttöoikeutta tähän menetelmään.",
                "http_status": 403,
                "recovery": "Säilytä palautetut virheen lisätiedot.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Valitulla menetelmällä ei ole käyttöön hyväksyttyä reittiä.",
                "http_status": 404,
                "recovery": "Säilytä palautetut virheen lisätiedot.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Hyväksytyn hinnaston edellyttämää syötemäärää tai sen rajaa ei saada selville.",
                "http_status": 422,
                "recovery": "Säilytä vastaus; käytä hyväksytyn hinnaston edellyttämää syötteen esitysmuotoa.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Vaadittu tallennustila, reitti, menetelmän hinta tai katevaraus ei ole saatavilla.",
                "http_status": 503,
                "recovery": "Säilytä koko alkuperäinen vastaus. Epävarma katevaraus ei oikeuta uudelleenlähetykseen.",
                "type": null
              },
              {
                "code": null,
                "condition": "Alkuperäinen tulos, käyttötiedot tai veloituksen lopullinen kirjaus on tarkistettava.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Säilytä todellinen pyynnön tunniste ja alkuperäinen vastaus. Lue olemassa olevaa käyttäjälle kuuluvaa tietuetta; älä lähetä luontipyyntöä uudelleen.",
                "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": "Säilytä todellinen X-Client-Request-ID ja koko vastaus. Lue alkuperäisiä käyttäjälle kuuluvia aineistoja ja niiden täsmällisiä allekirjoitettuja sisällön URL-osoitteita; älä koskaan lähetä epävarmaa luontipyyntöä uudelleen."
            },
            "outputs": {
              "all_results": "Säilytä koko vastaus ja otsakkeet, jokainen todellinen tuloste, alkuperäiset palautetut tunnisteet ja kaikki käyttötietokentät. Selvitä alkuperäisen operaation tila lähettämättä luontipyyntöä uudelleen.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Koko alkuperäinen vastaussisältö, tila ja välitetyt otsakkeet. Tämä käsittelijä ei lisää yleistä JSON-rakennetta, tekstikenttää tai tehtävän käärettä."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "openai/gpt-transcribe"
                ],
                "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": [
                    "openai/gpt-transcribe"
                  ],
                  "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": "openai/gpt-transcribe"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Esimerkki lukee todellisen, ei-tyhjän PCM WAV -tiedostosi, koodaa tiedoston kaikki tavut base64-muotoon ja lähettää input_audio.format-kentän arvona 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": "täsmällinen task_id olemassa olevasta käyttäjälle kuuluvasta mediatietueesta",
                "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.00015",
                "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.00015",
                "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': 'openai/gpt-transcribe', '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": "Litterointi",
        "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.00015
          }
        },
        "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.00015",
                "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.00015",
                "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": "openai/gpt-transcribe",
        "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.00015",
            "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.00015",
            "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": "openai/gpt-transcribe",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "2b67cb287e3ade23e10e5941ec6d909b614ab5a45a85d56e19c202c54588c5ab",
    "input_html_sha256": "1e4a3ca5853c9806369f4b3ee3aeb313dc7d1ec02728802c2b12f25314c43569",
    "private_audit_sha256": "2752076259e1b8b775bf00f4d130a148bf78066b3ada481c0cef6147f4b7ff26",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/fi/openai-gpt-transcribe/",
    "description": "GPT Transcribe muuttaa tallennetun puheen tekstiksi alkuperäisellä kielellä käyttäen kontekstikehotteita, täsmällisiä avainsanavihjeitä ja useita kielivihjeitä. OpenAI dokumentoi valmiiden tiedostojen litteroinnin, tiedostotulosten suoratoiston ja litteroinnin Realtime-äänivuorojen vahvistamisen jälkeen.",
    "locale": "fi",
    "md_url": "https://ailoot.ai/models/fi/openai-gpt-transcribe/index.md",
    "title": "OpenAI: GPT Transcribe — Ailoot",
    "url": "https://ailoot.ai/models/fi/openai-gpt-transcribe/"
  },
  "rawModel": {
    "about": "GPT Transcribe on OpenAI:n puheesta tekstiksi -malli valmiille äänitiedostoille, suoratoistettaville tiedostolitteroinneille ja vahvistetuille äänivuoroille Realtime-istunnoissa. Se ottaa vastaan ääntä ja valinnaista tekstikontekstia ja palauttaa tunnistettua tekstiä. Tuottaja asemoi sen tallennetun puheen tarkkaan litterointiin alkuperäisellä kielellä, myös alakohtaisessa sanastossa, monikielisissä tallenteissa ja puheen sisäisessä kielten vaihtelussa. Hyödyllinen tulos on tallenteeseen yhdistetty litterointi sekä tunnistettujen kielten metatiedot silloin, kun malli pystyy ennustamaan kielen luotettavasti.\n\n### Valmiin tallenteen valmistelu\n\nOpenAI:n tiedostolitteroinnin työnkulku hyväksyy enintään 25 MB:n lataukset. Nykyinen päätepisteviite luettelee syötemuodot FLAC, MP3, MP4, MPEG, MPGA, M4A, OGG, WAV ja WebM ja suosittelee riittäviä tiedostometatietoja muodon tunnistamiseen, kuten sopivaa tiedostopäätettä ja sisältötyyppiä. Suuremmalle tallenteelle ohje suosittelee pakkaamista tai jakamista enintään 25 MB:n tiedostoiksi. Vältä katkaisemista kesken lauseen, sillä ympäröivän puheen poistaminen voi heikentää tunnistustarkkuutta. Säilytä osien järjestys ja niiden sijainnit alkuperäisessä tallenteessa.\n\nAnna kokousta, haastattelua tai tallennettua esitystä varten todellinen ääni ja kerro aihe sekä todennäköisesti puhuttu terminologia. Hyödyllinen tulos on tunnistettu sanamuoto eikä keskustelusta päätelty yhteenveto. Säilytä tallenteen tunniste palautetun tekstin mukana, jotta nimeä, lukua tai epävarmaa ilmausta tarkistava henkilö voi palata oikeaan lähteeseen. Litterointi voi sitten toimia erillisen yhteenveto-, käännös- tai toimitustyönkulun aineistona.\n\n### Konteksti, avainsanavihjeet ja odotetut kielet\n\nTuottaja erottaa kolme ohjaustapaa. Kehote antaa vapaamuotoista kontekstia tallenteen aiheesta tai tilanteesta. Avainsanat antavat puheessa odotettuja täsmällisiä sanoja tai ilmauksia. languages-luettelo kertoo odotetut puhutut kielet. Kuvaa kaksikielisessä tuotekeskustelussa tilanne kehotteessa, luettele olennaiset tuotenimet avainsanoina ja anna odotetut kielet. Nämä ovat tunnistusvihjeitä, eivät ohjeita lisätä sanastoa, jota kukaan ei käyttänyt.\n\nGPT Transcribe käyttää monikollista languages-kenttää vanhemman yksiköllisen language-kentän sijaan; OpenAI ohjeistaa, ettei molempia saa lähettää. Sen ohje hyväksyy tuetut ISO 639-1 -koodit, valitut ISO 639-3 -koodit ja alueelliset kiinan kielialuekoodit ja hylkää tukemattomat tai virheelliset arvot. Jokaisen avainsanan on pysyttävä yhdellä rivillä, eikä se saa sisältää kulmasulkua, rivinpalautusmerkkiä tai rivinvaihtomerkkiä. Virheellinen avainsana tai liian pitkä kehote voi johtaa koko pyynnön hylkäämiseen. Pidä konteksti olennaisena ja tarkista, esiintyvätkö vihjeinä annetut nimet todella äänessä, sen sijaan että pitäisit vihjeluetteloa litterointina.\n\n### JSON-tulos ja tunnistettujen kielten ennusteet\n\nDokumentoitu tiedostotulos on JSON, joka sisältää litteroinnin ja tunnistetut kielet. Nämä kieliennusteet ovat mallin tulos eivätkä annettujen kielivihjeiden kopio. Tyhjä kieliluettelo on kelvollinen tulos, kun malli ei voi tehdä luotettavaa ennustetta; se ei osoita tallenteen olleen hiljainen tai litteroinnin epäonnistuneen. Pidä tunnistettu teksti ja kielimetatiedot erillään, jotta jatkokäsittely voi käyttää kumpaakin merkityksensä mukaisesti.\n\n### Tiedostolitteroinnin suoratoisto\n\nValmiin tiedoston litterointiteksti voi valmistua vähitellen käsittelyn aikana. OpenAI dokumentoi tapahtumat transcript.text.delta osittaiselle tekstille ja transcript.text.done koko tiedoston litteroinnille; lopullinen tapahtuma sisältää myös tunnistetut kielet. Tämä suoratoistaa jo annetun tallenteen tulosta. Se auttaa näyttämään pitkän latauksen etenemisen, ja lopullinen tapahtuma määrittää tekstin, joka säilytetään valmiina tuloksena.\n\n### Vahvistetut vuorot Realtime-istunnoissa\n\nGPT Transcribe tarjoaa myös erikoistuneen Realtime-työnkulun WebSocketin kautta. Ääntä lisätään syötepuskuriin, minkä jälkeen sovellus vahvistaa äänivuoron nimenomaisesti. Litterointi alkaa tästä vahvistetusta osasta ja voi lähettää osittaisia tekstituloksia ennen valmistumistapahtumaa, joka sisältää myös tunnistetun kielen tiedot. Malli käyttää automaattisesti aiempia litteroituja vuoroja kontekstina tässä tuottajan istuntokulussa. Tämä eroaa jatkuvasta reaaliaikaisen tekstityksen tuottamisesta mikrofonin äänen saapuessa; OpenAI nimeää GPT Live Transcribe -mallin tähän jatkuvaan työnkulkuun.\n\nSäilytä useiden vuorojen käsittelyssä syötealkion tunniste sitä vastaavan litteroinnin mukana. OpenAI varoittaa, ettei eri vuorojen valmistumistapahtumien tarvitse saapua puhejärjestyksessä, joten yhdistä jokainen lopullinen tulos sen vahvistettuun syötteeseen sen sijaan, että järjestäisit keskustelun pelkän valmistumisajan mukaan. Hyödyllinen tuotos on oikeista lopullisista alkioista koottu järjestetty litterointi, jossa väliteksti käsitellään etenemistietona eikä erillisenä valmiina lausumana.\n\n### Erikoistuneet tulokset ja olennaiset rajat\n\nTämä profiili ei tarjoa yleistä tekstitys-, aikaleima-, käännös- tai puhujatunnistesopimusta. OpenAI:n siirtymäohje erottaa nämä erikoistuneet ominaisuudet: mallin omat tekstitysmuodot ja sanakohtainen ajoitus tarvitsevat yhteensopivan mallin ja muodon, kun taas puhujatunnisteet käyttävät GPT-4o Transcribe Diarize -mallia. GPT Transcribe palauttaa tiedostolle JSON-tuloksen eikä suoraan korvaa SRT-, VTT- tai yksityiskohtaisia aikaleimavastauksia. Sen täsmällinen mallikortti ei julkaise numeerista konteksti- tai enimmäistulostekiintiötä, joten keskustelumallin tokeni-ikkunaa ei pidä olettaa äänen litteroinnille.\n\nVertaa vaikeaa sanastoa, lukuja, aksentteja, taustamelua ja kielenvaihdoksia tallenteeseen. Tarkista, että olennaiset vihjeet paransivat tunnistusta lisäämättä puheessa esiintymättömiä termejä ja että lopullinen litterointi sisältää äänen loppuosan. Säilytä monikielisessä tuloksessa puhutut sanamuodot ennen käännetyn version valmistelua. Näillä tarkistuksilla litteroinnista tulee hyödyllistä lähdeaineistoa, ja kontekstivihjeet, tunnistetut kielet ja tunnistettu puhe pysyvät selkeästi erillisinä.",
    "alias_of": null,
    "aliases": [],
    "author": "OpenAI",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.00015",
            "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.00015",
            "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": "Konfiguraation täydet hintatiedot lisätiedoissa."
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "openai/gpt-transcribe",
    "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": "JSON-sisältö tai nimenomainen kanoninen mallin tunniste on virheellinen.",
                "http_status": 400,
                "recovery": "Säilytä vastaus ja korjaa ilmoitettu pyyntökenttä.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Ailoot API -avain on virheellinen.",
                "http_status": 401,
                "recovery": "Käytä käyttöön oikeutettua Ailoot API -avaintasi.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Avaimen ryhmällä ei ole käyttöoikeutta tähän menetelmään.",
                "http_status": 403,
                "recovery": "Säilytä palautetut virheen lisätiedot.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Valitulla menetelmällä ei ole käyttöön hyväksyttyä reittiä.",
                "http_status": 404,
                "recovery": "Säilytä palautetut virheen lisätiedot.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Hyväksytyn hinnaston edellyttämää syötemäärää tai sen rajaa ei saada selville.",
                "http_status": 422,
                "recovery": "Säilytä vastaus; käytä hyväksytyn hinnaston edellyttämää syötteen esitysmuotoa.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Vaadittu tallennustila, reitti, menetelmän hinta tai katevaraus ei ole saatavilla.",
                "http_status": 503,
                "recovery": "Säilytä koko alkuperäinen vastaus. Epävarma katevaraus ei oikeuta uudelleenlähetykseen.",
                "type": null
              },
              {
                "code": null,
                "condition": "Alkuperäinen tulos, käyttötiedot tai veloituksen lopullinen kirjaus on tarkistettava.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Säilytä todellinen pyynnön tunniste ja alkuperäinen vastaus. Lue olemassa olevaa käyttäjälle kuuluvaa tietuetta; älä lähetä luontipyyntöä uudelleen.",
                "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": "Säilytä todellinen X-Client-Request-ID ja koko vastaus. Lue alkuperäisiä käyttäjälle kuuluvia aineistoja ja niiden täsmällisiä allekirjoitettuja sisällön URL-osoitteita; älä koskaan lähetä epävarmaa luontipyyntöä uudelleen."
            },
            "outputs": {
              "all_results": "Säilytä koko vastaus ja otsakkeet, jokainen todellinen tuloste, alkuperäiset palautetut tunnisteet ja kaikki käyttötietokentät. Selvitä alkuperäisen operaation tila lähettämättä luontipyyntöä uudelleen.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Koko alkuperäinen vastaussisältö, tila ja välitetyt otsakkeet. Tämä käsittelijä ei lisää yleistä JSON-rakennetta, tekstikenttää tai tehtävän käärettä."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "openai/gpt-transcribe"
                ],
                "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": [
                    "openai/gpt-transcribe"
                  ],
                  "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": "openai/gpt-transcribe"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Esimerkki lukee todellisen, ei-tyhjän PCM WAV -tiedostosi, koodaa tiedoston kaikki tavut base64-muotoon ja lähettää input_audio.format-kentän arvona 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": "täsmällinen task_id olemassa olevasta käyttäjälle kuuluvasta mediatietueesta",
                "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.00015",
                "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.00015",
                "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': 'openai/gpt-transcribe', '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": "Litterointi",
        "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.00015
          }
        },
        "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.00015",
                "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.00015",
                "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": "openai/gpt-transcribe",
        "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.00015",
            "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.00015",
            "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": "openai/gpt-transcribe",
        "request_model_id": "openai/gpt-transcribe",
        "route_label": "Ultra"
      }
    ],
    "name": "OpenAI: GPT Transcribe",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "GPT Transcribe muuttaa tallennetun puheen tekstiksi alkuperäisellä kielellä käyttäen kontekstikehotteita, täsmällisiä avainsanavihjeitä ja useita kielivihjeitä. OpenAI dokumentoi valmiiden tiedostojen litteroinnin, tiedostotulosten suoratoiston ja litteroinnin Realtime-äänivuorojen vahvistamisen jälkeen."
  },
  "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": "GPT Transcribe muuttaa tallennetun puheen tekstiksi alkuperäisellä kielellä käyttäen kontekstikehotteita, täsmällisiä avainsanavihjeitä ja useita kielivihjeitä. OpenAI dokumentoi valmiiden tiedostojen litteroinnin, tiedostotulosten suoratoiston ja litteroinnin Realtime-äänivuorojen vahvistamisen jälkeen.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "5110c013c7f810720cb491a1922a0f901eca4c90f158509c187c01753f663b7b",
    "renderer_sha256": "303a59603e2bc29ba8fda690e95fd32cec68de223d92e26054a88babff801dd7"
  },
  "sourceRevision": "13a599f5f16290e252cd50e91a300655267b83cde9e994818b49ae750bfaf34b"
}
