AI-103 Practice Question 86: Tool Choice Parameter
Microsoft Azure AI Apps and Agents Developer Associate (AI-103) · Test 9 · question 6 of 10
A support chatbot has a get_order_status function tool defined on every request. For messages where the customer types "agent," the team wants that specific request to guarantee a plain, user-facing reply directing them to a live representative, with no function call at all, without removing the tools array from the request.
Which setting on that request achieves this?
Show answer and explanation
Answer:
The tool_choice parameter controls whether and which tool a chat completion may invoke. Microsoft's documentation is explicit about the three shapes: the default, tool_choice: "auto", lets the model decide on its own whether to call a function; naming a specific function forces that call; and "to force a user-facing message, set `tool_choice="none"`." That third option is exactly the guarantee the team needs for the handoff message, and it works on a per-request basis without touching the tools array that other requests still rely on.
- A is wrong because "auto" is the default behavior the team is trying to override; it still lets the model decide, so it can't guarantee a plain message every time. - B is wrong because a named tool object forces that exact function call, which is the opposite of what's needed: the goal is *no* function call on this request. - D is wrong because tool availability is controlled by tool_choice and the tools array, not by a function's description. Deleting the description also breaks the tool for every other request that still needs to call it, since a missing description makes it harder for the model to know when to use it correctly.
Reference: How to use function calling with Microsoft Foundry Models