Gemini Context Caching: Storage Fee + Read Fee Model and Low-Traffic Advantage
Gemini's caching pricing is unique: normal cache create, then $1/M token/hour storage fee + 0.25× read fee. Can be more economical than Anthropic in low-traffic, low-frequency scenarios.
Şükrü Yusuf KAYA
16 min read
Intermediate🟦 Gemini'nin alternatif modeli
Google, prompt caching'i farklı bir paradigmayla yapıyor: "Cache'i sen yaratıp manage edersin, ama her saat kira ödersin." Bu, bazı senaryolarda Anthropic'ten ekonomik.
Gemini Cache Pricing (Mayıs 2026)#
| İşlem | Maliyet |
|---|---|
| Cache create | Standart input fiyatı (1×) — zam yok |
| Storage | $1.00/M token/saat |
| Cache read | 0.25× normal input |
Gemini 2.5 Pro örnek#
- Standart input: $1.25/M
- Cache create: $1.25/M (no surcharge ✅)
- Storage: $1/M/saat
- Cache read: $0.3125/M
Anthropic Sonnet 4.6 ile karşılaştırma:
| Model | Write | Read | Storage |
|---|---|---|---|
| Sonnet 4.6 (1h TTL) | $6.00/M (2×) | $0.30/M | — (TTL'de dahil) |
| Gemini 2.5 Pro (1h) | $1.25/M | $0.3125/M | 1/M |
Total Gemini 1h: 1.25 + 1 = 0.31. Anthropic 1h: 0.30.
Yüksek-trafik: Anthropic write maliyeti amortize olur, daha ucuza geliyor.
Düşük-trafik: Gemini write ucuz, storage 1 saatlik fixed — Anthropic'ten ekonomik olabilir.
TTL Kontrolü — Gemini'nin Esnekliği#
Gemini'de TTL'i sen seçiyorsun:
from google import genai cache = client.caches.create( model="gemini-2.5-pro", config={ "contents": [{"role": "user", "parts": [{"text": LARGE_CONTEXT}]}], "system_instruction": SYSTEM_PROMPT, "tools": tools, "ttl": "3600s", # 1 hour, ya da "300s" 5 dakika, ya da daha uzun }, ) # Sonra cache'i kullanarak çağrı yap response = client.models.generate_content( model="gemini-2.5-pro", contents="User question here", config={"cached_content": cache.name}, )
TTL Stratejisi#
TTL'i ne kadar tutmalı?
TTL × $1/M/saat = storage maliyet/M token 5 dakika = ~$0.083/M (storage minimal) 30 dakika = $0.50/M 1 saat = $1.00/M (1× normal input) 2 saat = $2.00/M (2× normal input!)
Storage 1 saatlik break-even noktası. Daha uzun TTL pahalı — write'ı minimize ediyorsun ama storage bedeli büyüyor.
Karar formülü#
Optimal TTL ≈ İki ardışık istek arası beklenen süre Beklenen süre 3dk → TTL 5dk yeterli (storage çok az) Beklenen süre 30dk → TTL 30-60dk Beklenen süre 2 saat → Cache değmez, normal kullan
Use Case'lere Göre Cache Karşılaştırma#
Use Case 1 — Yüksek-trafik chatbot (100K req/saat aynı prefix)#
| Sağlayıcı | Yöntem | Aylık maliyet (10K input/req) |
|---|---|---|
| Anthropic 5dk | Cache write her 5dk, read sonra | $4.500 |
| OpenAI auto | Otomatik 5-10dk | $5.200 |
| Gemini 1h | 1h cache + 100K read | $8.000 |
Yüksek-trafik: Anthropic veya OpenAI kazanıyor.
Use Case 2 — Orta-trafik (1K req/saat)#
| Sağlayıcı | Aylık |
|---|---|
| Anthropic 1h | $1.200 |
| OpenAI auto | $1.400 (cache TTL kısıt için daha kötü) |
| Gemini 1h | $1.100 ✅ |
Orta-trafik: Gemini'nin esnekliği avantaj.
Use Case 3 — Düşük-trafik B2B (50 req/saat)#
| Sağlayıcı | Aylık |
|---|---|
| Anthropic 1h | $480 (write maliyeti yüksek) |
| OpenAI auto | $620 |
| Gemini 30dk | $320 ✅ |
Düşük-trafik: Gemini açık ara önde.
Pratik Implementasyon#
from google import genai from google.genai.types import CreateCachedContentConfig client = genai.Client() # Şirket için tek bir cache oluştur (uzun TTL) def create_company_cache(system_instruction: str, knowledge_base: str): cache = client.caches.create( model="gemini-2.5-pro", config=CreateCachedContentConfig( system_instruction=system_instruction, contents=[{ "role": "user", "parts": [{"text": knowledge_base}], }], ttl="3600s", # 1 saat display_name="company-faq-cache", ), ) return cache.name # caches/abc123... # Cache'i kullanan request'ler def cached_chat(user_query: str, cache_name: str): response = client.models.generate_content( model="gemini-2.5-pro", contents=user_query, config={ "cached_content": cache_name, "max_output_tokens": 500, }, ) return response # Production pattern COMPANY_CACHE = create_company_cache(SYSTEM, KNOWLEDGE_BASE) # 1 saatlik validity. Cron job ile her 50 dakikada bir refresh.
Sınırlamalar#
1. Min cache size — 4096 token#
Anthropic min 1024'ten daha yüksek. Küçük prompt'lar cache'lenemez.
2. Max cache size — 2M token#
Gemini'nin 2M context limit'i ile aynı. Pratik sınırsız.
3. Cache invalidation otomatik değil#
TTL süresinden önce cache'i değiştirmek istersen, explicit silmen lazım:
client.caches.delete(name=cache_name)
Yenisini yarat. Hash-based otomatik invalidation yok Anthropic'in aksine.
4. Tek-cache her seferde#
Multi-breakpoint Anthropic'tekiniden farklı. Eğer 3 katmanlı cache istiyorsan, Gemini'de tek cache'te birleştirip yönetmek zorundasın.
5. Vertex AI'da farklılık#
Vertex'te desteklenir ama pricing biraz farklı. Vertex enterprise tier'a göre değişir.
cachedContentKarar Özeti — 2026 Cache Strateji Matrisi#
| Senaryo | En İyi |
|---|---|
| Yüksek-trafik (100+ req/dk) aynı prefix | Anthropic 5dk |
| Orta-trafik (10-100 req/dk) | Anthropic 1h, Gemini 1h yakın |
| Düşük-trafik (<10 req/dk) | Gemini esnek TTL |
| OpenAI ekosistem | OpenAI automatic (zero-effort) |
| Multi-layer cache gerekli | Anthropic (4 breakpoint) |
| Maliyet kontrolü kritik | Anthropic (%90 indirim) |
| Hızlı POC | OpenAI automatic |
Bu kursta Anthropic'i en çok kullanma sebebi yukarıdaki tabloda netçe görülüyor: Türkiye'deki tipik B2B SaaS yüksek-trafik + Türkçe + multi-layer ihtiyacı = Anthropic sweet spot.
▶️ Sıradaki ders
7.4 — Cache-Friendly Mimari: Statik Baş, Dinamik Kuyruk. Pattern level: prompt'unu hangi sırayla yazsan cache hit ratio'yu maksimize edersin? Conversation history, RAG chunks, tool definitions — hangisi nereye gelir?
Frequently Asked Questions
Two options: (1) Rolling — create new cache near TTL expiry, (2) Lazy refresh on-demand. For high traffic, rolling is better (no TTL gap); for low traffic, lazy is more efficient.
Yorumlar & Soru-Cevap
(0)Yorum yazmak için giriş yap.
Yorumlar yükleniyor...
Related Content
Module 0: Why Cost, Why Now?
The AI Cost Explosion: Why Token Prices Fell 96% from 2022 to 2026 — Yet Bills Grew 40×
Start LearningModule 0: Why Cost, Why Now?
Unit Economics Vocabulary: COGS, Gross Margin, $/User, Contribution Margin — 9 Financial Concepts Every AI Engineer Must Know
Start LearningModule 0: Why Cost, Why Now?