GPTCache
为大模型API调用构建语义缓存,成本直降10倍、响应提速100倍,零代码接入LangChain
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
为大模型API调用构建语义缓存,成本直降10倍、响应提速100倍,零代码接入LangChain
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
凌晨两点,一款 AI 问答产品负责人突然收到告警:API 调用量一夜之间暴增 10 倍,ChatGPT 的账单金额也随之飙升。追查原因才发现,是某篇热门文章引发的用户涌入,同一个问题被问了几千遍,但每一次都要付费调用大模型 API——既费钱,又慢。
这个场景几乎是所有 LLM 应用开发者的共同噩梦。而 GPTCache(Semantic Cache for LLM Queries)正是为解决这一痛点而生的开源利器:它为 LLM 查询构建"语义缓存",让语义相似的问题共享同一个答案,成本直降 10 倍,响应速度提升 100 倍。
GPTCache 由 Zilliz 团队开发和维护。Zilliz 可能不为大众所熟知,但在 AI 向量数据库领域,它是毋庸置疑的标杆——其开源产品 Milvus 是全球最流行的向量数据库之一,被数千家企业用于生产环境。GPTCache 是 Zilliz 生态的又一延伸,专注于解决 LLM 应用中的成本与延迟问题。
项目于 2023 年 3 月 开源,不到两年时间已积累 8000+ Stars,长期位居 GitHub Trending 榜单,是 LLM 缓存领域毫无争议的明星项目。维护者 SimFG 保持高频迭代,2025年7月仍有 push 记录,生态活跃度很高。
传统缓存依赖"精确匹配"——只有问题完全一样才能命中缓存。但 LLM 查询的自然语言特性决定了:同一个问题往往有千百种表达方式。
GPTCache 的解决思路:将用户查询转换为向量(Embedding),存入向量数据库,通过**近似最近邻搜索(ANN)**找到语义最接近的历史查询,直接复用已有答案。
具体流程如下:

图1:GPTCache 架构图 — 展示了语义缓存的完整数据流向
用户查询进来后,经过以下四个关键模块:

图2:GPTCache 整体架构 — 模块化设计,各组件可自由替换
GPTCache 对已有 LangChain/LlamaIndex 应用几乎零侵入。如果你的代码用的是 OpenAI API,只需加上几行:
from gptcache import cache
from gptcache.adapter import openai
cache.init()
cache.set_openai_key()
同样的 OpenAI 调用,缓存自动生效——第一次调真实 API,后续相似问题走缓存。这对于想快速验证效果、又不希望改动业务代码的团队来说,极其友好。
GPTCache 不只是 OpenAI 的缓存。它通过模块化的 LLM Adapter 接入多种大模型和 AI 服务:
单节点缓存只服务于单机,当你有多个微服务实例、需要跨节点共享缓存时,GPTCache 的分布式模式提供了完整解决方案:

图3:GPTCache 分布式搜索 — 多节点协同,保证高并发下的缓存一致性
通过 Redis 或 Memcached 实现分布式缓存协调,GPTCache 可以水平扩展到多个副本,支撑高并发场景:

图4:GPTCache 多节点架构 — 支持多副本横向扩展,保障高可用
GPTCache 支持 LRU、FIFO、LFU 三种缓存淘汰策略,开发者可以根据业务特点选择最合适的策略,避免内存溢出。
GPTCache 还提供了独立的 Server 模式,通过 Docker 部署后,任何语言(Python、Java、Go、JavaScript……)都可以通过 HTTP API 调用缓存服务。这意味着不仅 Python 项目能用,前端应用、微服务架构都能无缝集成。
GPTCache 的架构之美在于其高度解耦的模块化设计。每个核心组件(Embedding、Vector Store、Cache Storage、Similarity Evaluator)都有统一的抽象接口,可以自由替换实现。
这种设计带来了极大的灵活性:
同时,GPTCache 也自带一套基准测试工具,帮助开发者量化评估缓存命中率、延迟和召回率,找到最适合自己的配置组合。
GPTCache 的安装极其简单:
pip install gptcache
如果需要 Docker Server 模式:
docker run -p 8000:8000 gptcache/gptcache
整个依赖栈非常轻量:核心只需要 numpy、cachetools、requests 三个包,其他依赖按需自动安装。
GPTCache 并非银弹,以下问题值得注意:
GPTCache 的出现折射出一个大趋势:随着 LLM 应用规模扩大,成本优化和性能提升将从"可选项"变成"必选项"。
在 OpenAI 每 1K Token 收费、Claude API 按请求计费的商业模式下,缓存的价值不言而喻。GPTCache 代表了 LLM 应用基础设施的一个重要分支——类比传统 Web 应用中的 Redis,它的语义缓存版本正在成为 AI 应用栈的标准组件。
GitHub 上 8000+ Stars、深度集成 LangChain 和 LlamaIndex、以及 Zilliz 团队持续的维护投入,都在印证这一方向的市场认可度。