/v1/audio/transcriptions gets diarized output without changing its request shape.
Setup
Sign in to Baseten with Truss, then install the OpenAI SDK.Sign in to Baseten
Install the OpenAI SDK
Hardware
H100
Engine
SGLang (46235435997d1fa9… build)
Concurrency
128
Write the config
Create and move into the project directory:config.yaml and paste the following:
config.yaml
/v1/audio/transcriptions, the same OpenAI-compatible route a plain Whisper deployment serves, so existing clients keep their request shape. Pass response_format=verbose_json to get parsed speaker segments instead of a flat transcript, and raise max_new_tokens for long recordings. Weights are pinned to a Hugging Face revision and the runtime image to a digest, so a rebuild reproduces the same engine.
Flags
Thestart_command passes these flags to the engine. Each one controls a runtime or serving behavior:
Deploy
Push the config to Baseten:truss push prints your model ID (abc1d2ef in the example). The examples below use it wherever you see {model_id}, and read your API key from the BASETEN_API_KEY environment variable.
Call the model
Your deployment serves an OpenAI-compatible chat completions API at/v1/audio/transcriptions that accepts audio inputs.
Send audio as an audio_url content item on a chat message. The model returns the transcription as the assistant message content.
- Python
- cURL
main.py
Next steps
Call your model
Endpoint anatomy, authentication, and sync versus async inference
Autoscaling
Scale replicas with traffic, including scale to zero