Skip to content

Compare

MorrowCache vs GPTCache

GPTCache is the best-known open-source semantic cache: a Python library that embeds prompts and returns a stored answer when a new prompt is similar enough. MorrowCache is a local HTTP proxy that an LLM judge gates. Here is how they differ and when to pick each.

Updated

At a glance

GPTCacheMorrowCache
FormPython library (optional server image)Local proxy: npx or Docker
LanguagesPython in-process; others via its serverAny client that can set an OpenAI base URL
Hit decisionEmbedding search, then an evaluator against similarity_threshold (default 0.8)Exact hash, then a shortlist an LLM judge must admit
StoragePluggable: SQLite, MySQL, Postgres and vector stores such as Milvus or FAISSSQLite via Node's built-in node:sqlite, one process
FreshnessEviction policies you configure; no time-sensitivity check documentedTime-sensitive questions refused; TTL by freshness class
Tool callsNot covered in its docsResponses with tool_calls are never stored
Agent retriesNot a documented featureTurn cache: same prior turns plus same-intent latest ask
Extra cost per checkLocal embeddingA judge call (about $0.00002 with the cloud judge) or a local judge
LicenseMITMIT
Release activityLast tagged release 0.1.44, August 20242.0.2, November 2026

Where GPTCache wins

  • It runs in your Python process, so a hit costs a local embedding and a vector lookup, not a network call.
  • Storage and embedding backends are pluggable, including vector databases that scale past one machine.
  • It has a larger community, about 8,000 GitHub stars, and years of examples.
  • With no judge, there is no per-check model cost.

Where MorrowCache wins

  • It does not need to live in your code. Point any OpenAI-compatible client at http://127.0.0.1:8080/v1: Node, Python, Go, curl or a coding agent.
  • Similarity only proposes candidates. A judge decides whether two prompts ask the same thing, which is aimed at the near-miss problem that Thoughtworks flagged as false positives during cache hits.
  • It refuses time-sensitive questions and never replays tool calls.
  • It handles agent retries and streams a stored final answer.

Verdict

Pick GPTCache if you are in Python, want everything in-process and are comfortable tuning a similarity threshold. Pick MorrowCache if you want a drop-in proxy for any client, or your traffic includes agents and tool calls where a wrong hit is expensive. For the background, read where semantic caches go wrong.

FAQ

Is there a GPTCache alternative for Node.js or any language?
MorrowCache runs as a local HTTP proxy that speaks the OpenAI Chat Completions API, so any language or SDK that lets you set a base URL can use it. GPTCache is a Python library.
Is GPTCache still maintained?
Its last tagged release is 0.1.44 from August 2024, and its README says it is no longer adding new API or model adapters. The repository has still received commits since then.

Try it on your own traffic.

npx @kushalicious/jevcache@latest start --demo

Set it up