上下文编辑目前处于测试阶段,支持工具结果清理。要启用它,请在您的API请求中使用测试版头部
context-management-2025-06-27
。未来版本将添加其他上下文编辑策略。请通过我们的反馈表单联系我们,分享您对此功能的反馈。工作原理
clear_tool_uses_20250919
策略在对话上下文超出您配置的阈值时清理工具结果。激活时,API会按时间顺序自动清理最旧的工具结果,用占位符文本替换它们,让Claude知道工具结果已被移除。默认情况下,只清理工具结果。您可以通过将 clear_tool_inputs
设置为true来选择性地清理工具结果和工具调用(工具使用参数)。
上下文编辑会使缓存的提示前缀失效,因为清理内容会修改提示结构,破坏缓存命中的匹配要求。为了解决这个问题,我们建议清理足够的令牌,使缓存失效变得值得。使用 clear_at_least
参数确保每次清理最少数量的令牌。当将提示缓存与上下文编辑一起使用时,每次清理内容时都会产生缓存写入成本,但后续请求可以重用新缓存的前缀。
支持的模型
上下文编辑可用于:- Claude Opus 4.1 (
claude-opus-4-1-20250805
) - Claude Opus 4 (
claude-opus-4-20250514
) - Claude Sonnet 4.5 (
claude-sonnet-4-5-20250929
) - Claude Sonnet 4 (
claude-sonnet-4-20250514
)
基本用法
启用上下文编辑的最简单方法是仅指定策略类型,因为所有其他配置选项都将使用其默认值:高级配置
您可以使用其他参数自定义上下文编辑行为:配置选项
配置选项 | 默认值 | 描述 |
---|---|---|
trigger | 100,000个输入令牌 | 定义上下文编辑策略何时激活。一旦提示超过此阈值,就会开始清理。您可以用 input_tokens 或 tool_uses 指定此值。 |
keep | 3个工具使用 | 定义清理发生后保留多少个最近的工具使用/结果对。API首先移除最旧的工具交互,保留最近的。 |
clear_at_least | 无 | 确保每次策略激活时清理最少数量的令牌。如果API无法清理至少指定的数量,则不会应用该策略。这有助于确定上下文清理是否值得破坏您的提示缓存。 |
exclude_tools | 无 | 永远不应清理其工具使用和结果的工具名称列表。对于保留重要上下文很有用。 |
clear_tool_inputs | false | 控制是否与工具结果一起清理工具调用参数。默认情况下,只清理工具结果,同时保持Claude的原始工具调用可见。 |
响应格式
您可以使用context_management
响应字段查看哪些上下文编辑应用于您的请求,以及关于清理的内容和输入令牌的有用统计信息。
Response
message_delta
事件中:
Streaming Response
令牌计数
/v1/messages/count_tokens 端点支持上下文管理,允许您预览应用上下文编辑后您的提示将使用多少令牌。Response
input_tokens
)和发生任何清理之前的原始令牌计数(original_input_tokens
)。