Platform
Anthropic Tier-1 optimizations
eli.ai is provider-agnostic, but not provider-naive. Providers fall into tiers by how deeply the platform exploits their native capabilities, and Tier-1 (Anthropic) slots get provider-native optimizations applied automatically — adaptive extended thinking on reasoning-heavy slots and prompt caching on all slots — with zero configuration and a one-flag opt-out.
The tier model
- Tier-1 — Anthropic. Full capability exploitation: the routing layer knows the model family behind the slot and turns on native features that improve quality or cut cost, automatically.
- Tier-2 — other frontier providers (OpenAI, Google). First-class support through the standard slot interface; provider-specific extras are used where the Vercel AI SDK exposes them, but nothing is auto-applied beyond the portable baseline.
- Tier-3 — OpenAI-compatible endpoints and the Ollama bridge.The portable baseline only, gated by the endpoint's declared capability toggles.
Every tier goes through the same choke point — resolveModel(workspaceId, slot) — so tiering changes how a call is made, never how it is accounted, budgeted, or allowlisted. See Multi-provider AI.
What Tier-1 auto-applies
Adaptive extended thinking — agent and judge slots
When the agent or judge slot resolves to a Claude 4.6-or-later model, calls are made with adaptive thinking (thinking: { type: "adaptive" }): the model decides when and how deeply to reason, including interleaving thinking between tool calls in agent loops. These are the two slots where reasoning depth pays for itself — multi-step agent runs and eval judging. Chat, extraction, and embeddings slots are untouched: fast-path tasks where added thinking is latency, not quality.
- Applied only for Claude 4.6+ model ids — older Claude models on the same slot keep their existing behavior (the platform never sends the deprecated fixed thinking-budget form).
- Thinking tokens flow through the same accounting middleware as everything else, so the cost shows up in
llm_callslike any other spend.
Prompt caching — all slots
Every Anthropic call gets prompt caching: cache breakpoints (cache_control: { type: "ephemeral" }) are placed at the stable/volatile boundary of the assembled prompt — system prompt and tool definitions first, per-request content after. eli.ai's prompt assembly is built to be cache-friendly (frozen system prompts, deterministic tool ordering), so repeated agent steps and retrieval-grounded chats read most of their prefix at a fraction of the input price. Cache read/write tokens are recorded separately on each llm_calls row, so the savings are visible in the cost dashboard, not just claimed.
Opting out
Tier-1 behavior is on by default and controlled per slot. Set params.tier1 to falseon a slot's configuration to make its calls with the plain portable baseline — useful when benchmarking providers head-to-head, or when a proxy in front of the Anthropic API mishandles the extra fields.
The portable layer stays portable
Tier-1 optimizations are strictly additive call-level flags. Everything stateful — durable agent memory, context assembly, run cursors, retrieval, conversation history — lives in Postgres and works identically on every provider. Point the agent slot at GPT, Gemini, or a local model and nothing about memory or context changes; you lose only the Anthropic-native call optimizations. No knowledge or state is ever held hostage by a provider feature.
Server-side memory & context editing: future work
Related
- Multi-provider AI — slots, providers, and the resolveModel choke point.
- Durable agent memory — the portable state layer Tier-1 never touches.
- Cost & schedules — where cache savings and thinking spend show up.