eastern-cyan•2mo ago
Whenever my VoiceFlow Agent uses the search knowledge base tool, it won't use any other tools.
I want my ai agent to search the knowledge base and then call another tool before sending out the reply to the user but it doesn't ever use the other tools once it done a knowledge base search.
Can anybody help?
On a question where it doesn't use the knowledge base tool it does use the other tools


2 Replies
When the Agent fires a knowledge-base search it is actually issuing a hidden function call called
Because GPT’s function-calling interface (and therefore the Agent step) can execute one function per turn only, the moment it decides to use that KB tool it has already consumed its single call for that turn – any other functions you exposed are ignored until the next turn.
So what you’re seeing is expected behaviour, not a mis-configuration. Work-arounds ------------- 1. Chain two steps • Step 1 – Agent (KB on) or a dedicated Search KB step. It retrieves the chunks and stores them in a variable.
• Step 2 – immediately follow with another Agent/Function step (KB off) that has access to your other tool. In the LLM description tell it to use that tool with the info collected in step 1. 2. Wrap both actions in a single custom function Create one Function that:
• calls the KB Query API,
• processes the chunks,
• then makes the second API/action you need,
• returns whatever you want to show the user.
Expose only this function to the Agent and disable the built-in KB toggle. 3. Skip the automatic KB search altogether Turn off “Access to Knowledge Base” in the Agent step and let your own function do the KB query plus the extra work, as in option 2. With any of the above patterns the agent can still surface the KB answer and run your additional tool – it just has to happen across two turns or inside one wrapper function. Docs: https://docs.voiceflow.com
search_knowledge_base
.Because GPT’s function-calling interface (and therefore the Agent step) can execute one function per turn only, the moment it decides to use that KB tool it has already consumed its single call for that turn – any other functions you exposed are ignored until the next turn.
So what you’re seeing is expected behaviour, not a mis-configuration. Work-arounds ------------- 1. Chain two steps • Step 1 – Agent (KB on) or a dedicated Search KB step. It retrieves the chunks and stores them in a variable.
• Step 2 – immediately follow with another Agent/Function step (KB off) that has access to your other tool. In the LLM description tell it to use that tool with the info collected in step 1. 2. Wrap both actions in a single custom function Create one Function that:
• calls the KB Query API,
• processes the chunks,
• then makes the second API/action you need,
• returns whatever you want to show the user.
Expose only this function to the Agent and disable the built-in KB toggle. 3. Skip the automatic KB search altogether Turn off “Access to Knowledge Base” in the Agent step and let your own function do the KB query plus the extra work, as in option 2. With any of the above patterns the agent can still surface the KB answer and run your additional tool – it just has to happen across two turns or inside one wrapper function. Docs: https://docs.voiceflow.com
eastern-cyanOP•2mo ago
But i have done function calls that call more than one tool, see:
{
"ref": {
"type": "agent",
"nodeID": "68494fa8fb3ecc3051f78049",
"agentID": "68494fb2080897076872c324",
"diagramID": "64dbb6696a8fab0013dba194"
},
"metadata": {
"tools": [
{
"id": "call_pD5g9YpsaEojVjg4IeXyR3rJ",
"name": "create_a_customer_in_gorgias"
},
{
"id": "call_Vtnur6aVGTJ3OIaxQBtOf3yl",
"name": "knowledge_base_search"
}
]
}