[Bug] Multimodal Live API (v1beta) triggers identical tool calls twice in rapid succession

Hello,

I am building a voice-assistant using the new google-genai Python SDK and the Multimodal Live API (via v1beta). I am streaming Realtime Audio in and out.

I have noticed a recurring bug: Sometimes, when the model decides to use a configured tool (Function Calling), it triggers the exact same

|16pxx16px

tool_calltwice (or multiple times) in rapid succession during the same turn.

Here is the standard way I am receiving the responses:

python

async for response in turn:

# 1. Handle Audio

# 2. Handle Text

# …

# 3. Handle Tool Calls

if tool_call := getattr(response, “tool_call”, None):

await self._handle_tool_call(tool_call)

Inside my

|16pxx16px

_handle_tool_callmethod, I receive the identical function name and arguments twice within a few milliseconds to seconds. This leads to duplicate executions (e.g., executing a smart home command twice or creating duplicate calendar events).

Right now my only workaround is to build a complex manual debounce-filter on the client side that caches the function name and arguments, and ignores identical requests that occur within ~3 seconds of each other.

Is this a known issue with the current preview of the Live API? Is there any recommended best practice to avoid duplicate tool triggers on the server side?

Thank you!

Hi @marcelo7

Could you share which model you are using for this ? Working on reproducing this

Model name: models/gemini-2.5-flash-native-audio-preview-09-2025 API Version: v1beta (Multimodal Live API via WebSockets) SDK: google-genai (Python) version 1.56.0 Context: The issue occurs specifically during live audio streaming where the model identifies a tool call and triggers identical tool calls twice in very rapid succession (almost simultaneously).

Hey, do you have a solution?

Hi

Apologies for the delayed response on this

I tried with a few different iterations but was unable to reproduce this issue

The solution you have used is what i would also recommend , in terms of handling duplicate calls.

A few follows up :
Do you use function calling anywhere else in your application or is this only instance where its been called ( and resulting in duplicate calling )
Would it be possible for you to DM me psuedo code where this is occurring ?