Code for this episode →
Gemini Live API docs →
Agent Development Kit (ADK) docs →
In this video, we built a real-time voice agent you can talk over with Google ADK. Not a speech-to-text pipeline — one open connection, audio streaming both directions at the same time.
Three parts:
* The architecture (browser, WebSocket, backend, Gemini Live, and why live voice is a phone call and not a walkie-talkie)
* The ADK building blocks (describe an Agent, hand it to a Runner, keep the Session in memory)
* The live loop, where the LiveRequestQueue decouples the two audio directions so neither one blocks the other.
Plus the two things people get wrong: send_realtime() for continuous streams vs send_content() for complete input, and why you keep sending audio even when nobody’s talking.
Chapters:
0:00 – The agent we’re building
0:25 – What you’ll learn (three parts)
0:55 – Why the STT → LLM → TTS pipeline feels broken
1:23 – A phone call, not a walkie-talkie
1:49 – The architecture: browser, WebSocket, backend, Gemini Live
2:19 – The ADK Agent: model, personality, tools
3:00 – The Runner: who actually runs the live call
3:13 – The Session: why live voice keeps it in memory
4:10 – The problem: two audio streams, neither can block
4:34 – LiveRequestQueue: the sushi belt
5:01 – send_realtime: streaming mic audio
5:33 – Always send — even the silence
6:01 – send_content: discrete input, and the rule of thumb
6:30 – run_live: audio, captions, tool calls, interrupted
7:02 – Trace one sentence, end to end
7:55 – The in-memory session gotcha
8:20 – Recap: architecture, building blocks, live loop
8:54 – Next episode: giving the agent tools
More resources:
Roadmap preview →
Last episode: the raw Gemini Live API. Next episode: real tools, so she acts instead of just talking. →
Follow Annie online:
LinkedIn →
X →
Watch more The Omni App →
🔔 Subscribe to Google Cloud Tech →
#GeminiLiveAPI #VoiceAI #AIAgents #MULTIMODAL
Speaker: Annie Wang
Products Mentioned: Gemini Live API, Agent Development Kit
コメント