Register and share your invite link to earn from video plays and referrals.

cv usk
@cv_usk
AI / Software Research Notes AI Agent, LLMOps, MLOps, Software Architecture ๆŠ•็จฟใฏๅ€‹ไบบใฎๆ„่ฆ‹ใงใ™ใ€‚
Joined May 2026
286 Following    469 Followers
# Practical and Useful Patterns with ADK ๐ŸŽญ Fixed-prompt tests can't replicate the unpredictable behavior of real users. ADK's User Simulation feature enables persona-driven conversational testing โ€” "impatient customer," "vague requester" โ€” to automatically verify agent robustness. ๐Ÿ“Œ Title: User Simulation ๐Ÿ”— URL: ๐Ÿงฉ Overview ADK's User Simulation dynamically evaluates conversational agents using AI-generated user prompts. Instead of fixed test cases, a simulated user adapts to agent responses, making it ideal for testing unpredictable conversation flows. A ConversationScenario consists of three elements: `starting_prompt` (initial message), `conversation_plan` (high-level goals the user must achieve), and `user_persona` (user traits and interaction style). ๐Ÿ›  Usage Basic user simulator configuration: ```json { "user_simulator_config": { "model": "gemini-flash-latest", "model_configuration": { "thinking_config": { "include_thoughts": true, "thinking_budget": 10240 } }, "max_allowed_invocations": 20 } } ``` ADK provides three pre-built personas: | Behavior | EXPERT | NOVICE | EVALUATOR | |----------|--------|--------|-----------| | Advance | Detail-oriented | Goal-oriented | Detail-oriented | | Answer | Relevant questions | All questions | Relevant questions | | Correct inaccuracies | Yes | No | No | | Troubleshoot errors | Once | Never | Never | | Tone | Professional | Conversational | Conversational | Define custom personas directly in ConversationScenario JSON: ```json { "user_persona": { "id": "IMPATIENT_USER", "description": "User in a rush, easily frustrated", "behaviors": [ { "name": "Short responses", "description": "Provides brief, incomplete replies", "behavior_instructions": [ "Keep responses under 10 words", "Omit polite phrases" ], "violation_rubrics": [ "Response exceeds 10 words", "Response is overly polite" ] } ] } } ``` Auto-generate evaluation scenarios: ```bash adk eval_set generate_eval_cases \ --user_simulation_config_file= ``` ๐Ÿ— Practical Patterns **Robustness Testing with "Impatient Customer" Persona**: Use an IMPATIENT_USER persona that gives sub-10-word responses and skips pleasantries. This tests whether your agent can gather sufficient information through proper follow-up questions despite receiving minimal input. Especially valuable for customer support agents. **"Vague Requester" Persona**: Simulate users who give abstract, unspecific requirements. Test whether your agent asks clarifying questions to pin down needs, rather than making assumptions or going off-track with ambiguous input. **Leveraging Pre-Built Personas**: EXPERT validates technical accuracy, NOVICE verifies that explanations are beginner-friendly, and EVALUATOR provides neutral performance assessment. Each reveals different aspects of agent quality. **Auto-Generated Scenarios for Coverage**: Use `generate_eval_cases` to automatically create diverse conversation scenarios, discovering edge cases you wouldn't think of manually. Specify `generation_instruction` for scenario direction and `environment_context` for backend state to produce realistic scenarios. ๐Ÿ’ก Use Cases ๐ŸŽญ Verifying customer support agent adaptability across diverse user types ๐Ÿงช Discovering edge-case conversation paths beyond fixed tests ๐Ÿค– Domain-specific robustness testing with custom personas ๐Ÿ“Š Comprehensive quality evaluation through mass scenario generation โš ๏ธ Caveats - Without proper `max_allowed_invocations` settings, simulations may run indefinitely. Adjust from the default of 20 based on your domain. - Auto-generating scenarios requires the Vertex Gen AI Evaluation Service API. - Vague `violation_rubrics` in custom personas can lead to inconsistent persona behavior. Define specific violation conditions. - Enabling thinking in the simulator model produces more natural dialogue but increases costs. โœจ User Simulation breaks through the limitations of fixed tests. Use personas to simulate "how real users would behave" and verify agent robustness from multiple angles! #ADK# #AIAgent#
Show more