Skip to content

No response is received on when transfer_to_agent transfers to a sub agent. #5536

@kmckenna66

Description

@kmckenna66

Describe the Bug:
No response is received on when transfer_to_agent transfers to a sub agent using bidi_stream_query and gemini-live-2.5-flash-native-audio.

Steps to Reproduce:
Please provide a numbered list of steps to reproduce the behavior:

  1. Connect to agent with fast api configured for bidi stream.
  2. Ask "What's the weather?" to initiate transfer to sub agent.
  3. Observe no response after transfer.
  4. Ask the same question and observe response from sub agent.

Expected Behavior:
After transfer_to_agent is completed the sub agent should respond to the input from the user.

Observed Behavior:
No response is received until additional input is provided.

Environment Details:

  • ADK Library Version (pip show google-adk): 2.0.0b1
  • Desktop OS: MacOS
  • Python Version (python -V): Python 3.13.3

Model Information:

  • Are you using LiteLLM: No
  • Which model is being used: gemini-live-2.5-flash-native-audio

🟡 Optional Information

Providing this information greatly speeds up the resolution process.

Regression:
Did this work in a previous version of ADK? If so, which one? Yes, 1.27.1

Logs:
Please attach relevant logs. Wrap them in code blocks (```) or attach a
text file.
This is what shows when the agent stops after transfer.

2026-04-28 16:41:28,695 - google_adk.google.adk.models.google_llm - INFO - Trying to connect to live model: gemini-live-2.5-flash-native-audio with api backend: GoogleLLMVariant.VERTEX_AI

Screenshots / Video:
If applicable, add screenshots or screen recordings to help explain
your problem.

Additional Context:
This exact agent setup will give a response after transfer_to_agent when using async_stream_query with gemini-2.5-flash instead of bidi_stream_query with gemini-live-2.5-flash-native-audio.

Minimal Reproduction Code:
Please provide a code snippet or a link to a Gist/repo that isolates the issue.

Sample Agent File:

import google.adk.agents as agents
from google.adk.apps import App

agent_2 = agents.Agent(
    name="sample_agent_2",
    model="gemini-live-2.5-flash-native-audio",
    instruction="You are a helpful assistant that can answer questions about the weather.",
    description="A sample agent that can answer questions about the weather.",
)

agent = agents.Agent(
    name="sample_agent",
    model="gemini-live-2.5-flash-native-audio",
    instruction="You are a helpful assistant that can answer questions and help with tasks.",
    description="A sample agent that can answer questions and help with tasks.",
    sub_agents=[agent_2],
)


app = App(
    root_agent=agent,
    name="sample_agent",
)

Agent engine host:

import asyncio
import logging
import os
from typing import Any, AsyncIterator

import vertexai
from google.adk.artifacts import GcsArtifactService, InMemoryArtifactService
from vertexai.agent_engines.templates.adk import AdkApp
from vertexai.preview.reasoning_engines import AdkApp as PreviewAdkApp

try:
    from dotenv import load_dotenv

    load_dotenv()
except ImportError:
    pass

try:
    from .agent import app as adk_app
except ImportError:  # pragma: no cover - `python agent_engine_app.py` from cwd
    from agent import app as adk_app

logger = logging.getLogger(__name__)

class AgentEngineApp(AdkApp):
    def set_up(self) -> None:
        try:
            vertexai.init()
            super().set_up()
        except Exception:
            logger.exception("set_up failed")
            raise

    def register_operations(self) -> dict[str, list[str]]:
        operations = super().register_operations()
        operations["bidi_stream"] = ["bidi_stream_query"]
        return operations

    async def bidi_stream_query(
        self, input_queue: asyncio.Queue[dict[str, Any]]
    ) -> AsyncIterator[dict[str, Any]]:
        try:
            async for response in PreviewAdkApp.bidi_stream_query(self, input_queue):
                yield response
        except asyncio.CancelledError:
            raise
        except Exception:
            logger.exception("bidi_stream_query failed")
            raise

agent_engine = AgentEngineApp(
    app=adk_app,
)

How often has this issue occurred?:

  • Always (100%)

Metadata

Metadata

Assignees

Labels

live[Component] This issue is related to live, voice and video chatv2Affects only 2.0 version

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions