ai-cache
ai-cache 插件会缓存 LLM 服务的响应,使重复请求直接从缓存返回,而不再次调用上游模型。这可以降低重复提示词的响应延迟,并减少上游 Token 用量。
该插件支持精确匹配缓存:仅当规范化后的请求与此前缓存的某个请求完全相同时,才会复用其响应。它还可以启用语义 缓存层,在精确匹配未命中后通过 Redis Search 比较提示词向量嵌入。
按请求格式处理
插件会将检测到的不同请求格式保存在不同的缓存条目中。
网关会先检查 URI 特定规则,再检查仅基于请求体的规则,以识别请求格式:
- Bedrock Converse 要求 URI 以
/converse结尾且包含messages数组。 - Anthropic Messages 要求 URI 以
/v1/messages结尾。 - Responses API 要求 URI 以
/v1/responses结尾且包含input字段。 - Chat Completions 使用
messages数组。 - 当前面的规则均不匹配时,Embeddings 使用
input。 - 当前面的规则均不匹配时,其他非空 JSON 对象使用透传格式。
| 请求格式 | 精确匹配缓存 | 语义缓存 |
|---|---|---|
| Bedrock Converse | 支持 | 绕过 |
| Anthropic Messages | 支持 | 绕过 |
| Responses API | 支持 | 绕过 |
| Chat Completions | 支持 | 支持 |
| Embeddings | 支持 | 绕过 |
| 其他 JSON(透传) | 支持 | 绕过 |
精确匹配缓存自 API7 企业版 3.9.16、3.10.2 以及 APISIX 3.18.0 起可用。
语义缓存和流式响应缓存自 API7 企业版 3.9.16、3.10.3 以及 APISIX 3.18.0 起可用。