Function Calling allows you to provide Gemini with a list of external tools (like an API to check the weather). Gemini won't call the API itself; instead, it outputs a structured JSON telling YOUR code to execute the function.
Once your code executes the function, you pass the result back to Gemini so it can formulate a final natural language response.