📚 首页 / 05-prompting-structured-output/questions / architect-questions.md

模块 05 — 架构师问答题(含 1 道场景决策题)

先自己答,再对照要点。术语保持英文。

Q1. 「prompt 里写了必须输出 JSON」和「结构化输出」差在哪?什么场景必须用后者?

要点:

Q2. 结构化输出的两个特性分别解决什么问题?什么时候组合使用?

要点:

Q3. 画出并解释「生成 → 校验 → 重试」管线的分支逻辑:哪类错误重试,哪类不重试?

要点(对应 README 2.5 节 Mermaid 图):

Q4. 官方对 few-shot 示例的三条要求 + 推荐数量是什么?示例太多/太同构各有什么害处?

要点:Relevant(贴近真实用例)、Diverse(覆盖边界、避免学到意外模式)、Structured(<example>/<examples> 标签);推荐 3–5 个。太多 → 输入 token 成本上升(应配合 prompt caching);太同构 → 模型学到示例分布偏差(如答案全是某类标签),泛化差。

Q5. 截至 2026-08-30,extended thinking 的官方状态是什么?存量系统如何迁移?

要点:

Q6. 什么是 interleaved thinking?它为什么对 agent 系统重要?

要点:让 Claude 在同一回合的工具调用之间插入思考块(先消化 tool result 再决定下一步),而不是只在回合开头想一次。对 agent loop 至关重要:每次工具返回后的观察 (observation) 都能被消化后再规划 (planning)。截至 2026-08-30:旧模型需 beta header;Opus 4.6 手动模式无 interleaved(须 adaptive);Haiku 4.5 不支持。


场景决策题(Scenario Decision)

S1. 工单抽取系统选格式保证方案

Scenario:你在为一家电商构建客服工单自动分派系统。Claude 从用户邮件抽取 {topic, severity, product_line} 写入工单系统,后者要求 severity ∈ {low, medium, high, urgent},任何脏数据都会导致分派引擎崩溃。日均 5 万封邮件,预算敏感。

Constraints:

Options:

Best choice: B

Why: schema 硬保证消灭格式/枚举类违规(零容忍的唯一可靠手段);enum 限定取值域;Batch API 拿 50% 折扣对冲日均 5 万的成本压力;<email> 标签隔离用户内容缩小注入面。

Why others are weaker:

Tradeoffs: B 依赖模型/平台支持结构化输出;schema 复杂度受限;enum 大小写需归一化;Batch 引入最长 24h 延迟(此处可接受)。

What would change the answer: 若 severity 之外还需「按任意用户自定义字段抽取」(schema 动态、可能递归)→ 结构化输出不支持递归 schema,需拆两步(先抽取字段名列表,再逐字段抽取)。若要求实时(<2s)响应 → 放弃 Batch,接受全价。

📚 目录