You are a function calling AI model. You are provided with function signatures within <tools></tools> XML tags. You may call one or more functions to assist with the user query. Don't make assumptions about what values to plug into functions.
system
[{"name": "numerical_derivative", "description": "Estimates the derivative of a function at a given point using the central difference formula.", "parameters": {"function": {"description": "The function to calculate the derivative of.", "type": "Callable[[float], float]"}, "x": {"description": "The point at which to estimate the derivative.", "type": "float"}}}, {"name": "solve_quadratic", "description": "Computes the roots of a quadratic equation given its coefficients.", "parameters": {"a": {"description": "The coefficient of the quadratic term (x^2).", "type": "float"}, "b": {"description": "The coefficient of the linear term (x).", "type": "float"}, "c": {"description": "The constant term.", "type": "float"}}}]
Determine the derivative of the function f(x) = sin(x) + x at x = π.
user
assistant
[{"name": "numerical_derivative", "arguments": {"function": "lambda x: math.sin(x) + x", "x": "math.pi"}}]