Google Releases Gemini 3.8 Live Extended Thinking Audio-to-Audio Model
Google launched gemini-3.8-live-extended-thinking for live voice sessions requiring deep reasoning and asynchronous tool calling. The model streams low-latency audio while managing background computation, updating client lifecycle state to decouple turn completion from model idle status.

Impact: High
Why it matters
You can now run complex multi-step reasoning and tool orchestration during live voice calls without freezing audio streams.
TL;DR
- 01Audit voice client state machines: `turnComplete: true` no longer marks an idle connection.
- 02Configure async function declarations with `behavior: NON_BLOCKING` to avoid runtime API crashes.
- 03Use `thinking_level: low` for high-throughput operational bots to save token latency.
Key facts
- Model ID
- gemini-3.8-live-extended-thinking
- Function Calling Mode
- Asynchronous non-blocking only
- Thinking Levels
- low, medium, high (MINIMAL unsupported)
- Proactive Audio
- Permanently enabled
Asynchronous Reasoning Protocol
Google has introduced gemini-3.8-live-extended-thinking, a high-reasoning audio-to-audio model designed for complex problem solving in live voice interactions. Unlike standard Live API endpoints, client state machines cannot assume turnComplete: true signals completion. The server may continue background reasoning or trigger tool calls while streaming audio.
State Management with interaction_status
Applications must inspect the interaction_status string on every server frame:
IN_PROGRESS: The server is actively reasoning, calling tools, or awaiting async callbacks.IDLE: The session has completed all processing and awaits user voice input.
Function Calling Rules and Deliberation
The model mandates non-blocking asynchronous function calls (behavior: NON_BLOCKING). Passing synchronous blocking configurations triggers an explicit error. Deliberation is configured via thinking_config using thinking_level: low, medium, or high (MINIMAL is not supported). Setting turn_complete=true via client input immediately interrupts the model's voice stream.
Try it in 2 minutes
{
"model": "models/gemini-3.8-live-extended-thinking",
"generationConfig": {
"thinking_config": {
"thinking_level": "medium"
}
},
"tools": [{
"function_declarations": [{
"name": "lookup_order",
"behavior": "NON_BLOCKING"
}]
}]
}json
✓ When to use
- Building live voice support agents that query customer databases while talking.
- Hands-free diagnostic tools that execute terminal commands while streaming spoken feedback.
- Real-time speech interfaces requiring deep reasoning before delivering final answers.
✕ When NOT to use
- Simple single-turn voice transcriptions with static text responses.
- Text-only chat completions where standard Gemini 3.8 Flash yields lower overhead.
- Legacy client architectures reliant on synchronous, blocking tool call responses.
What to do today
- Update Live API WebSocket handlers to parse `interaction_status` before unblocking the audio pipeline.
- Refactor synchronous function execution into background worker queues with async callbacks.
- Verify client barge-in handling sends `turn_complete=true` to enforce instant audio cancellation.
What the community says
“Confirmed that when you interrupt it, it shuts up immediately. Ya know, like a tool that is useful instead of a friend that burns tokens for no reason.”
Sources