Realtime Voice Interfaces
Speech-to-speech models vs. chained STT-LLM-TTS pipelines, latency budgets, turn-taking and interruptions, and when voice is the right interface at all.
A realtime voice interface is the most demanding multimodal feature you can build. The user talks, the product answers out loud, and the whole exchange has to feel like a conversation rather than a walkie-talkie. That means replies within about a second, sensible behavior when someone pauses mid-thought, and an assistant that stops talking the moment it's interrupted. Get those right and voice feels effortless. Get them wrong and it feels like the worst phone menu you've ever used.
In this lesson you'll decide whether voice belongs in your product at all, compare speech-to-speech models with chained pipelines, connect a browser to a realtime model over WebRTC, and learn how to manage the latency, turn-taking, cost, and guardrails that make in-app voice work.
When voice is the right interface
Voice is exciting to demo and easy to misapply. Before building, check your use case against what voice is actually good and bad at.
Voice works well when:
- Hands or eyes are busy. A technician mid-repair, someone cooking, a driver. The alternative is no interaction at all.
- Typing is a barrier. Users with motor or vision impairments, low literacy, or a small screen and a long question.
- The content is conversational. Talking through a problem, practicing a language, or a back-and-forth where tone matters.
- Speaking is faster than navigating. "Move my Thursday appointment to next week" beats four screens of date pickers.
Voice works badly when:
- The output is dense or comparative. Nobody can hold five pricing tiers in their head from audio. Tables, lists, and code belong on screen.
- Input must be exact. Email addresses, serial numbers, and passwords are painful to dictate and risky to mishear.
- The setting is public or shared. Open offices, trains, and anything private the user doesn't want overheard.
- Users want to skim. You can scan a paragraph in two seconds; listening to it takes twenty.
A useful test: would a phone call be better than a form for this task? If not, voice is probably a novelty for your feature. And even when the answer is yes, ship voice as a mode alongside text, not a replacement. Users switch based on where they are, and some can't use voice at all.
For this lesson, Deskmate is adding a "Talk to us" button to its customer-facing help center. Customers ask questions out loud, the assistant answers from help articles, and anything it can't handle gets handed to a human agent. It's a good fit: customers often arrive frustrated, describing a problem is easier out loud, and the answers are short.