GPT-Live-1 thumbnail

OpenAI's New Voice Model Doesn't Stop Talking to Think

GPT-Live-1 running on LiveKit: a full-duplex voice agent that listens and speaks at the same time over one always-open audio stream — with reasoning and tool calls handed to a separate backend model. This deep dive walks the demo, the architecture, and the code.

GPT-Live-1 on LiveKit — video thumbnail
🎬 Source: LiveKit ⏱️ 3:56 📅 Sep 10, 2026
GPT-Live-1 Full Duplex Voice Agents LiveKit GPT-6

🎙️ What Full Duplex Actually Buys You

0:00

The video opens on a demo: a caller to "Layover Airlines" missed their connection to Denver, and the agent pulls up the next flight, checks on the bags, and finds an aisle seat — all while handling new requests mid-lookup. The agent is OpenAI's newest voice model, GPT-Live-1, running on LiveKit with support from day one.

What makes it different is full duplex. Most voice agents take turns: your speech gets transcribed, a language model reads it and answers, answers get spoken back — with a step in the middle that decides when you've stopped talking so the agent knows when to start. GPT-Live-1 doesn't work that way. It keeps one audio stream open in both directions for the entire call: it hears you while it's speaking, and it decides on its own when to reply and when to keep listening.

The payoff is concurrency. When the agent starts a lookup, it keeps listening and keeps talking while that lookup runs. If you ask for something else during the wait, that request gets handled right then, on its own — and when the lookup comes back, the agent folds the answer into the next thing it says.

🧠 The Voice Layer vs. the Brain

1:36

So where does the thinking happen? GPT-Live-1 is only the voice layer: full-duplex audio in and out, the persona, and the turn-taking. The reasoning and tool calls go to a separate model behind it — a "responses" model that you pick with a single option on the GPT-Live model called responses options.

This is a clean separation of concerns. The voice model hands over anything that needs a decision; your function tools still run in your own process, exactly as they do with any other model. The only thing that changes is which model decides to call them. The demo drives the point home with a deliberately slow Python function tool — a flight search that takes a while to return — to show that the conversation keeps flowing while the tool runs.

🎛️ Astra & Luna: Pick Your Reasoning Model

2:09

You choose what goes in that reasoning slot. OpenAI offers GPT-6 Astra for the most demanding conversations, and GPT-6 Luna for fast interactions at scale. Or you can point it at your own model or your own harness — including open-source ones.

Backend modelStrengths
GPT-6 AstraMost demanding conversations — maximum capability
GPT-6 LunaFast interactions at scale — speed and throughput
Your own model / harnessFull control, including open-source models

LiveKit handles the plumbing: AgentSession takes the full-duplex model in the same llm argument a regular model would go in, and wraps it so everything downstream — your transcripts, your metrics, everything — sees exactly what it would normally see.

💻 The Code: GPTLiveModel + AgentSession

2:38

The code is startlingly small. You build a GPTLiveModel and pass it to AgentSession as the llm — and that's essentially all of it. The full-duplex model handles speech in, speech out, and turn-taking, and this one argument covers all three.

Two sets of instructions carry different jobs. The instructions on the agent are the voice persona — how the model talks to you (in the demo, the voice is set to "Marin"). The instructions inside responses options go to the backend model, telling it how to use your tools. The tools themselves are ordinary LiveKit function tools: decorate a method, start your backend call, return a string. Nothing in the tool knows it's talking to a duplex model — but while the search runs, the agent keeps listening and talking the entire time.

The rest is standard. Define the session entry point, start the session with your agent and room, run the app. If you've built LiveKit agents before, it's all familiar — the duplex model is a drop-in swap.

⚡ Why It Matters

3:14

Full duplex removes the dead air that turn-based voice agents are prone to. Because the model doesn't wait for a "you've stopped talking" signal before it thinks, and because reasoning happens in a separate model, the voice layer can keep the conversation moving even while heavy work is in flight.

The architectural takeaway is bigger than one model: separating the realtime voice layer from the reasoning layer means you get latency-independent conversation — the voice never has to "stop talking to think," because it was never doing the thinking in the first place. LiveKit's day-one support and its pluggable backend (Astra, Luna, or your own harness) make that pattern something any voice-agent builder can adopt today. The docs are linked below — go build one.

✅ Key Takeaways

  1. Full duplex = one always-open stream. GPT-Live-1 hears you while it speaks and decides on its own when to reply, instead of waiting for a turn-detection signal.
  2. The voice model doesn't reason. GPT-Live-1 is audio in/out, persona, and turn-taking; reasoning and tool calls run in a separate backend model.
  3. You pick the brain. GPT-6 Astra for demanding conversations, GPT-6 Luna for speed at scale, or your own model/harness (open-source included).
  4. Tools are unchanged. Ordinary LiveKit function tools run in your process; the only difference is which model decides to call them.
  5. It's a drop-in swap. Build a GPTLiveModel, pass it to AgentSession as llm — one argument covers speech in, speech out, and turn-taking.
  6. Two instruction sets. Agent instructions = voice persona; responses-options instructions = how the backend model uses your tools.

🔗 Resources & Links

Model and API names (GPT-Live-1, GPT-6 Astra, GPT-6 Luna, GPTLiveModel, AgentSession, responses options) are taken from LiveKit's own video and description, and cross-checked against the LiveKit GPT-Live plugin docs.

🕒 Timestamp Index

0:00The full-duplex airline rebooking demo
1:36The voice layer vs. the reasoning model
2:09Astra, Luna, and your own model
2:38The code: GPTLiveModel + AgentSession
3:14Tools, session entry point, and wrap-up
☰ View all