{
  "aboutHtml": "<p>Muse Voice Transcribe 1.0 er Metas modell for lydoppfatning, som transkriberer tale, registrerer ytringsgrenser og knytter taleturer til talere. Den tilhører Muse Spark-modellfamilien og kombinerer talegjenkjenning, talersegmentering og deteksjon av ytringsslutt i selve modellen. Resultatet er gjenkjent tekst med tids- og talerinformasjonen som er tilgjengelig i den valgte modusen.</p><p>Modellen behandler lyd i blokker på 80 millisekunder og avgjør når den skal fortsette å lytte eller sende ut tekst. Den adaptive forsinkelsen gjør at den kan vente på mer lyd når et ord er vanskeligere å tolke. Dette gir foreløpig tekst mens talen kommer inn, etterfulgt av ferdige transkripsjonsresultater. Behandle den foreløpige hypotesen og den ferdige taleturen som ulike stadier i lytteopplevelsen.</p><p>Velg mellom tre moduser. Push-to-talk er standarden for én kontrollert ytring, for eksempel et talesøk eller et kort diktert avsnitt. Endpointing lar modellen oppdage grenser mellom taleturer og returnere én ferdig transkripsjon per registrerte segment. Diarization knytter den gjenkjente talen til taleretiketter og er beregnet på opptak med flere talere, fremfor raskest mulig turtaking med talekommandoer.</p><p>For et opptak returnerer filtranskripsjonsflyten en komplett transkripsjon i én forespørsel. Standardresultatet er JSON med transkripsjonen og lydens varighet, samt en turns-matrise i modusene endpointing og diarization. Hver taletur kan ha en identifikator, start og slutt i millisekunder og den gjenkjente teksten. Taleretiketter finnes i diarization-modus. Push-to-talk gir den komplette transkripsjonen uten registrerte taleturer i denne matrisen. Produsentens grensesnitt for opptaksfiler kan også returnere ren tekst eller en strøm av transkripsjonshendelser. Ren tekst beholder registrerte taleturer på separate linjer og kan inneholde taleretiketter; en hendelsesstrøm avsluttes etter den siste hendelsen uten et separat JSON-sammendrag. Strømmens delta-modus for delresultater returnerer teksttillegg, mens den avsluttende transkripsjonshendelsen inneholder hele ordlyden.</p><p>Klargjør en RIFF/WAVE-fil med mono PCM-lyd med 16-bits heltallsverdier ved 16 eller 24 kHz. Modellens opprinnelige samplingsfrekvens er 24 kHz, og grensesnittet godtar også 16 kHz. Konverter andre beholdere eller kodinger til dette støttede WAV-formatet før du sender inn et opptak. Filtranskripsjonsprofilen tillater lyd på opptil 10 minutter og en samlet forespørselskropp på opptil 32 MB. Behold originalopptaket og eventuell konvertering knyttet til den returnerte transkripsjonen for senere kontroll ved lytting.</p><p>Arbeidsflyten for direktelyd bruker rå mono PCM med fortegn, 16-bits verdier og little-endian-byteorden, med lyd ved 16 eller 24 kHz sendt omtrent i sanntid. Det dokumenterte øktvinduet er 60 minutter. Meta beskriver opprinnelig lydinput på over én time; de dokumenterte grensene for filer og direkteøkter er fortsatt separate grensesnittgrenser. Velg fil- eller direkteflyten ut fra om lyden allerede er ferdig eller fortsatt tas opp, og knytt resultater fra separate økter til sine egne inputsegmenter.</p><p>Muse Voice Transcribe er trent på mer enn 70 språk, mens det dokumenterte gjenkjenningsgrensesnittet oppgir 25 støttede språk. Disse omfatter engelsk, fransk, tysk, spansk, arabisk, mandarin, hindi, japansk, koreansk, italiensk og portugisisk. Den gjenkjenner språkveksling innenfor og mellom setninger. Et språkhint kan angi språkene som forventes i lyden, men styrer gjenkjenningen uten å tvinge transkripsjonen over i ett språk.</p><p>Ordforrådshint hjelper med produktbegreper, akronymer, navn eller steder som er viktige i et opptak. Oppgi de faktiske ordene og stavemåtene du forventer å høre. Nøkkelordlisten påvirker gjenkjenningen uten å garantere en bestemt stavemåte, så kontroller avgjørende begreper mot lyden. Språkhint og nøkkelord velges ved starten av transkripsjonen; hold dem relevante for opptaket fremfor å endre betydningen deres mens en økt pågår.</p><p>Modellen støtter talersegmentering for samtaler med mer enn 20 talere. Etiketter som A og B identifiserer talere innenfor én transkripsjon. De er ikke bekreftede navn og fastslår ikke at en etikett viser til samme person i en annen økt. Ved en analyse av et originalt møte kan du be om talermerkede taleturer, beholde opptaket og bruke etikettene til å organisere diskusjonen før faktiske deltakernavn knyttes til dem gjennom den omkringliggende arbeidsflyten.</p><p>Foreløpige direktetranskripsjoner kan endre seg når mer tale kommer inn. I kumulativ modus erstatter hvert delresultat den foregående hypotesen fremfor å legge til enda en kopi av den. En registrert taleslutt markerer en grense, mens resultatet for en ferdig taletur gir den endelige teksten og kan avvike fra siste delresultat. Knytt overlappende taleturer til sine taleturidentifikatorer, og ta imot de ferdige resultatene før du behandler en transkripsjon som avsluttet. Når direkteinput opphører, signaliser slutten på input og fortsett å motta til produsenten har sendt ut alle ventende resultater. En umiddelbar lukking av forbindelsen kan forkaste disse resultatene; en registrert talegrense avslutter en taletur, fremfor hele økten.</p><p>Tidsangivelsene gjelder taleturer. Denne profilen gir ikke tidsstempler for enkeltord eller konfidensverdier, og fremdrift i lydbehandlingen er ikke et tidsstempel for et bestemt ord. Deteksjon av lydhendelser, følelsesdeteksjon og omformatering av transkripsjoner ligger også utenfor den dokumenterte resultatprofilen. Bruk de returnerte taleturintervallene til en talertidslinje eller kontroll på segmentnivå, og behold de gjenkjente ordene dersom et separat redigeringstrinn senere lager ryddigere notater.</p><p>Nyttige resultater omfatter et ferdig diktert avsnitt, en transkripsjon av et talesøk, en talermerket samtale eller en tidslinje over ytringer. Sammenlign navn, tall og faguttrykk med originalopptaket, bevar koblingene til modus og tidsangivelser, og hold de komplette taleturene tilgjengelige for kontroll. Transkripsjonen fastslår hva som ble gjenkjent i lyden; å besvare et muntlig spørsmål, oversette det eller gjøre det om til møtenotater hører til et senere trinn i applikasjonen.</p>",
  "aboutText": "Muse Voice Transcribe 1.0 er Metas modell for lydoppfatning, som transkriberer tale, registrerer ytringsgrenser og knytter taleturer til talere. Den tilhører Muse Spark-modellfamilien og kombinerer talegjenkjenning, talersegmentering og deteksjon av ytringsslutt i selve modellen. Resultatet er gjenkjent tekst med tids- og talerinformasjonen som er tilgjengelig i den valgte modusen.\n\nModellen behandler lyd i blokker på 80 millisekunder og avgjør når den skal fortsette å lytte eller sende ut tekst. Den adaptive forsinkelsen gjør at den kan vente på mer lyd når et ord er vanskeligere å tolke. Dette gir foreløpig tekst mens talen kommer inn, etterfulgt av ferdige transkripsjonsresultater. Behandle den foreløpige hypotesen og den ferdige taleturen som ulike stadier i lytteopplevelsen.\n\nVelg mellom tre moduser. Push-to-talk er standarden for én kontrollert ytring, for eksempel et talesøk eller et kort diktert avsnitt. Endpointing lar modellen oppdage grenser mellom taleturer og returnere én ferdig transkripsjon per registrerte segment. Diarization knytter den gjenkjente talen til taleretiketter og er beregnet på opptak med flere talere, fremfor raskest mulig turtaking med talekommandoer.\n\nFor et opptak returnerer filtranskripsjonsflyten en komplett transkripsjon i én forespørsel. Standardresultatet er JSON med transkripsjonen og lydens varighet, samt en turns-matrise i modusene endpointing og diarization. Hver taletur kan ha en identifikator, start og slutt i millisekunder og den gjenkjente teksten. Taleretiketter finnes i diarization-modus. Push-to-talk gir den komplette transkripsjonen uten registrerte taleturer i denne matrisen. Produsentens grensesnitt for opptaksfiler kan også returnere ren tekst eller en strøm av transkripsjonshendelser. Ren tekst beholder registrerte taleturer på separate linjer og kan inneholde taleretiketter; en hendelsesstrøm avsluttes etter den siste hendelsen uten et separat JSON-sammendrag. Strømmens delta-modus for delresultater returnerer teksttillegg, mens den avsluttende transkripsjonshendelsen inneholder hele ordlyden.\n\nKlargjør en RIFF/WAVE-fil med mono PCM-lyd med 16-bits heltallsverdier ved 16 eller 24 kHz. Modellens opprinnelige samplingsfrekvens er 24 kHz, og grensesnittet godtar også 16 kHz. Konverter andre beholdere eller kodinger til dette støttede WAV-formatet før du sender inn et opptak. Filtranskripsjonsprofilen tillater lyd på opptil 10 minutter og en samlet forespørselskropp på opptil 32 MB. Behold originalopptaket og eventuell konvertering knyttet til den returnerte transkripsjonen for senere kontroll ved lytting.\n\nArbeidsflyten for direktelyd bruker rå mono PCM med fortegn, 16-bits verdier og little-endian-byteorden, med lyd ved 16 eller 24 kHz sendt omtrent i sanntid. Det dokumenterte øktvinduet er 60 minutter. Meta beskriver opprinnelig lydinput på over én time; de dokumenterte grensene for filer og direkteøkter er fortsatt separate grensesnittgrenser. Velg fil- eller direkteflyten ut fra om lyden allerede er ferdig eller fortsatt tas opp, og knytt resultater fra separate økter til sine egne inputsegmenter.\n\nMuse Voice Transcribe er trent på mer enn 70 språk, mens det dokumenterte gjenkjenningsgrensesnittet oppgir 25 støttede språk. Disse omfatter engelsk, fransk, tysk, spansk, arabisk, mandarin, hindi, japansk, koreansk, italiensk og portugisisk. Den gjenkjenner språkveksling innenfor og mellom setninger. Et språkhint kan angi språkene som forventes i lyden, men styrer gjenkjenningen uten å tvinge transkripsjonen over i ett språk.\n\nOrdforrådshint hjelper med produktbegreper, akronymer, navn eller steder som er viktige i et opptak. Oppgi de faktiske ordene og stavemåtene du forventer å høre. Nøkkelordlisten påvirker gjenkjenningen uten å garantere en bestemt stavemåte, så kontroller avgjørende begreper mot lyden. Språkhint og nøkkelord velges ved starten av transkripsjonen; hold dem relevante for opptaket fremfor å endre betydningen deres mens en økt pågår.\n\nModellen støtter talersegmentering for samtaler med mer enn 20 talere. Etiketter som A og B identifiserer talere innenfor én transkripsjon. De er ikke bekreftede navn og fastslår ikke at en etikett viser til samme person i en annen økt. Ved en analyse av et originalt møte kan du be om talermerkede taleturer, beholde opptaket og bruke etikettene til å organisere diskusjonen før faktiske deltakernavn knyttes til dem gjennom den omkringliggende arbeidsflyten.\n\nForeløpige direktetranskripsjoner kan endre seg når mer tale kommer inn. I kumulativ modus erstatter hvert delresultat den foregående hypotesen fremfor å legge til enda en kopi av den. En registrert taleslutt markerer en grense, mens resultatet for en ferdig taletur gir den endelige teksten og kan avvike fra siste delresultat. Knytt overlappende taleturer til sine taleturidentifikatorer, og ta imot de ferdige resultatene før du behandler en transkripsjon som avsluttet. Når direkteinput opphører, signaliser slutten på input og fortsett å motta til produsenten har sendt ut alle ventende resultater. En umiddelbar lukking av forbindelsen kan forkaste disse resultatene; en registrert talegrense avslutter en taletur, fremfor hele økten.\n\nTidsangivelsene gjelder taleturer. Denne profilen gir ikke tidsstempler for enkeltord eller konfidensverdier, og fremdrift i lydbehandlingen er ikke et tidsstempel for et bestemt ord. Deteksjon av lydhendelser, følelsesdeteksjon og omformatering av transkripsjoner ligger også utenfor den dokumenterte resultatprofilen. Bruk de returnerte taleturintervallene til en talertidslinje eller kontroll på segmentnivå, og behold de gjenkjente ordene dersom et separat redigeringstrinn senere lager ryddigere notater.\n\nNyttige resultater omfatter et ferdig diktert avsnitt, en transkripsjon av et talesøk, en talermerket samtale eller en tidslinje over ytringer. Sammenlign navn, tall og faguttrykk med originalopptaket, bevar koblingene til modus og tidsangivelser, og hold de komplette taleturene tilgjengelige for kontroll. Transkripsjonen fastslår hva som ble gjenkjent i lyden; å besvare et muntlig spørsmål, oversette det eller gjøre det om til møtenotater hører til et senere trinn i applikasjonen.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "ef8e42b8079b4b433588713dde609631fdef72c34104871e0efb47d21ca7976d",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "nb",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">M</span><h2 id=\"sheet-title\">Meta: Muse Voice Transcribe 1.0</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Lukk\">×</button></div><div class=\"idline\"><span>Meta /</span><code>meta/muse-voice-transcribe-1.0</code><button type=\"button\" id=\"copy-id\">Kopier ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Seksjoner i modellkortet\"><button type=\"button\" data-card-jump=\"overview\">Start</button><button type=\"button\" data-card-jump=\"methods\">Inndata &amp; metoder</button><button type=\"button\" data-card-jump=\"pricing\">Priser</button><button type=\"button\" data-card-jump=\"examples\">Eksempler</button><button type=\"button\" data-card-jump=\"results\">Resultater</button><button type=\"button\" data-card-jump=\"aliases\">Aliaser</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API-metoder\"><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|meta%2Fmuse-voice-transcribe-1.0\">Gjenkjenning</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Start</h3><p class=\"mdesc-full\">Muse Voice Transcribe 1.0 er Metas tale-til-tekst-modell for diktering, registrering av taleturer og transkripsjoner med talermerking. Den støtter språk- og ordforrådshint, veksling mellom språk og tidsangivelser per taletur, med egne arbeidsflyter for opptak og direktelyd.</p><dl class=\"card-io\" data-card-io><div><dt>Godkjente inndata</dt><dd>Lyd</dd></div><div><dt>Resultater</dt><dd>Tekst</dd></div></dl><details class=\"card-about\"><summary>Om modellen</summary><p class=\"note-s\" data-model-method-boundary>Denne beskrivelsen dekker modellens funksjoner. Tilgjengelige inndata, utdata og alternativer i Ailoot er oppført nedenfor for den valgte metoden.</p><div class=\"mabout\" id=\"m-about\"><p>Muse Voice Transcribe 1.0 er Metas modell for lydoppfatning, som transkriberer tale, registrerer ytringsgrenser og knytter taleturer til talere. Den tilhører Muse Spark-modellfamilien og kombinerer talegjenkjenning, talersegmentering og deteksjon av ytringsslutt i selve modellen. Resultatet er gjenkjent tekst med tids- og talerinformasjonen som er tilgjengelig i den valgte modusen.</p><p>Modellen behandler lyd i blokker på 80 millisekunder og avgjør når den skal fortsette å lytte eller sende ut tekst. Den adaptive forsinkelsen gjør at den kan vente på mer lyd når et ord er vanskeligere å tolke. Dette gir foreløpig tekst mens talen kommer inn, etterfulgt av ferdige transkripsjonsresultater. Behandle den foreløpige hypotesen og den ferdige taleturen som ulike stadier i lytteopplevelsen.</p><p>Velg mellom tre moduser. Push-to-talk er standarden for én kontrollert ytring, for eksempel et talesøk eller et kort diktert avsnitt. Endpointing lar modellen oppdage grenser mellom taleturer og returnere én ferdig transkripsjon per registrerte segment. Diarization knytter den gjenkjente talen til taleretiketter og er beregnet på opptak med flere talere, fremfor raskest mulig turtaking med talekommandoer.</p><p>For et opptak returnerer filtranskripsjonsflyten en komplett transkripsjon i én forespørsel. Standardresultatet er JSON med transkripsjonen og lydens varighet, samt en turns-matrise i modusene endpointing og diarization. Hver taletur kan ha en identifikator, start og slutt i millisekunder og den gjenkjente teksten. Taleretiketter finnes i diarization-modus. Push-to-talk gir den komplette transkripsjonen uten registrerte taleturer i denne matrisen. Produsentens grensesnitt for opptaksfiler kan også returnere ren tekst eller en strøm av transkripsjonshendelser. Ren tekst beholder registrerte taleturer på separate linjer og kan inneholde taleretiketter; en hendelsesstrøm avsluttes etter den siste hendelsen uten et separat JSON-sammendrag. Strømmens delta-modus for delresultater returnerer teksttillegg, mens den avsluttende transkripsjonshendelsen inneholder hele ordlyden.</p><p>Klargjør en RIFF/WAVE-fil med mono PCM-lyd med 16-bits heltallsverdier ved 16 eller 24 kHz. Modellens opprinnelige samplingsfrekvens er 24 kHz, og grensesnittet godtar også 16 kHz. Konverter andre beholdere eller kodinger til dette støttede WAV-formatet før du sender inn et opptak. Filtranskripsjonsprofilen tillater lyd på opptil 10 minutter og en samlet forespørselskropp på opptil 32 MB. Behold originalopptaket og eventuell konvertering knyttet til den returnerte transkripsjonen for senere kontroll ved lytting.</p><p>Arbeidsflyten for direktelyd bruker rå mono PCM med fortegn, 16-bits verdier og little-endian-byteorden, med lyd ved 16 eller 24 kHz sendt omtrent i sanntid. Det dokumenterte øktvinduet er 60 minutter. Meta beskriver opprinnelig lydinput på over én time; de dokumenterte grensene for filer og direkteøkter er fortsatt separate grensesnittgrenser. Velg fil- eller direkteflyten ut fra om lyden allerede er ferdig eller fortsatt tas opp, og knytt resultater fra separate økter til sine egne inputsegmenter.</p><p>Muse Voice Transcribe er trent på mer enn 70 språk, mens det dokumenterte gjenkjenningsgrensesnittet oppgir 25 støttede språk. Disse omfatter engelsk, fransk, tysk, spansk, arabisk, mandarin, hindi, japansk, koreansk, italiensk og portugisisk. Den gjenkjenner språkveksling innenfor og mellom setninger. Et språkhint kan angi språkene som forventes i lyden, men styrer gjenkjenningen uten å tvinge transkripsjonen over i ett språk.</p><p>Ordforrådshint hjelper med produktbegreper, akronymer, navn eller steder som er viktige i et opptak. Oppgi de faktiske ordene og stavemåtene du forventer å høre. Nøkkelordlisten påvirker gjenkjenningen uten å garantere en bestemt stavemåte, så kontroller avgjørende begreper mot lyden. Språkhint og nøkkelord velges ved starten av transkripsjonen; hold dem relevante for opptaket fremfor å endre betydningen deres mens en økt pågår.</p><p>Modellen støtter talersegmentering for samtaler med mer enn 20 talere. Etiketter som A og B identifiserer talere innenfor én transkripsjon. De er ikke bekreftede navn og fastslår ikke at en etikett viser til samme person i en annen økt. Ved en analyse av et originalt møte kan du be om talermerkede taleturer, beholde opptaket og bruke etikettene til å organisere diskusjonen før faktiske deltakernavn knyttes til dem gjennom den omkringliggende arbeidsflyten.</p><p>Foreløpige direktetranskripsjoner kan endre seg når mer tale kommer inn. I kumulativ modus erstatter hvert delresultat den foregående hypotesen fremfor å legge til enda en kopi av den. En registrert taleslutt markerer en grense, mens resultatet for en ferdig taletur gir den endelige teksten og kan avvike fra siste delresultat. Knytt overlappende taleturer til sine taleturidentifikatorer, og ta imot de ferdige resultatene før du behandler en transkripsjon som avsluttet. Når direkteinput opphører, signaliser slutten på input og fortsett å motta til produsenten har sendt ut alle ventende resultater. En umiddelbar lukking av forbindelsen kan forkaste disse resultatene; en registrert talegrense avslutter en taletur, fremfor hele økten.</p><p>Tidsangivelsene gjelder taleturer. Denne profilen gir ikke tidsstempler for enkeltord eller konfidensverdier, og fremdrift i lydbehandlingen er ikke et tidsstempel for et bestemt ord. Deteksjon av lydhendelser, følelsesdeteksjon og omformatering av transkripsjoner ligger også utenfor den dokumenterte resultatprofilen. Bruk de returnerte taleturintervallene til en talertidslinje eller kontroll på segmentnivå, og behold de gjenkjente ordene dersom et separat redigeringstrinn senere lager ryddigere notater.</p><p>Nyttige resultater omfatter et ferdig diktert avsnitt, en transkripsjon av et talesøk, en talermerket samtale eller en tidslinje over ytringer. Sammenlign navn, tall og faguttrykk med originalopptaket, bevar koblingene til modus og tidsangivelser, og hold de komplette taleturene tilgjengelige for kontroll. Transkripsjonen fastslår hva som ble gjenkjent i lyden; å besvare et muntlig spørsmål, oversette det eller gjøre det om til møtenotater hører til et senere trinn i applikasjonen.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Tilgjengelig i Ailoot · inndata &amp; metoder</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Transkripsjon</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Inndatatyper</dt><dd><code>audio</code></dd></div><div><dt>Utdatatyper</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Felt</th><th>Type</th><th>Krav</th><th>Verdier &amp; grenser</th><th>Standard</th></tr></thead><tbody><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Påkrevd</td><td data-cell-label=\"Verdier &amp; grenser\"><span class=\"card-cell-label\">Verdier &amp; grenser</span><div>meta/muse-voice-transcribe-1.0</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>object</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Påkrevd</td><td data-cell-label=\"Verdier &amp; grenser\"><span class=\"card-cell-label\">Verdier &amp; grenser</span></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Metodeparametere og livssyklus</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Avtale</th></tr></thead><tbody><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>content_type</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>application/json</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>required</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>model, input_audio</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_types</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>audio</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_conditions</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>Eksemplet leser den faktiske PCM WAV-filen din, som må ha innhold, koder alle filens byte som base64 og sender input_audio.format som wav.</td></tr></tbody></table></div><p>Livssyklus: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · Eksakt task_id fra en eksisterende medieoppføring du eier</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\">Priser</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.</p><dl data-price-conditions><dt>Hurtigmodus</dt><dd>Ikke angitt <span class=\"note-s\">Når hurtigmodus er valgt</span></dd><dt>Flex-modus</dt><dd>Ikke angitt <span class=\"note-s\">Når flex-modus er valgt</span></dd><dt>Maksimal resonneringsinnsats</dt><dd>Ikke angitt <span class=\"note-s\">Når justeringen «default» brukes for maksimal resonneringsinnsats</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot-satser</h4><h4>Priser etter konfigurasjon</h4><p class=\"note-s\">Knytt hver kostnad til de viste vilkårene. Bruk én sats for hvert sett med alternative konfigurasjoner.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfigurasjon</th><th>Prisplan</th><th>Faktureringsenhet</th><th>Kostnad</th></tr></thead><tbody><tr><th data-cell-label=\"Konfigurasjon\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasjon</span>Grunnpriser for tokener</th><td data-cell-label=\"Prisplan\"><span class=\"card-cell-label\">Prisplan</span>Grunnsats</td><td data-cell-label=\"Faktureringsenhet\"><span class=\"card-cell-label\">Faktureringsenhet</span>—</td><td data-cell-label=\"Kostnad\"><span class=\"card-cell-label\">Kostnad</span><div><span>Inndata · Inngående tokener</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div><div><span>Utdata · Utgående tokener</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div><div><span>Inndata · Lesing fra hurtigbuffer</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div><div><span>Inndata · Skriving til hurtigbuffer</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div><div><span>Inndata · Skriving til hurtigbuffer, 1 time</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div></td></tr><tr><th data-cell-label=\"Konfigurasjon\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasjon</span>lydsekund i inndata</th><td data-cell-label=\"Prisplan\"><span class=\"card-cell-label\">Prisplan</span>—</td><td data-cell-label=\"Faktureringsenhet\"><span class=\"card-cell-label\">Faktureringsenhet</span>per sekund inndatalyd</td><td data-cell-label=\"Kostnad\"><span class=\"card-cell-label\">Kostnad</span><div><span>Inndata · lydsekund i inndata</span> <b>$0.0001</b> <span class=\"price-unit\">per sekund inndatalyd</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. <a href=\"/docs/nb/billing/reserve/\">Slik fungerer reservasjon og oppgjør →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Eksempelforespørsler</h3><h4>Ailoot Ultra · Transkripsjon</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kodevarianter\"><button class=\"cg-tab\" id=\"model-code-1834-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1834-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · faktisk WAV-fil og hele det opprinnelige resultatet</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopier kode\"><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-1834-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1834-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;meta/muse-voice-transcribe-1.0&#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\">Motta og lagre resultater</h3><h4>Ailoot Ultra · Transkripsjon</h4><p class=\"note-s\">Hele den opprinnelige svarkroppen, statusen og videresendte svarhoder. Denne behandleren legger ikke til noen universell JSON-struktur, noe tekstfelt eller noen oppgaveinnpakning.</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>Behold alle ferdige resultater</h5><p class=\"note-s\">Behold alle fullstendige returnerte svar, filer og innholdsdeler.</p><p class=\"note-s\">Bevar hele svaret og svarhodene, alle faktiske utdata, de opprinnelige returnerte identifikatorene og alle bruksfeltene. Hent den opprinnelige operasjonen igjen uten å sende opprettelsesforespørselen på nytt.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Hvis det opprinnelige svaret må kontrolleres</h5><p class=\"note-s\">Behold den faktiske X-Client-Request-ID og hele svaret. Les de opprinnelige ressursene du eier, og deres eksakte signerte innholdsadresser; send aldri en usikker opprettelse på nytt.</p></div><details class=\"card-about\" data-output-fields><summary>Svarfelter</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Felt</th><th>Type</th></tr></thead><tbody><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">text (when present)</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span></td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">usage (when present)</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span></td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Feil og neste trinn</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Svar</th><th>Vilkår</th><th>Neste trinn</th></tr></thead><tbody><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>JSON-kroppen eller den eksplisitte kanoniske modell-ID-en er ugyldig.</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Behold svaret og korriger det angitte forespørselsfeltet.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>401 · <code>authentication_error</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Ailoot API-nøkkelen er ugyldig.</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Bruk den autoriserte Ailoot API-nøkkelen din.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>403 · <code>permission_error</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Nøkkelgruppen gir ikke tilgang til denne metoden.</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Behold de returnerte feildetaljene.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>404 · <code>not_found_error</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Den valgte metoden har ingen godkjent rute.</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Behold de returnerte feildetaljene.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Den godtatte tariffen kan ikke hente den nødvendige inndatamengden eller grensen.</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Behold svaret; bruk inndatarepresentasjonen som den godtatte tariffen krever.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>503 · <code></code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Nødvendig lagring, rute, metodepris eller reservasjon er utilgjengelig.</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Behold hele det opprinnelige svaret. En usikker reservasjon gir ikke tillatelse til å sende inn på nytt.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>502 · <code>server_error</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Det opprinnelige resultatet, forbruket eller oppgjøret må kontrolleres.</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Behold den faktiske forespørsels-ID-en og det opprinnelige svaret. Les den eksisterende oppføringen du eier; ikke send opprettelsen på nytt.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Aliaser</h3><h4>Modellaliaser</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=meta%2Fmuse-voice-transcribe-1.0&amp;route=Ultra&amp;caller=meta%2Fmuse-voice-transcribe-1.0&amp;fmt=transcriptions\"><code>meta/muse-voice-transcribe-1.0</code></a></span></p><h4>Aliaser for metodestier</h4><p class=\"note-s\">Bruk metodestiene som vises ovenfor.</p><h4>Tilknyttede anroper-ID-er</h4><p class=\"note-s\"><a href=\"#m=meta%2Fmuse-voice-transcribe-1.0&amp;route=Ultra&amp;caller=meta%2Fmuse-voice-transcribe-1.0&amp;fmt=transcriptions\"><code>meta/muse-voice-transcribe-1.0</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "meta/muse-voice-transcribe-1.0",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "meta/muse-voice-transcribe-1.0",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|meta%2Fmuse-voice-transcribe-1.0",
      "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-kroppen eller den eksplisitte kanoniske modell-ID-en er ugyldig.",
                "http_status": 400,
                "recovery": "Behold svaret og korriger det angitte forespørselsfeltet.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Ailoot API-nøkkelen er ugyldig.",
                "http_status": 401,
                "recovery": "Bruk den autoriserte Ailoot API-nøkkelen din.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Nøkkelgruppen gir ikke tilgang til denne metoden.",
                "http_status": 403,
                "recovery": "Behold de returnerte feildetaljene.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Den valgte metoden har ingen godkjent rute.",
                "http_status": 404,
                "recovery": "Behold de returnerte feildetaljene.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Den godtatte tariffen kan ikke hente den nødvendige inndatamengden eller grensen.",
                "http_status": 422,
                "recovery": "Behold svaret; bruk inndatarepresentasjonen som den godtatte tariffen krever.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Nødvendig lagring, rute, metodepris eller reservasjon er utilgjengelig.",
                "http_status": 503,
                "recovery": "Behold hele det opprinnelige svaret. En usikker reservasjon gir ikke tillatelse til å sende inn på nytt.",
                "type": null
              },
              {
                "code": null,
                "condition": "Det opprinnelige resultatet, forbruket eller oppgjøret må kontrolleres.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Behold den faktiske forespørsels-ID-en og det opprinnelige svaret. Les den eksisterende oppføringen du eier; ikke send opprettelsen på nytt.",
                "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": "Behold den faktiske X-Client-Request-ID og hele svaret. Les de opprinnelige ressursene du eier, og deres eksakte signerte innholdsadresser; send aldri en usikker opprettelse på nytt."
            },
            "outputs": {
              "all_results": "Bevar hele svaret og svarhodene, alle faktiske utdata, de opprinnelige returnerte identifikatorene og alle bruksfeltene. Hent den opprinnelige operasjonen igjen uten å sende opprettelsesforespørselen på nytt.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Hele den opprinnelige svarkroppen, statusen og videresendte svarhoder. Denne behandleren legger ikke til noen universell JSON-struktur, noe tekstfelt eller noen oppgaveinnpakning."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "meta/muse-voice-transcribe-1.0"
                ],
                "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": [
                    "meta/muse-voice-transcribe-1.0"
                  ],
                  "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": "meta/muse-voice-transcribe-1.0"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Eksemplet leser den faktiske PCM WAV-filen din, som må ha innhold, koder alle filens byte som base64 og sender input_audio.format som 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": "Eksakt task_id fra en eksisterende medieoppføring du eier",
                "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.0001",
                "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.0001",
                "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': 'meta/muse-voice-transcribe-1.0', '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": "Transkripsjon",
        "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.0001
          }
        },
        "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.0001",
                "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.0001",
                "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": "meta/muse-voice-transcribe-1.0",
        "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.0001",
            "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.0001",
            "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": "meta/muse-voice-transcribe-1.0",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "c2a46bc5f7b0e203fac5da249d914514222dbfe52e9c6d62979c2246e4259ab9",
    "input_html_sha256": "0a93b73eb7c6c15079a30abd6a6fc58f2746fe774d2c24410466654b4af2f1af",
    "private_audit_sha256": "5da137ce4a8fcd9348384c8fbc8062cf27a348fe13e64e1f373b36c16f699765",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/nb/meta-muse-voice-transcribe-1-0/",
    "description": "Muse Voice Transcribe 1.0 er Metas tale-til-tekst-modell for diktering, registrering av taleturer og transkripsjoner med talermerking. Den støtter språk- og ordforrådshint, veksling mellom språk og tidsangivelser per taletur, med egne arbeidsflyter for opptak og direktelyd.",
    "locale": "nb",
    "md_url": "https://ailoot.ai/models/nb/meta-muse-voice-transcribe-1-0/index.md",
    "title": "Meta: Muse Voice Transcribe 1.0 — Ailoot",
    "url": "https://ailoot.ai/models/nb/meta-muse-voice-transcribe-1-0/"
  },
  "rawModel": {
    "about": "Muse Voice Transcribe 1.0 er Metas modell for lydoppfatning, som transkriberer tale, registrerer ytringsgrenser og knytter taleturer til talere. Den tilhører Muse Spark-modellfamilien og kombinerer talegjenkjenning, talersegmentering og deteksjon av ytringsslutt i selve modellen. Resultatet er gjenkjent tekst med tids- og talerinformasjonen som er tilgjengelig i den valgte modusen.\n\nModellen behandler lyd i blokker på 80 millisekunder og avgjør når den skal fortsette å lytte eller sende ut tekst. Den adaptive forsinkelsen gjør at den kan vente på mer lyd når et ord er vanskeligere å tolke. Dette gir foreløpig tekst mens talen kommer inn, etterfulgt av ferdige transkripsjonsresultater. Behandle den foreløpige hypotesen og den ferdige taleturen som ulike stadier i lytteopplevelsen.\n\nVelg mellom tre moduser. Push-to-talk er standarden for én kontrollert ytring, for eksempel et talesøk eller et kort diktert avsnitt. Endpointing lar modellen oppdage grenser mellom taleturer og returnere én ferdig transkripsjon per registrerte segment. Diarization knytter den gjenkjente talen til taleretiketter og er beregnet på opptak med flere talere, fremfor raskest mulig turtaking med talekommandoer.\n\nFor et opptak returnerer filtranskripsjonsflyten en komplett transkripsjon i én forespørsel. Standardresultatet er JSON med transkripsjonen og lydens varighet, samt en turns-matrise i modusene endpointing og diarization. Hver taletur kan ha en identifikator, start og slutt i millisekunder og den gjenkjente teksten. Taleretiketter finnes i diarization-modus. Push-to-talk gir den komplette transkripsjonen uten registrerte taleturer i denne matrisen. Produsentens grensesnitt for opptaksfiler kan også returnere ren tekst eller en strøm av transkripsjonshendelser. Ren tekst beholder registrerte taleturer på separate linjer og kan inneholde taleretiketter; en hendelsesstrøm avsluttes etter den siste hendelsen uten et separat JSON-sammendrag. Strømmens delta-modus for delresultater returnerer teksttillegg, mens den avsluttende transkripsjonshendelsen inneholder hele ordlyden.\n\nKlargjør en RIFF/WAVE-fil med mono PCM-lyd med 16-bits heltallsverdier ved 16 eller 24 kHz. Modellens opprinnelige samplingsfrekvens er 24 kHz, og grensesnittet godtar også 16 kHz. Konverter andre beholdere eller kodinger til dette støttede WAV-formatet før du sender inn et opptak. Filtranskripsjonsprofilen tillater lyd på opptil 10 minutter og en samlet forespørselskropp på opptil 32 MB. Behold originalopptaket og eventuell konvertering knyttet til den returnerte transkripsjonen for senere kontroll ved lytting.\n\nArbeidsflyten for direktelyd bruker rå mono PCM med fortegn, 16-bits verdier og little-endian-byteorden, med lyd ved 16 eller 24 kHz sendt omtrent i sanntid. Det dokumenterte øktvinduet er 60 minutter. Meta beskriver opprinnelig lydinput på over én time; de dokumenterte grensene for filer og direkteøkter er fortsatt separate grensesnittgrenser. Velg fil- eller direkteflyten ut fra om lyden allerede er ferdig eller fortsatt tas opp, og knytt resultater fra separate økter til sine egne inputsegmenter.\n\nMuse Voice Transcribe er trent på mer enn 70 språk, mens det dokumenterte gjenkjenningsgrensesnittet oppgir 25 støttede språk. Disse omfatter engelsk, fransk, tysk, spansk, arabisk, mandarin, hindi, japansk, koreansk, italiensk og portugisisk. Den gjenkjenner språkveksling innenfor og mellom setninger. Et språkhint kan angi språkene som forventes i lyden, men styrer gjenkjenningen uten å tvinge transkripsjonen over i ett språk.\n\nOrdforrådshint hjelper med produktbegreper, akronymer, navn eller steder som er viktige i et opptak. Oppgi de faktiske ordene og stavemåtene du forventer å høre. Nøkkelordlisten påvirker gjenkjenningen uten å garantere en bestemt stavemåte, så kontroller avgjørende begreper mot lyden. Språkhint og nøkkelord velges ved starten av transkripsjonen; hold dem relevante for opptaket fremfor å endre betydningen deres mens en økt pågår.\n\nModellen støtter talersegmentering for samtaler med mer enn 20 talere. Etiketter som A og B identifiserer talere innenfor én transkripsjon. De er ikke bekreftede navn og fastslår ikke at en etikett viser til samme person i en annen økt. Ved en analyse av et originalt møte kan du be om talermerkede taleturer, beholde opptaket og bruke etikettene til å organisere diskusjonen før faktiske deltakernavn knyttes til dem gjennom den omkringliggende arbeidsflyten.\n\nForeløpige direktetranskripsjoner kan endre seg når mer tale kommer inn. I kumulativ modus erstatter hvert delresultat den foregående hypotesen fremfor å legge til enda en kopi av den. En registrert taleslutt markerer en grense, mens resultatet for en ferdig taletur gir den endelige teksten og kan avvike fra siste delresultat. Knytt overlappende taleturer til sine taleturidentifikatorer, og ta imot de ferdige resultatene før du behandler en transkripsjon som avsluttet. Når direkteinput opphører, signaliser slutten på input og fortsett å motta til produsenten har sendt ut alle ventende resultater. En umiddelbar lukking av forbindelsen kan forkaste disse resultatene; en registrert talegrense avslutter en taletur, fremfor hele økten.\n\nTidsangivelsene gjelder taleturer. Denne profilen gir ikke tidsstempler for enkeltord eller konfidensverdier, og fremdrift i lydbehandlingen er ikke et tidsstempel for et bestemt ord. Deteksjon av lydhendelser, følelsesdeteksjon og omformatering av transkripsjoner ligger også utenfor den dokumenterte resultatprofilen. Bruk de returnerte taleturintervallene til en talertidslinje eller kontroll på segmentnivå, og behold de gjenkjente ordene dersom et separat redigeringstrinn senere lager ryddigere notater.\n\nNyttige resultater omfatter et ferdig diktert avsnitt, en transkripsjon av et talesøk, en talermerket samtale eller en tidslinje over ytringer. Sammenlign navn, tall og faguttrykk med originalopptaket, bevar koblingene til modus og tidsangivelser, og hold de komplette taleturene tilgjengelige for kontroll. Transkripsjonen fastslår hva som ble gjenkjent i lyden; å besvare et muntlig spørsmål, oversette det eller gjøre det om til møtenotater hører til et senere trinn i applikasjonen.",
    "alias_of": null,
    "aliases": [],
    "author": "Meta",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.0001",
            "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.0001",
            "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": "Fullstendige priser for konfigurasjonen finnes i detaljene."
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "meta/muse-voice-transcribe-1.0",
    "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-kroppen eller den eksplisitte kanoniske modell-ID-en er ugyldig.",
                "http_status": 400,
                "recovery": "Behold svaret og korriger det angitte forespørselsfeltet.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Ailoot API-nøkkelen er ugyldig.",
                "http_status": 401,
                "recovery": "Bruk den autoriserte Ailoot API-nøkkelen din.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Nøkkelgruppen gir ikke tilgang til denne metoden.",
                "http_status": 403,
                "recovery": "Behold de returnerte feildetaljene.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Den valgte metoden har ingen godkjent rute.",
                "http_status": 404,
                "recovery": "Behold de returnerte feildetaljene.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Den godtatte tariffen kan ikke hente den nødvendige inndatamengden eller grensen.",
                "http_status": 422,
                "recovery": "Behold svaret; bruk inndatarepresentasjonen som den godtatte tariffen krever.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Nødvendig lagring, rute, metodepris eller reservasjon er utilgjengelig.",
                "http_status": 503,
                "recovery": "Behold hele det opprinnelige svaret. En usikker reservasjon gir ikke tillatelse til å sende inn på nytt.",
                "type": null
              },
              {
                "code": null,
                "condition": "Det opprinnelige resultatet, forbruket eller oppgjøret må kontrolleres.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Behold den faktiske forespørsels-ID-en og det opprinnelige svaret. Les den eksisterende oppføringen du eier; ikke send opprettelsen på nytt.",
                "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": "Behold den faktiske X-Client-Request-ID og hele svaret. Les de opprinnelige ressursene du eier, og deres eksakte signerte innholdsadresser; send aldri en usikker opprettelse på nytt."
            },
            "outputs": {
              "all_results": "Bevar hele svaret og svarhodene, alle faktiske utdata, de opprinnelige returnerte identifikatorene og alle bruksfeltene. Hent den opprinnelige operasjonen igjen uten å sende opprettelsesforespørselen på nytt.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Hele den opprinnelige svarkroppen, statusen og videresendte svarhoder. Denne behandleren legger ikke til noen universell JSON-struktur, noe tekstfelt eller noen oppgaveinnpakning."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "meta/muse-voice-transcribe-1.0"
                ],
                "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": [
                    "meta/muse-voice-transcribe-1.0"
                  ],
                  "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": "meta/muse-voice-transcribe-1.0"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Eksemplet leser den faktiske PCM WAV-filen din, som må ha innhold, koder alle filens byte som base64 og sender input_audio.format som 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": "Eksakt task_id fra en eksisterende medieoppføring du eier",
                "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.0001",
                "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.0001",
                "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': 'meta/muse-voice-transcribe-1.0', '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": "Transkripsjon",
        "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.0001
          }
        },
        "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.0001",
                "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.0001",
                "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": "meta/muse-voice-transcribe-1.0",
        "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.0001",
            "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.0001",
            "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": "meta/muse-voice-transcribe-1.0",
        "request_model_id": "meta/muse-voice-transcribe-1.0",
        "route_label": "Ultra"
      }
    ],
    "name": "Meta: Muse Voice Transcribe 1.0",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "Muse Voice Transcribe 1.0 er Metas tale-til-tekst-modell for diktering, registrering av taleturer og transkripsjoner med talermerking. Den støtter språk- og ordforrådshint, veksling mellom språk og tidsangivelser per taletur, med egne arbeidsflyter for opptak og direktelyd."
  },
  "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": "Muse Voice Transcribe 1.0 er Metas tale-til-tekst-modell for diktering, registrering av taleturer og transkripsjoner med talermerking. Den støtter språk- og ordforrådshint, veksling mellom språk og tidsangivelser per taletur, med egne arbeidsflyter for opptak og direktelyd.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "7047e734cce5454a761956692b62f94c2b3ce45ebdd08d6e25240ef815b36288",
    "renderer_sha256": "c8cb5a92c10b47373d294dee7465d66796cd4710c6626fd81459dc0625fc6d26"
  },
  "sourceRevision": "8c88996c16da3d7c0d7e68da8ba082bd94826d6fdb15ce34571cb917dec9729d"
}
