Simon Willison has published a browser interface for Google’s new Gemini Live speech models, including voice selection, a system prompt, interruptions and downloadable transcripts. The implementation uses no libraries: a WebSocket connection carries the conversation, while the Web Audio API handles microphone capture and playback. He built it with a coding model and published the implementation and development conversation. September 15 account, source code
The attraction is how little machinery sits between the user and the model. You can inspect what happens when someone interrupts, how audio is queued, and whether the transcript includes words that were generated but never played. Those details determine whether a voice interface feels conversational or merely talks quickly.
This is an operator’s working demonstration, not a latency benchmark or independent evaluation. I haven’t run it. But it is a good compact artifact for understanding a capability that polished launch videos tend to make look indivisible.
One small security read: Datasette’s new advisory describes a permissions bypass caused by a trailing newline in a table name. Authorization and SQL execution could disagree about which table the name referred to. The fix replaces a permissive regular-expression match with a full-string match; patched releases are 0.65.5 and 1.0a40. The reproductions and regression tests are unusually clear. Maintainer’s advisory