From d42cb111f4ba357f05fc8fb768990472497c9bd2 Mon Sep 17 00:00:00 2001 From: Oleksiy Syvokon Date: Wed, 14 May 2025 15:43:17 +0300 Subject: [PATCH] agent: Fix tool use in Gemini (#30689) Thread doesn't run pending tools when `stop_reason` is not `ToolUse`. Perhaps we should change that so that it always runs pending tools if there are some, but for now this change just fixes setting `stop_reason` for Google models. Release Notes: - N/A --- crates/language_models/src/provider/google.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/crates/language_models/src/provider/google.rs b/crates/language_models/src/provider/google.rs index b79fcb2e86..11517abc18 100644 --- a/crates/language_models/src/provider/google.rs +++ b/crates/language_models/src/provider/google.rs @@ -628,6 +628,7 @@ impl GoogleEventMapper { // responds with `finish_reason: STOP` if wants_to_use_tool { self.stop_reason = StopReason::ToolUse; + events.push(Ok(LanguageModelCompletionEvent::Stop(StopReason::ToolUse))); } events }