Inference APIs

Measured accuracy

ModelWord error rateCharacter error rateClips with no errorsEmpty transcriptsSpeed
Whisper Large v3
openai/whisper-large-v3
3.4%1.1%18 of 300 of 300.053× real time
Parakeet TDT 0.6B v3
nvidia/parakeet-tdt-0.6b-v3
6.3%2.7%10 of 300 of 300.043× real time

Excellent. Production quality. Transcripts can be used as they are for notes, search and subtitles. 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.

SpokenBald nach dem Ausbruch von Kampfhandlungen initiierte Großbritannien eine Seeblockade gegen Deutschland.
Whisper Large v3Bald nach dem Ausbruch von Kampfhandlungen initiierte Großbritannien eine Seeblockade gegen Deutschland.
Parakeet (its median clip)Spoken: Ganze 20 Prozent des Wassers, das über die Flüsse des Planeten in die Ozeane fließt, kommt aus dem Amazonas.
Gan 20 Prozent des Wassers, das über die Flüsse des Planeten in die Ozeane fließt, kommt aus dem Amazonas.

Language detection

Send language=de. Of 10 clips sent without it, only 8 were identified as German; the others were labelled English (1), Romanian (1). When detection is wrong, Whisper writes the transcript in the language it guessed.

Which model for German

Whisper Large v3 was more accurate on these clips (3.4% against 6.3%). Parakeet is faster, which matters mainly on long recordings. Both cost the same. Side by side.

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 German.

cURL
curl https://api.inferenceapis.com/v1/audio/transcriptions \
  -H "Authorization: Bearer $INFERENCE_API_KEY" \
  -F "model=openai/whisper-large-v3" \
  -F "language=de" \
  -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="de", 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 German test.

Notes for German

  • Compound nouns and numbers are transcribed as spoken; post-process if you need digits.

FAQ

How accurate is Whisper for German?

On 30 clean read-speech clips it made 3.4% word errors, about one word in 30. Production quality. Transcripts can be used as they are for notes, search and subtitles. Real recordings with noise, accents or several speakers will score worse.

Does language auto-detection work for German?

Not reliably. Of 10 clips sent without a language, 8 were identified as German; the rest were labelled English (1), Romanian (1). A wrong label means the transcript is written in the wrong language, so always send language=de.

Whisper or Parakeet for German?

On the same clips Whisper Large v3 scored 3.4% and Parakeet 6.3%. Whisper was more accurate here; Parakeet is faster, which matters mainly for long recordings. Both cost $0.002 per minute.

Can it translate German speech to English?

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

Related languages: Dutch (7.1%) · Luxembourgish (82%) · Danish (15%)