from smolagents import tool import numpy as np @tool def fibonacci_element(element:str)->str: """ Computes FibonacciSequenceElement for give sequence number Args: element: sequence number Returns: fibonacci element value """ sqrt5 = np.sqrt(5) element = int(element) return str(int(np.round(1/sqrt5 * (((1+sqrt5)/2)**element-((1-sqrt5)/2)**element)))) from smolagents import Tool class FiboTool(Tool): name = "FiboTool" description = """ Computes Fibonacci Sequence Element for given sequence number""" inputs = { "element": { "type": "string", "description": "sequence number", } } output_type = "string" def forward(self, element: str): return fibonacci_element(element)