据 MarkTechPost 报道,Redis 推出全托管语义缓存服务 LangCache,用于减少大语言模型应用对相同意图问题的重复调用。该服务位于应用与模型之间,按语义而非文字完全匹配比对提示,找到足够接近的已存回答时直接返回。Redis 表示,其 API 成本最高可节省 90%,缓存命中响应比重新查询模型快至多 15 倍。LangCache 目前以公开预览形式在 Redis Cloud 提供,通过 REST API 访问,并提供 Python 和 JavaScript SDK;Redis 提示预览期间功能和行为可能变化。
Redis 用客服助手的三个提问说明问题:“购买月度计划后可以退款吗?”“月度订阅可退款吗?”“可以取消计划并拿回钱吗?”措辞不同,但问题与答案相同。没有语义缓存时,每个版本都会触发完整生成,处理输入 token、解码输出 token,并让用户等待。前缀缓存只能复用共享前缀的 KV 状态,请求仍会到达 LLM,新 token 仍会被处理,完整回答仍会被解码。前缀缓存命中是一次更便宜的生成调用,而不是被避免的调用。
据 MarkTechPost 介绍,LangCache 将缓存移到模型之外,存储生成后的回答本身。调用模型前,应用将提示发送至 POST /v1/caches/{cacheId}/entries/search;服务生成嵌入向量并运行向量搜索,若语义相似条目超过相似度阈值,就返回缓存回答,不发生 LLM 调用。未命中时,应用照常调用 LLM,再通过 POST /v1/caches/{cacheId}/entries 存储提示和新回答。缓存行为由相似度阈值、TTL 和逐出策略控制。该服务基于 Redis 向量数据库,以 REST API 暴露,可与任何 LLM 提供商和语言配合,命中率和节省情况可在 Redis Cloud 控制台监控。
一次演示比较两种路径:对改写问题直接推理耗时 2.232 秒,消耗 514 个输入 token 和 250 个输出 token;LangCache 在 0.37 秒内返回此前回答,LLM 输入和输出 token 均为零,该次运行约快 6 倍。Redis 文档称,缓存响应无需支付输出 token 费用,输入 token 成本通常由嵌入和存储成本抵消,建议估算为每月节省额等于每月输出 token 成本乘以缓存命中率。若每月 LLM 支出 200 美元,其中 60% 为输出 token,命中率 50%,则每月节省 60 美元。Redis 还发布了年度估算计算器。
Redis 公开预览公告提到缓存命中响应最高快 15 倍、token 使用量降低最高 70%,当前产品页面则称节省最高可达 90%。客户 Mangoes.ai 报告,在其患者护理语音应用中命中率为 70%,LLM 支出削减 70%,响应速度提高 4 倍。实际结果取决于流量中存在多少可安全重复的内容。
语义缓存需要决定哪些问题可以安全共享回答。阈值过低会把退款政策返回给询问升级的客户;阈值过高则几乎每个改写问题都回到模型,缓存难以收回成本。生产部署需要调校阈值、设置过期策略、在租户间隔离数据,并监控错误匹配。LangCache 通过访问范围、自定义过滤、TTL 和逐出控制以及 Redis Cloud 监控覆盖这些需求。Redis 表示数据留在客户的 Redis 服务器上,其不会访问这些数据,也不会用其训练模型。