nanosamur.ai now supports Qwen3-ASR as a second realtime transcription provider alongside Faster-Whisper. An operator can make either model available for a session—or select both and watch their results arrive side by side.

One audio stream, independent tracks

SamuraiBFF accepts the session audio once and fans it out to each selected realtime provider. Every model returns its own track-labelled events through the same public contract. Their hypotheses are not blended, and one model never silently overwrites the other.

The browser keeps those tracks separate too. That makes a direct comparison useful: both providers hear exactly the same conversation, at the same time, while their latency, revisions, strengths, and mistakes remain visible.

nanosamur.ai displaying Faster-Whisper and Qwen realtime transcription tracks side by side
Faster-Whisper and Qwen processing the same live session in independently labelled panels.

Why run models in parallel?

A parallel track is useful when introducing a new model without replacing an established path. Teams can compare accuracy and latency on the same workload, evaluate different language or domain behaviour, and choose the provider set that fits the session.

The tracks are isolated operationally as well. Each provider has its own bounded queue, gRPC stream, capability handshake, cancellation, and completion state. A slow or failed track can be cancelled without closing its healthy peers or the browser session.

The architecture

Qwen is a peer realtime service, not an extra hop behind Faster-Whisper. Both implement the same RealtimeASR interface. The existing Kafka path still receives the audio once, so refinement, recording, and finalization are not duplicated per model.

Architecture diagram showing one client audio stream fanned out by SamuraiBFF to independent Faster-Whisper and Qwen realtime providers, with labelled results returned to the client and audio published once for asynchronous processing
A static rendering of the Mermaid architecture diagram from the nanosamurai documentation.

Try the Qwen track

The base Compose stack starts Faster-Whisper. The checked-in Qwen override adds Qwen3-ASR as a peer:

docker compose -f docker-compose.yml -f docker-compose.qwen.yml pull
docker compose -f docker-compose.yml -f docker-compose.qwen.yml up -d

Both tracks then appear in the session settings, where an operator can select Faster-Whisper, Qwen, or both. Concurrent providers consume GPU memory and compute independently, so capacity should be validated on the target hardware.

See the models in the arena.

Our next post compares Qwen and Faster-Whisper on the same minute-long medical transcription: Model Arena - Qwen3-ASR vs faster-whisper in real time.

For implementation and evaluator details, read the nanosamurai overview, the Qwen evaluator guide, and Xamurai’s realtime provider architecture.