From ce8315a7432586e1861b21b0cc3d6aa48c5e8992 Mon Sep 17 00:00:00 2001 From: Syed Jafri Date: Wed, 10 Jun 2026 16:35:37 -0700 Subject: [PATCH] fix(models): avoid spurious UserWarning on tool-call responses in _build_response_log Co-Authored-By: Claude Sonnet 4.6 --- src/google/adk/models/google_llm.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/google/adk/models/google_llm.py b/src/google/adk/models/google_llm.py index d5923ffd25..9dee6446fc 100644 --- a/src/google/adk/models/google_llm.py +++ b/src/google/adk/models/google_llm.py @@ -605,6 +605,15 @@ def _build_request_log(req: LlmRequest) -> str: """ +def _safe_response_text(resp: types.GenerateContentResponse) -> str: + """Extracts text from a response without triggering UserWarning on tool-call responses.""" + try: + parts = resp.candidates[0].content.parts + except (AttributeError, IndexError, TypeError): + return '' + return ''.join(part.text for part in parts if part.text is not None) + + def _build_response_log(resp: types.GenerateContentResponse) -> str: function_calls_text = [] if function_calls := resp.function_calls: @@ -616,7 +625,7 @@ def _build_response_log(resp: types.GenerateContentResponse) -> str: LLM Response: ----------------------------------------------------------- Text: -{resp.text} +{_safe_response_text(resp)} ----------------------------------------------------------- Function calls: {_NEW_LINE.join(function_calls_text)}