In the GitHub example we have two tools:
One for creating header, another to create tasks.
This works fine - but this is a scenario when both tools are being used (almost as one) to perform some tasks specified in the prompt.
What about different scenario:
I have a table "Fruits in Stock" with two columns: "Fruit Name" (Text50), Quantity (Integer).
I can create two tools implementing AOAI Function interface:
- AddFruitToStock - which will required two parameters: Name and Quantity
- GetCurrentStock - which could accept optional parameters or can be run without - which will give information about current stock as a json
Then my AI agent will accept and successfully handle user prompts like this:
- "Add 5 apples to stock"
- "Remove 3 oranges from stock"
- "What is my stock?"
- "How many apples I have?"
Those requests do work fine - not a problem at all.
But I would also expect the following request to work - however it does not work :(
"Check which fruits I have the least and double its quantity"
As you can see my expectation is that AI will use one tool and depending on the result from it - will use another tool.
My AI agent is running GetCurrentStock tool and nothing else for the prompt like above.
Is this too much too ask from this particular framework?
Or the prompt or code should be structured in a specific way to achieve this?