Skip to main content
专为托管在 AWS Bedrock 上的模型设计的中间件。了解更多关于 中间件 的信息。

提示词缓存

通过在 Amazon Bedrock 上缓存频繁重用的提示词前缀,降低推理延迟和输入令牌成本。此中间件会在系统提示词、工具定义和最近的消息之后自动放置缓存检查点,以便模型在后续请求中跳过对先前所见内容的重新计算。 提示词缓存适用于以下场景:
  • 具有长且一致的系统提示词的多轮对话
  • 拥有大量跨调用保持不变的工具体系定义的代理
  • 基于文档的问答,用户针对同一上传上下文提出多个问题
  • 具有重复静态内容的批处理工作负载
支持的模型:
  • Anthropic Claude
  • Amazon Nova
了解更多关于 AWS Bedrock 提示词缓存 策略和限制的信息。缓存内容必须超过 1,024 个令牌,缓存检查点才会生效,具体取决于模型有时可能更多。请参阅 支持的模型、区域和限制
API 参考: BedrockPromptCachingMiddleware
ChatBedrockConverse
ChatBedrock
string
default:"ephemeral"
缓存类型。对于 ChatBedrock,目前仅支持 'ephemeral'。对于 ChatBedrockConverse,此值被忽略,因为 Converse API 始终使用 "default" 缓存类型。
string
default:"5m"
缓存内容的生存时间。有效值:'5m''1h'。请注意,Amazon Nova 模型仅支持 '5m'
number
default:"0"
开始缓存前的最小消息数量。
string
default:"warn"
使用不支持的模型时的行为。选项:'ignore', 'warn', 或 'raise'
该中间件会缓存每个请求中直到并包括最新消息的内容。在 TTL 窗口内(5 分钟或 1 小时)的后续请求中,先前看到的内容将从缓存中检索而不是重新处理,从而降低成本和延迟。工作原理:
  1. 首次请求:系统提示词、工具和用户消息被发送到 API 并缓存
  2. 第二次请求:从缓存中检索缓存的内容。只需处理新消息
  3. 此模式在每个回合继续,每个请求重用缓存的对话历史
提示词缓存通过缓存令牌来降低 API 成本,但提供对话记忆。要在跨调用中持久化对话历史,请使用类似 MemorySaver检查点器

特定于模型的行为

该中间件会自动处理 API 和模型系列之间的差异: