Inference APIs

Measured accuracy

ModelWord error rateCharacter error rateClips with no errorsEmpty transcriptsSpeed
Whisper Large v3
openai/whisper-large-v3
9.7%3.0%7 of 300 of 300.06× real time

Good. Usable with light review. Expect to correct a word here and there, mostly names and numbers. The clips are clean, single-speaker read speech, so treat this as a best case for your own recordings. How we measured, and all 83 languages.

What a transcript looks like

The clip with the median error rate from the test, reference text against what the API returned.

SpokenASUS Eee-PC, som tidligere har blitt lansert over hele verden for sine kostnadseffektive og funksjonalistiske egenskaper, ble et hett tema under IT-måneden i Taipei 2007.
Whisper Large v3Asus iPC, som tidligere har blitt lansert over hele verden for sine kostnadseffektive og funksjonalistiske egenskaper, ble et hett tema under IT-måneden i Taipei 2007.

Language detection

Send language=no. Of 10 clips sent without it, 9 were identified as Norwegian; the others were labelled English (1). When detection is wrong, Whisper writes the transcript in the language it guessed.

Quickstart

The request is the OpenAI transcription request with a different base URL. language is optional in the API but, as shown above, not optional in practice for Norwegian.

cURL
curl https://api.inferenceapis.com/v1/audio/transcriptions \
  -H "Authorization: Bearer $INFERENCE_API_KEY" \
  -F "model=openai/whisper-large-v3" \
  -F "language=no" \
  -F "file=@recording.mp3" \
  -F "response_format=verbose_json"
Python · openai SDK
import os
from openai import OpenAI

client = OpenAI(base_url="https://api.inferenceapis.com/v1", api_key=os.environ["INFERENCE_API_KEY"])
with open("recording.mp3", "rb") as f:
    r = client.audio.transcriptions.create(model="openai/whisper-large-v3", file=f, language="no", response_format="verbose_json")
print(r.text)

Subtitles and timestamps

response_format=srt or vtt returns a subtitle file with cues of up to two lines, broken at sentence ends and pauses. verbose_json with timestamp_granularities[]=word returns a start and end time for every word if you want to build your own.

Cost

$0.002 per minute of audio on either model: $0.12 for an hour, $12 for a hundred hours. Duration is measured from the file you upload. There is no daily cap on minutes and no subscription; enough to run your own Norwegian test.

Notes for Norwegian

  • no covers Bokmål. Nynorsk has its own code, nn.

FAQ

How accurate is Whisper for Norwegian?

On 30 clean read-speech clips it made 9.7% word errors, about one word in 10. Usable with light review. Expect to correct a word here and there, mostly names and numbers. Real recordings with noise, accents or several speakers will score worse.

Does language auto-detection work for Norwegian?

Mostly. Of 10 clips sent without a language, 9 were identified as Norwegian; the rest were labelled English (1). A wrong label means the transcript is written in the wrong language, so always send language=no.

Can it translate Norwegian speech to English?

The API returns Norwegian text. For English, transcribe first and translate the text with a chat model on the same key.

Related languages: Swedish (8.8%) · Danish (15%) · Nynorsk