Few things … if you ALWAYS want all 5 to be called why not create on function. That would be way more efficient.
Functions will be called based on their instructions (What is in the function description) and your prompt. So you CAN instruct the model to ALWAYS call all five.
I have found that the AI just seems not to be trained on using its multi_tool_use wrapper to call different functions at the same time. It will do parallel calls to the same function almost too easily though.
For example, I have both a float and an int random number generator function:
ask the AI to roll four dice and give results: four functions in tool calls.
ask the AI to just give a random int and a random float: just one function.
Adding “Can operate in parallel with other function types.” to all function descriptions? No difference.
Unlike “devday”, the AI isn’t going to lock your car and roll up the windows in the same tool_call unless the parameters are in the same function.
I finally got this to go with the additional description on gpt-4-turbo-preview: