CCARF Practice Question
Correct answer: B
A: 'any' forces a tool call but does not guarantee which tool is called. The agent might call a different tool on the first turn. Additionally, forcing tool calls on every subsequent turn prevents normal text responses.
B: Forced selection with the specific tool name guarantees generate_report is called on the first turn. Switching to 'auto' afterwards restores normal behaviour where the model decides whether and which tools to call.
C: System prompt instructions are advisory, not enforced. With 'auto', the model can still choose to respond with text instead of calling the tool. This does not guarantee the mandatory first step.
D: While this would work, dynamically modifying the tool list between turns is unnecessarily complex. Forced tool_choice selection achieves the same guarantee with a simpler configuration change.