client.asr.transcribe() uploads a complete audio file to luchs-1 and
returns the transcript. See Speech to Text
for the full wire contract, supported language, audio limits, and the
WebSocket streaming protocol — the SDK does not yet wrap streaming.
Transcribe a file
model defaults to "luchs-1" and does not need to be passed. Passing any
other value raises ValidationError client-side, before any network call:
Optional arguments
language is forwarded but currently has no effect on recognition — see
Supported language.
Migrating from qwen3-asr
model="qwen3-asr" (or any other prior identifier) now raises
ValidationError. Drop the argument, or pass model="luchs-1" explicitly.
Any code that read the previous default off the response must also account
for result.model now always being "luchs-1"; use result.model_revision
if you need the underlying artifact identity. This changed in the next major
release of the Python SDK.
Streaming
The Python SDK does not currently include a WebSocket streaming client for
speech-to-text. Use the raw WebSocket protocol in
Speech to Text
directly for live transcription.Last modified on September 13, 2026