Are you comparing ChatGPT (3.5 with no internet access) against "ExclamationGPT" which uses GPT4 with internet access?
Functional calling exists - https://platform.openai.com/docs/guides/function-calling.
Although I have played with it and it doesn't seem that polished (doesn't wanna call my function!) but it is there.
Also, the api allows the developer to force gpt to call a specific function.
Thanks, I might swing around and look at it again. For a side project I went back to normal chat and parsing between ``` and ```