CCA-F 练习题库· Tool Design & MCP Integration
你的客服系统要求 draft_response agent 在返回输出之前,每一次响应都必须包含一份结构化的 JSON 摘要。你希望保证该 agent 每次被调用时都调用 generate_summary 工具,而不是可选调用。哪种 tool_choice 配置能做到这一点?
- A设置 tool_choice: "auto"(默认值),由模型每轮自行判断这次草稿要不要调用 generate_summary。
- B设置 tool_choice: "any",使模型必须至少调用一个工具,不过它可能会转而选择别的工具。
- C设置 tool_choice: {"type": "tool", "name": "generate_summary"},以强制模型专门调用 generate_summary。
- D把 agent 工具列表中其他所有工具都移除,使 generate_summary 成为 schema 中唯一可调用的选项。
正确答案:C
解析
- C正确。Anthropic Messages API 支持四种 tool_choice 类型:auto(由 Claude 决定是否调用工具)、any(Claude 必须调用所提供工具中的某一个,但由它自行选择哪一个)、tool(强制 Claude 调用某个指定名称的工具)以及 none(不调用工具)。要保证每一回合都调用 generate_summary 工具,你需要把 tool_choice 设为 {"type": "tool", "name": "generate_summary"},它会强制调用那个确切的工具 —— 这一点已由 tool-use/define-tools 的“forcing tool use”文档确认。
- A(auto)使调用保持可选,模型可能只回复文本而不做任何工具调用;
- B(any)保证会有某次工具调用,但不保证调用的就是 generate_summary;
- D是脆弱的变通做法,它剥离了 agent 完成工作可能需要的其他正当工具,而且即便如此,也只有与类型 any 搭配才能真正强制该调用。
延伸阅读
本题为本站自有原创练习题,非任何官方考试内容;解析对照 Anthropic 公开文档撰写, 如与最新文档不符请以官方为准。想在限时环境下检验水平,可参加 模拟考(题目与本页题库不重叠)。