Claude Code 学习站

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

你在一个大量使用工具的 agent 上以默认设置启用了 context editing 的工具结果清理(clear_tool_uses_20250919)。随着对话变长会发生什么?

  1. A一旦对话达到 100K token,整段历史(user 轮次、assistant 轮次和工具结果一并)就会被总结成单个 block 并替换掉之前的所有内容,agent 从这份摘要继续往下走。
  2. B一旦输入越过触发阈值(默认 100,000 个 input token),最旧的工具结果会被最先清除并替换为占位文本,同时最近的工具使用(默认 3 次)会被保留,工具调用的输入也会被保留(clear_tool_inputs 默认为 false)。
  3. C无论对话规模多大,每次请求都会删除所有工具结果(包括最新的那些),每条都被替换成占位文本,因此从第一次工具调用起,上下文里就只剩下 tool_use 的输入。
  4. D工具调用的输入总是被清除,而工具结果总是被完整保留,因此 Claude 保住了见过的每一条结果、却丢掉了自己传入的参数——因为结果才是它推理所依据的东西,而输入可以从结果反推出来——而且无论是否越过默认的 input token 触发阈值,每次请求都会执行清理。
  5. E你的客户端对话历史会被 Anthropic 永久改写且事后无法恢复,因此被清除的工具结果既会从模型后续看到的上下文中消失,也会从你自己保存的记录里消失。

正确答案:B

解析

工具结果清理(clear_tool_uses_20250919)是一种服务端策略,一旦输入越过默认的 100,000 token 触发阈值就会启动,先清除最旧的工具结果,并把每一条都替换为占位文本,好让 Claude 知道有内容被移除了;默认情况下它会保留最近的 3 次工具使用(keep=3),并且不清除工具调用的输入(clear_tool_inputs 默认为 false)。它只编辑送达模型的内容——客户端保留着完整、未经修改的对话历史。

  • BAnthropic 的 context editing 文档证实了其中的每一条说法。
  • A错,那是 compaction/摘要,是另一个特性。
  • C错,最新的结果会被保留,而不是每次请求都被删除。
  • D错,把行为反了过来——输入被保留,结果被清除。
  • E错,客户端历史不受影响。

延伸阅读

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