Claude Code 学习站

CCA-F 练习题库· Context Management & Reliability

关于服务端 compaction,以下哪个说法是正确的?

  1. Acompaction 完全在客户端进行:你的 SDK 盯住 input token 数,自己调用一个更小的模型写摘要,并在发出下一个请求前重写本地保存的消息历史。
  2. B当输入达到触发阈值时,API 会把较早的对话总结进一个 compaction block,并在后续请求中自动丢弃该 block 之前的 content blocks
  3. CCompaction 已在所有 Messages API 模型上正式发布,完全不需要 beta header,因此任何接近上下文上限的请求都会被自动摘要
  4. DCompaction 会从你存储的对话历史中永久删除最旧的那些 tool results,因此你必须把它们从自己的记录里剔除,绝不再发回去
  5. ECompaction 仅在 Claude Haiku 模型上受支持,因为在更大的那些模型上维护滚动摘要的成本,会超过它所能腾出来的那部分上下文窗口

正确答案:B

解析

  • B正确,且是唯一正确项,该结论已对照最新的 compaction 文档(platform.claude.com/docs/en/build-with-claude/compaction)核实。服务端 compaction 是一项 beta 功能(header 为 compact-2026-01-12,strategy type 为 compact_20260112),它在 input_tokens 达到阈值时触发(默认 150,000,最小 50,000)。达到阈值后,API 会生成一份摘要,发出一个 compaction content block,并在后续请求中自动忽略/丢弃该 block 之前的所有 content blocks——正是 B 所陈述的。
  • A之所以错,是因为 compaction 运行在服务端,而不是客户端。
  • C之所以错,是因为它处于 beta 阶段而非 GA,并且需要 beta header。
  • D错在两处:它是做摘要,而不是永久删除你存储的历史;而且调用方必须把完整响应(包括 compaction blocks)重新发回,而不是把它扣下不发。
  • E之所以错,是因为它在 Fable 5、Mythos 5/Preview、Opus 5/4.8/4.7/4.6 以及 Sonnet 5/4.6 上受支持——而不是 Haiku。

延伸阅读

本题为本站自有原创练习题,非任何官方考试内容;解析对照 Anthropic 公开文档撰写, 如与最新文档不符请以官方为准。想在限时环境下检验水平,可参加 模拟考(题目与本页题库不重叠)。