diff --git a/src/google/adk/models/llm_request.py b/src/google/adk/models/llm_request.py index dcb616bd..79770182 100644 --- a/src/google/adk/models/llm_request.py +++ b/src/google/adk/models/llm_request.py @@ -45,7 +45,9 @@ class LlmRequest(BaseModel): contents: list[types.Content] = Field(default_factory=list) """The contents to send to the model.""" - config: Optional[types.GenerateContentConfig] = None + config: types.GenerateContentConfig = Field( + default_factory=types.GenerateContentConfig + ) live_connect_config: types.LiveConnectConfig = types.LiveConnectConfig() """Additional config for the generate content request. diff --git a/tests/unittests/models/test_google_llm.py b/tests/unittests/models/test_google_llm.py index 03d18ec6..9004245c 100644 --- a/tests/unittests/models/test_google_llm.py +++ b/tests/unittests/models/test_google_llm.py @@ -1505,7 +1505,6 @@ async def test_computer_use_with_no_config(): contents=[ types.Content(role="user", parts=[types.Part.from_text(text="Hello")]) ], - config=None, ) # Should not raise an exception diff --git a/tests/unittests/tools/test_base_tool.py b/tests/unittests/tools/test_base_tool.py index d450cc0e..da1dda64 100644 --- a/tests/unittests/tools/test_base_tool.py +++ b/tests/unittests/tools/test_base_tool.py @@ -62,7 +62,7 @@ async def test_process_llm_request_no_declaration(): tool_context=tool_context, llm_request=llm_request ) - assert llm_request.config is None + assert llm_request.config == types.GenerateContentConfig() @pytest.mark.asyncio diff --git a/tests/unittests/tools/test_google_search_tool.py b/tests/unittests/tools/test_google_search_tool.py index c297e438..9623875a 100644 --- a/tests/unittests/tools/test_google_search_tool.py +++ b/tests/unittests/tools/test_google_search_tool.py @@ -322,12 +322,12 @@ class TestGoogleSearchTool: ) @pytest.mark.asyncio - async def test_process_llm_request_with_none_config(self): + async def test_process_llm_request_with_no_config(self): """Test processing LLM request with None config.""" tool = GoogleSearchTool() tool_context = await _create_tool_context() - llm_request = LlmRequest(model='gemini-2.0-flash', config=None) + llm_request = LlmRequest(model='gemini-2.0-flash') await tool.process_llm_request( tool_context=tool_context, llm_request=llm_request diff --git a/tests/unittests/tools/test_url_context_tool.py b/tests/unittests/tools/test_url_context_tool.py index e4c53302..cbbbb0c9 100644 --- a/tests/unittests/tools/test_url_context_tool.py +++ b/tests/unittests/tools/test_url_context_tool.py @@ -242,12 +242,12 @@ class TestUrlContextTool: ) @pytest.mark.asyncio - async def test_process_llm_request_with_none_config(self): + async def test_process_llm_request_with_no_config(self): """Test processing LLM request with None config.""" tool = UrlContextTool() tool_context = await _create_tool_context() - llm_request = LlmRequest(model='gemini-2.0-flash', config=None) + llm_request = LlmRequest(model='gemini-2.0-flash') await tool.process_llm_request( tool_context=tool_context, llm_request=llm_request