Paying for the same answer again
FAQ bots, retries and popular prompts generate identical calls all day.
Caching
Real traffic repeats itself. When the same prompt arrives again inside the cache window, we return the stored answer at once and bill nothing for it. No configuration needed.
served straight from cache
cached responses are free
nothing to configure
The problem
FAQ bots, retries and popular prompts generate identical calls all day.
Users wait for a fresh generation of an answer you already have.
Rolling your own cache means keys, eviction and invalidation to maintain.
Capabilities
Prompts are matched after trimming, lowercasing and collapsing whitespace, together with the model and temperature.
Cache entries are scoped to your account. Nobody else's traffic can hit your cache.
Cached responses report cache_hit true and a price of zero.
The response status field reads cached, so your code always knows.
Entries expire after the cache window, so answers do not linger indefinitely.
Cache hits appear in request history, so you can see how much traffic repeats.
Use cases
Common questions answered instantly.
A repeated request returns the stored answer instead of a new bill.
Trending prompts served at cache speed.
Re-running the same test prompt costs nothing.
How it works
The first call is generated and stored for your account.
The same prompt, model and temperature inside the window is a cache hit.
The response tells you it was cached and priced at zero.
Control
API keys are shown once at creation and stored only as a hash. Revoke any key instantly from Settings.
Every request carries its own receipt: tokens in, tokens out, latency and price. Nothing is billed that you cannot trace.
Per-account rate limits and a free monthly allowance keep experiments safe before they become production.
You choose exactly what you send. Repeat prompts can be served from your cache, and cache hits are never billed.
For developers
Send a prompt and a capability, or name a model. One bearer key, one small JSON body, and a full receipt on every response.
curl https://YOUR-DOMAIN/api/ainf/inference \
-H "Authorization: Bearer $AI_INFERENCE_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-1042" \
-d '{"prompt":"Summarise this ticket in one line","capability":"chat"}'The prompt after trimming, lowercasing and collapsing whitespace, plus the same model and temperature.
For the account's cache window. After it expires the next call is generated fresh.
Change the prompt or the temperature and it becomes a different cache entry.
Cached calls are priced at zero. They still appear in history so you can see them.
Caching is on from your first request. Start free.