GoogleStephen AllenTutorial
How to Evaluate Live & Voice Agents in ADK
Summary
ADK now supports native evaluation of live, voice-based agents, addressing regressions in tool use, context continuity, turn-taking, timing, and recovery that may not appear in demos. The walkthrough builds a graph-based workflow of three single-purpose agents running gemini-live-2.5-flash-native-audio, with a mocked date-of-birth tool between stages and session state carried across the open audio stream. It shows how to author scenario-based or fixed conversations, synthesize simulated user turns with Gemini TTS, configure live mode and rubric-based multi-turn trajectory judges, and run evaluations from the CLI or AgentEvaluator. ADK Web then reconstructs the audio as transcripts with playable clips, while configurable voices, languages, invocation limits, thresholds, and per-turn metrics support repeatable debugging and CI/CD regression checks.
Context
Live agents need repeatable evidence that they handle real spoken conversations across turns, including timing, recovery, tool calls, context continuity, and interjections. Behavior can change after prompt or model iterations, making demo-based confidence insufficient.
Approach / What changed
The guide constructs a three-agent live workflow, defines scenario-based and fixed eval cases, enables audio simulation with an LLM user and Gemini TTS, applies rubric-based and per-turn metrics, runs evaluations through the CLI or AgentEvaluator, and inspects reconstructed audio and transcripts in ADK Web.
Takeaways
A live workflow can sequence three ordinary agents while preserving the open audio stream, session state, and conversation history across handoffs.
Eval cases can use an improvising simulated user with a persona and conversation plan, or provide fixed user turns verbatim; max_allowed_invocations bounds dynamic scenarios.
live_model_config enables live mode, while model controls simulated-user turn taking and audio_model synthesizes speech; voices and language settings can vary audio conditions.
Source and freshness
- Source
- developers.googleblog.com
- Published
- Added to Yomu
Summaries are generated from the original by a language model. Check the original before relying on it.
Keep reading
Related reading
The Good Stuff
Paid picks we use ourselves. Links carry a referral code — a subscription through one earns us a commission at no extra cost to you.
The best engineering reads, once a week
One useful email. Unsubscribe anytime.