Skip to content

Commit 0359dac

Browse files
author
Andrei Bratu
committed
3.9 typing complaint
1 parent 73773c9 commit 0359dac

File tree

1 file changed

+13
-11
lines changed

1 file changed

+13
-11
lines changed

src/humanloop/decorators/tool.py

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@
1515

1616

1717
def _type_to_schema(type_hint):
18-
if isinstance(type_hint, int):
18+
if type_hint is int:
1919
return "number"
20-
if isinstance(type_hint, float):
20+
if type_hint is float:
2121
return "number"
22-
if isinstance(type_hint, bool):
22+
if type_hint is bool:
2323
return "boolean"
24-
if isinstance(type_hint, str):
24+
if type_hint is str:
2525
return "string"
26-
if isinstance(type_hint, dict):
26+
if type_hint is dict:
2727
return "object"
2828
raise ValueError(f"Unsupported type hint: {type_hint}")
2929

@@ -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

Comments
 (0)