CCA-F 练习题库· Prompt Engineering & Structured Output
在使用 JSON 结构化输出(output_config.format 配合 type: "json_schema")时,schema 中的每个对象必须包含什么,请求才会被接受?
- A该对象上的
minProperties和maxProperties边界,声明它可以带多少个键 - B在 schema 的每个对象节点上设置
strict: true,把校验一路传播到嵌套的各个子对象 - C一个
$schema声明,指明该对象是要依据哪一个 JSON Schema 草案版本来做校验的 - D
additionalProperties: false,并把所有字段都列在该对象的required数组中 - E
additionalProperties: true,这样模型就可以添加已声明字段之外的那些额外键
正确答案:D
解析
根据官方结构化输出文档(platform.claude.com/docs/en/docs/build-with-claude/structured-outputs),对于通过 output_config.format 且 type 为 json_schema 的 JSON 结构化输出,每个对象节点都必须设置 additionalProperties: false,并且每个对象的 properties 必须全部列在其 required 数组中——这是所有示例中都采用的既定写法,也正是它保证了严格、完整的对象输出。
- D正确,理由正在于此。
- B错误——strict: true 是用于工具输入 schema 校验的另一个开关,而不是响应格式 schema。
- C错误——$schema 草案声明既非必需也未被使用。
- A错误——minProperties/maxProperties 属于被明确列为不支持的约束(与 minimum/maximum、minLength/maxLength 等并列)。
- E错误——additionalProperties: true 会被直接拒绝,因为 additionalProperties 只能为 false。
延伸阅读
本题为本站自有原创练习题,非任何官方考试内容;解析对照 Anthropic 公开文档撰写, 如与最新文档不符请以官方为准。想在限时环境下检验水平,可参加 模拟考(题目与本页题库不重叠)。