in google/generativeai/responder.py [0:0]
def to_function_calling_config(obj: FunctionCallingConfigType) -> protos.FunctionCallingConfig:
if isinstance(obj, protos.FunctionCallingConfig):
return obj
elif isinstance(obj, (FunctionCallingMode, str, int)):
obj = {"mode": to_function_calling_mode(obj)}
elif isinstance(obj, dict):
obj = obj.copy()
mode = obj.pop("mode")
obj["mode"] = to_function_calling_mode(mode)
else:
raise TypeError(
"Invalid argument type: Could not convert input to `protos.FunctionCallingConfig`."
f" Received type: {type(obj).__name__}.",
obj,
)
return protos.FunctionCallingConfig(obj)