You have an interesting problem, one which we’d think would seem super-simple for a computer to perform, but it turns out since the AI is a language processor, it doesn’t really do a good at what to it are hard logic puzzles.
Time is also an interesting case to ponder - you keep on putting the current time into the system prompt, but then what follows that can be references to an earlier time when the user has asked “what time is it”. Pretty confusing for an AI, right? A “Session start time” that doesn’t change may what you want to infuse.
I think I would first establish a global knowledge of dates. Reference an earlier post of mine on similar topic:
Having that, you can clean the multiple examples of time from your function that are ripe for confusion, and just concentrate on specifying where the date should come from that it will put in the function, and its use.
And then comes the logic: "Do you have any appointments available two weeks from now? It has to have a calendar, understand the starting and ending days of the week, be able to calculate date ranges, etc – all from prediction of the most likely word that should be output.
Priming it with features it is lacking in mental abilities, a “print_calendar” function, a “days_between_dates” calculator, etc can both enhance and confuse the AI.