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": "is_sum_of_cubes", "description": "Checks if a number is the sum of the cubes of its digits.", "parameters": {"num": {"description": "The number to check.", "type": "int"}}}, {"name": "calculate_grade", "description": "Calculates the weighted average grade based on scores and their corresponding weights.", "parameters": {"scores": {"description": "A list of scores.", "type": "List[float]"}, "weights": {"description": "A list of weights corresponding to each score.", "type": "List[float]"}}}, {"name": "reverse_string", "description": "Reverses the characters in a string.", "parameters": {"text": {"description": "The input string.", "type": "str"}}}]
Is the number 371 the sum of the cubes of its digits? Calculate the weighted average grade from the scores [78, 89, 92, 90] with weights [0.25, 0.25, 0.25, 0.25]. Also, reverse the string 'Data Science' and return the result.
user
assistant
[{"name": "is_sum_of_cubes", "arguments": {"num": 371}}, {"name": "calculate_grade", "arguments": {"scores": [78.0, 89.0, 92.0, 90.0], "weights": [0.25, 0.25, 0.25, 0.25]}}, {"name": "reverse_string", "arguments": {"text": "Data Science"}}]