diff --git a/src/google/adk/models/gemini_context_cache_manager.py b/src/google/adk/models/gemini_context_cache_manager.py index 801ac1351e..e4cc2f9bfa 100644 --- a/src/google/adk/models/gemini_context_cache_manager.py +++ b/src/google/adk/models/gemini_context_cache_manager.py @@ -447,7 +447,7 @@ async def _create_gemini_cache( with tracer.start_as_current_span("create_cache") as span: # Prepare cache contents (first N contents + system instruction + tools) - cache_contents = llm_request.contents[:cache_contents_count] + cache_contents = llm_request.contents[:cache_contents_count] or None cache_config = types.CreateCachedContentConfig( contents=cache_contents, diff --git a/tests/unittests/agents/test_gemini_context_cache_manager.py b/tests/unittests/agents/test_gemini_context_cache_manager.py index 9e67706680..1d95c4e46f 100644 --- a/tests/unittests/agents/test_gemini_context_cache_manager.py +++ b/tests/unittests/agents/test_gemini_context_cache_manager.py @@ -989,6 +989,8 @@ async def test_fingerprint_only_metadata_transitions_to_active_cache( assert result_2.contents_count == 0 # Preserved from prefix assert result_2.invocations_used == 1 self.manager.genai_client.aio.caches.create.assert_called_once() + create_call = self.manager.genai_client.aio.caches.create.call_args + assert create_call.kwargs["config"].contents is None async def test_dynamic_instruction_does_not_break_initial_cache_fingerprint( self,