@@ -87,19 +87,21 @@ def _parse_tool_parameters_schema(func) -> dict[str, dict]:
8787 inspect .Parameter .VAR_KEYWORD ,
8888 ):
8989 raise ValueError ("Varargs and kwargs are not supported" )
90- if isinstance (origin := typing .get_origin (parameter .annotation ), dict ):
90+ origin = typing .get_origin (parameter .annotation )
91+ print ("HEY" , origin , parameter .annotation , origin is None )
92+ if origin is Union :
93+ param_schema = _handle_union_annotation (parameter )
94+ elif origin is None :
95+ param_schema = _handle_simple_type (parameter )
96+ required .append (parameter .name )
97+ elif isinstance (origin , dict ):
9198 param_schema = _handle_dict_annotation (parameter )
9299 parameters_schema ["required" ].append (parameter .name )
93100 required .append (parameter .name )
94101 elif isinstance (origin , list ):
95102 param_schema = _handle_list_annotation (parameter )
96103 parameters_schema ["required" ].append (parameter .name )
97104 required .append (parameter .name )
98- elif isinstance (origin , Union ):
99- param_schema = _handle_union_annotation (parameter )
100- elif origin is None :
101- param_schema = _handle_simple_type (parameter )
102- required .append (parameter .name )
103105 else :
104106 raise ValueError ("Unsupported type hint " , parameter )
105107 parameters_schema ["properties" ][parameter .name ] = param_schema
0 commit comments