Hey everyone, how do I use composio tools directly with google Gemini function calling. like we can use composio with openai function calling directly but can't do the same for google gemini. It raises some ridiculous error.
model = genai.GenerativeModel(model_name="gemini-1.5-flash", tools=tools)
basically it's not working when I do something like this
tools = composio_toolset.get_tools(apps=[App.GOOGLECALENDAR])
i get this error lol
File "C:\Users\PC\Documents\planner\.venv\Lib\site-packages\google\generativeai\types\content_types.py", line 774,
in _make_tools
tools = [_make_tool(t) for t in tools]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\PC\Documents\planner\.venv\Lib\site-packages\google\generativeai\types\content_types.py", line 774,
in <listcomp>
tools = [_make_tool(t) for t in tools]
^^^^^^^^^^^^^
File "C:\Users\PC\Documents\planner\.venv\Lib\site-packages\google\generativeai\types\content_types.py", line 715,
in _make_tool
return Tool(function_declarations=tool)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\PC\Documents\planner\.venv\Lib\site-packages\google\generativeai\types\content_types.py", line 637,
in __init__
self._function_declarations = [
^
File "C:\Users\PC\Documents\planner\.venv\Lib\site-packages\google\generativeai\types\content_types.py", line 638,
in <listcomp>
_make_function_declaration(f) for f in function_declarations
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\PC\Documents\planner\.venv\Lib\site-packages\google\generativeai\types\content_types.py", line 613,
in _make_function_declaration
raise TypeError(
TypeError: Invalid input type. Expected an instance of `genai.FunctionDeclarationType`.
However, received an object of type: <class 'tuple'>.
Object Value: ('name', 'GOOGLECALENDAR_CREATE_EVENT')
Sentry is attempting to send 2 pending events
Waiting up to 2 seconds
Press Ctrl-Break to quit```