
OpenAI just shipped ChatGPT Voice to the desktop app, rolling it out globally on macOS and Windows for Plus, Pro, Business, Edu, and Enterprise plans. The headline feature is not just voice chat. It is voice-controlled computer use and multi-agent orchestration, all driven by a single spoken command.
The engine underneath: GPT-Live
This is powered by GPT-Live, the voice model architecture OpenAI launched on July 8. Understanding what GPT-Live actually is matters here, because it is a genuine architectural departure from what came before.
Previous voice systems were half-duplex: the model waited for you to stop talking, then responded. Advanced Voice Mode processed and generated audio within a single model, but still operated through discrete turns. The model had to wait for the user to stop speaking before responding, and because turn detection was based on silence, even a brief pause or background noise could be mistaken for the end of a turn.
Where Advanced Voice Mode was turn-based, processing one side of a conversation at a time, GPT-Live runs on a full-duplex architecture that processes input and output simultaneously. Where Advanced Voice Mode was a single model handling everything, GPT-Live is a two-layer system: a continuous interaction layer that manages the conversation, and a delegation layer that quietly hands complex tasks to GPT-5.5 in the background while keeping you talking.
The system makes decisions multiple times per second about whether to speak, listen, pause, interrupt, or invoke tools, incorporating natural conversational cues like "mhmm" and "got it" to signal engagement. The result is something that feels less like querying a model and more like talking to a colleague who is already pulling up the file while you finish your sentence.
Don't miss what's next in AI
Join 300,000+ engineers and researchers who get the signal, not the noise.
- Full access to in-depth AI research breakdowns
- Be the first to know what's trending before it hits mainstream
- Daily curated papers, repos, and industry moves
