@@ -312,38 +312,34 @@ def _get_search_params(
312312 output_type : Literal ["searchResults" , "sourcedAnswer" , "structured" ],
313313 structured_output_schema : Union [type [BaseModel ], str , None ],
314314 include_images : bool ,
315- from_date : Union [date , None ],
316- include_domains : Union [list [str ], None ],
317315 exclude_domains : Union [list [str ], None ],
316+ include_domains : Union [list [str ], None ],
317+ from_date : Union [date , None ],
318318 to_date : Union [date , None ],
319319 ) -> dict [str , Union [str , bool , list [str ]]]:
320- params : dict [str , Union [str , bool , list [str ]]] = dict (
321- q = query ,
322- depth = depth ,
323- outputType = output_type ,
324- includeImages = include_images ,
325- )
326-
327- if output_type == "structured" and structured_output_schema is not None :
320+ structured_output_schema_param : str = ""
321+ if structured_output_schema is not None :
328322 if isinstance (structured_output_schema , str ):
329- params [ "structuredOutputSchema" ] = structured_output_schema
323+ structured_output_schema_param = structured_output_schema
330324 elif issubclass (structured_output_schema , BaseModel ):
331325 json_schema : dict [str , Any ] = structured_output_schema .model_json_schema ()
332- params [ "structuredOutputSchema" ] = json .dumps (json_schema )
326+ structured_output_schema_param = json .dumps (json_schema )
333327 else :
334328 raise TypeError (
335329 f"Unexpected structured_output_schema type: '{ type (structured_output_schema )} '"
336330 )
337- if from_date is not None :
338- params ["fromDate" ] = from_date .isoformat ()
339- if exclude_domains is not None :
340- params ["excludeDomains" ] = exclude_domains
341- if include_domains is not None :
342- params ["includeDomains" ] = include_domains
343- if to_date is not None :
344- params ["toDate" ] = to_date .isoformat ()
345-
346- return params
331+
332+ return dict (
333+ q = query ,
334+ depth = depth ,
335+ outputType = output_type ,
336+ structuredOutputSchema = structured_output_schema_param ,
337+ includeImages = include_images ,
338+ excludeDomains = exclude_domains or [],
339+ includeDomains = include_domains or [],
340+ fromDate = from_date .isoformat () if from_date is not None else "" ,
341+ toDate = to_date .isoformat () if to_date is not None else "" ,
342+ )
347343
348344 def _validate_search_response (
349345 self ,
0 commit comments