oy mate! first of all do you already have access to to the gpt-4 model? if yes, you will get it^^ if not, forget it until then.
the point is (at least is it how it felt for me and how it is stated on the docs) that the 3.5 turbos system prompts do not work out that well atm, but the gpt4 system prompts absolutely do!
i am making a chatbot with various additional functions and took the same approach (as less code handling things as possible, but the model doing as much as possible)
the key for me was, to set the right goals in the system prompt(s) and giving it a legit json format that it should output (can be as simple as returning true or false, but can also be as complex as analyzing sentiment of a text and returning the sentiments key-value pairs followed by the name of a function to call next (you need to supply it with the valid function names for sure)
looke that you give it a good output format and enough data to know what it is able to call and you should be fine^^