Inference APIs

Measured accuracy

ModelWord error rateCharacter error rateClips with no errorsEmpty transcriptsSpeed
Whisper Large v3
openai/whisper-large-v3
20%4.5%5 of 300 of 300.076× real time
Parakeet TDT 0.6B v3
nvidia/parakeet-tdt-0.6b-v3
26%7.0%3 of 300 of 300.047× real time

Fair. Gets the content across, but needs a human pass before it is published or quoted. 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.

SpokenTīģera rēciens nav līdzīgs lauvas pilnās balss rēcienam, bet drīzāk kā ņurdošu, izkliegtu vārdu teikums.
Whisper Large v3Tīņa ar rēcienas nav līdzīgs lauvas pilnās balss rēcienam, bet drīzāk kā ņurdošu izkliegtu vārdu teikums.
Parakeet (its median clip)Spoken: Raugieties, lai audums nekļūst pārāk karsts (kā rezultātā tas var sarauties vai galējās situācijās pat sasvilt).
Raugieties, lai aums nekļūst pārāk karsts, kā rezultātā tas varauties vai galējās situācijās pat sasvilkt.

Language detection

All 10 clips we sent without a language field were identified as Latvian. Auto-detection is safe here; sending language=lv still skips the detection step.

Which model for Latvian

Whisper Large v3 was more accurate on these clips (20% against 26%). 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.

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

FAQ

How accurate is Whisper for Latvian?

On 30 clean read-speech clips it made 20% word errors, about one word in 5. Gets the content across, but needs a human pass before it is published or quoted. Real recordings with noise, accents or several speakers will score worse.

Does language auto-detection work for Latvian?

In our test, yes: all 10 clips sent without a language were identified as Latvian. Sending language=lv still saves the detection step on every request.

Whisper or Parakeet for Latvian?

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

Can it translate Latvian speech to English?

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

Related languages: Lithuanian (28%) · Estonian (17%)