From b58633fbd1116f91ef59667a528915f6d885e1f8 Mon Sep 17 00:00:00 2001 From: Mrun25 <165297479+Mrun25@users.noreply.github.com> Date: Sat, 17 Oct 2026 11:55:01 +0530 Subject: [PATCH] fix(vertex_ai): read message roles by subscript in the prefix check m.get on the message union reported Unknown member types against the repo-wide type gate; role is required on every AllMessageValues shape, so subscript access is both typed and safe here. --- litellm/llms/vertex_ai/context_caching/transformation.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/litellm/llms/vertex_ai/context_caching/transformation.py b/litellm/llms/vertex_ai/context_caching/transformation.py index 91f1d381bd8..87dbc222829 100644 --- a/litellm/llms/vertex_ai/context_caching/transformation.py +++ b/litellm/llms/vertex_ai/context_caching/transformation.py @@ -147,9 +147,7 @@ def separate_cached_messages( prefix_messages: Final = messages[:first_cached_idx] suffix_messages: Final = messages[last_cached_idx + 1 :] - if any(m.get("role") != "system" for m in prefix_messages) or any( - m.get("role") == "system" for m in suffix_messages - ): + if any(m["role"] != "system" for m in prefix_messages) or any(m["role"] == "system" for m in suffix_messages): # Not a true prefix: send the conversation uncached so nothing is # reordered and no system message is silently dropped. return [], list(messages)