PCACHE.SET
PCACHE.SET namespace prompt response [TTL seconds] [META metadata] [MODEL model [INPUT n] [OUTPUT n] [CACHEREAD n] [CACHEWRITE5M n] [CACHEWRITE1H n]]
- Group
- Prompt cache
- Complexity
- O(1)
- Arity
- -4 (at least 4 words, counting the command name)
- Flags
- write, fast
- Keys
- first 1, last 1, step 1
- HotKV Cloud
- Performance and Scale
- On-Premise
- requires the prompt-cache license feature
The prompt cache is an exact-match cache for LLM prompt and response pairs, organised in named namespaces. PCACHE.SET stores response under the exact prompt string in
namespace. If the prompt is already cached, its response, metadata, usage
and expiry are replaced. The namespace must exist (see PCACHE.CREATE).
Options
Section titled “Options”| Option | Effect |
|---|---|
TTL seconds |
Time to live for this entry. 0 or omitted uses the namespace’s default TTL. |
META metadata |
Any string you want to keep with the entry, such as JSON. PCACHE.GETEX returns it. |
MODEL model |
The model that produced the response. Required when you pass any token count below. |
INPUT n |
Uncached input tokens the original call used. |
OUTPUT n |
Output tokens the original call used. |
CACHEREAD n |
Provider cache-read tokens the original call used. |
CACHEWRITE5M n |
Tokens the original call wrote to a 5-minute provider cache. |
CACHEWRITE1H n |
Tokens the original call wrote to a 1-hour provider cache. |
Options come in name and value pairs after response, in any order.
The usage options record what the original, uncached model call consumed.
Every later hit on the entry adds those tokens to the namespace’s
usage_saved_* counters, and when the model has a price (built in, or set
with LLMSTATS.PRICE) it also adds the cost those
tokens would have had to usage_saved_cost_usd. Token counts are
non-negative integers. Passing a token count without MODEL is rejected.
Return value
Section titled “Return value”| Case | RESP2 | RESP3 |
|---|---|---|
| Entry stored | Simple string OK |
Same |
Errors:
ERR namespace not foundif the namespace does not exist.ERR syntax errorif an option has no value.ERR unknown optionfor any other option name.ERR invalid TTLifTTLis not a non-negative integer.ERR usage token counts (INPUT, OUTPUT, CACHEREAD, CACHEWRITE5M, CACHEWRITE1H) need MODELif you pass a token count withoutMODEL.ERR invalid INPUT,ERR invalid OUTPUT,ERR invalid CACHEREAD,ERR invalid CACHEWRITE5MorERR invalid CACHEWRITE1Hif a token count is not a non-negative integer.ERR wrong number of arguments for 'pcache.set' commandif the argument count is wrong.NOLICENSE prompt-cache requires a HotKV license. Contact sales@hotkv.comif your license does not include theprompt-cachefeature.
Examples
Section titled “Examples”127.0.0.1:6379> PCACHE.SET llm_prompts "Translate: Hello" "Bonjour"OK127.0.0.1:6379> PCACHE.SET llm_prompts "Translate: Hello" "Bonjour" TTL 600 META "{\"lang\":\"fr\"}"OK127.0.0.1:6379> PCACHE.SET llm_prompts "Translate: Hello" "Bonjour" MODEL gpt-4o INPUT 20 OUTPUT 3OK127.0.0.1:6379> PCACHE.SET llm_prompts "Translate: Hello" "Bonjour" INPUT 20(error) ERR usage token counts (INPUT, OUTPUT, CACHEREAD, CACHEWRITE5M, CACHEWRITE1H) need MODELCompatibility
Section titled “Compatibility”HotKV-only command. Redis and Valkey have no equivalent.
See also
Section titled “See also”PCACHE.CREATE, PCACHE.GET, PCACHE.GETEX, PCACHE.DEL, PCACHE.STATS, PCACHE.FLUSH, PCACHE.DROP, PCACHE.LIST, PCACHE.CONFIG, AI features guide
Was this page helpful?
Thanks for the feedback.