Claude Code的分叉子代理如何共享Prompt缓存

💡 原文英文,约3600词,阅读约需14分钟。
📝

内容提要

Claude Code通过并行生成多个子代理来处理复杂任务,利用Prompt Cache机制显著降低输入成本。子代理共享相同的上下文,确保字节一致性超过99%,实现高达90%的费用折扣。设计强调字节级一致性,避免微小差异导致缓存失效,有效支持并行任务,优化API调用成本。

🎯

关键要点

  • Claude Code通过并行生成多个子代理来处理复杂任务,显著降低输入成本。
  • Prompt Cache机制提供90%的折扣,前提是请求之间的前缀字节完全相同。
  • 子代理共享相同的上下文,确保字节一致性超过99%。
  • 设计强调字节级一致性,避免微小差异导致缓存失效,有效支持并行任务。
  • 命名子代理和分叉子代理的缓存策略完全不同,前者独立缓存,后者共享缓存前缀。
  • 构建字节一致的前缀是设计的核心,确保所有子代理的消息序列在大部分内容上完全相同。
  • 缓存键由五个维度组成,任何单一维度的字节差异都会导致缓存失效。
  • 命名子代理通过减少上下文来降低绝对成本,适用于不需要完整上下文的任务。
  • 分叉缓存共享机制显著降低了并行调用的API成本,节省了大量的令牌。
  • 每个分叉子代理在执行时拥有完全隔离的上下文,避免相互干扰。

延伸问答

Claude Code的分叉子代理如何降低输入成本?

Claude Code通过并行生成多个子代理,并利用Prompt Cache机制,使得相同的上下文共享,从而显著降低输入成本,最高可达90%的费用折扣。

什么是Prompt Cache机制,它是如何工作的?

Prompt Cache机制允许在请求之间共享相同的前缀字节,从而在字节完全相同的情况下,缓存的部分以10%的正常价格计费。

分叉子代理与命名子代理的缓存策略有什么不同?

分叉子代理共享缓存前缀,而命名子代理则独立缓存,无法与父代理共享缓存。

如何确保分叉子代理之间的字节一致性?

通过构建字节一致的前缀,确保所有子代理的消息序列在大部分内容上完全相同,从而避免微小差异导致缓存失效。

分叉子代理在执行时的上下文是如何处理的?

每个分叉子代理在执行时拥有完全隔离的上下文,避免相互干扰,确保每个代理的操作独立进行。

使用分叉子代理的场景有哪些?

分叉子代理适用于需要完整上下文的并行任务,例如同时修改多个相关文件,以确保正确的编辑决策。

➡️

继续阅读