İçeriğe geç

Gemini Explicit Context Caching: Manuel Cache Yönetimi

Google Gemini'nin caching API'si üçüncü bir yaklaşım: explicit ama persistent. CachedContent objelerini manuel oluşturur, TTL ile saatlik storage ücreti ödersin. 1M-2M context'te oyunu değiştiren teknik.

Şükrü Yusuf KAYA
16 dakikalık okuma
Orta

Gemini Explicit Context Caching

Google Ocak 2024'te explicit caching ile geldi. Anthropic'ten önce. Felsefesi farklı:
  • Persistent cache objects — sen
    CachedContent
    yaratırsın, kimlik (
    name
    ) verir
  • Manuel TTL — istediğin kadar sürdür (default 1 saat, max yok)
  • Storage maliyeti — saatte 0.31/Mtoken(Pro),0.31/M token (Pro), 0.075/M (Flash)
  • API ayrı
    client.caches.create()
    cached_content="cached_id"
Bu yaklaşım 1M+ context ile gerçekten devrim. Çünkü 1M doc'u her sorguda yeniden yüklemek pratik değil.

Mimari#

API Kullanımı#

python
# pip install google-generativeai
import google.generativeai as genai
 
genai.configure(api_key="YOUR_KEY")
 
# 1. Cache objesi yarat
LONG_DOC = open("100_page_handbook.pdf").read() # 200K+ token olabilir
 
cache = genai.caching.CachedContent.create(
model="gemini-2.5-pro",
contents=[
{"role": "user", "parts": [{"text": LONG_DOC}]}
],
system_instruction="Sen bir dokuman özetleme asistanısın.",
ttl="3600s", # 1 saat
display_name="my-handbook-cache",
)
 
print(f"Cache yaratıldı: {cache.name}")
# Çıktı: cachedContents/abc123xyz
 
# 2. Cache'i kullan
model = genai.GenerativeModel.from_cached_content(cache)
 
response = model.generate_content("Önemli noktaları 5 maddede özetle")
print(response.text)
 
# 3. Cache'i sil (manuel — TTL bitmeden bitirebilirsin)
cache.delete()
Gemini CachedContent — uçtan uca
Persistent vs Ephemeral
Anahtar fark: Anthropic ve OpenAI cache'leri ephemeral — TTL bitince yokoluyor. Gemini'de cache objesi, ona istek atana kadar duruyor (TTL ile süreliyle). API'ye referans veriyorsun.

Storage Ücreti Anlamak#

Gemini'nin saatlik storage ücreti gizli faturadır:
ModelStorage ($/M token/saat)Read ($/M token)
Gemini 2.5 Pro$0.31$0.31
Gemini 2.5 Flash$0.075$0.075
Pratik hesap:
  • 1M tokenlık doc'u 24 saat cache'te tut: 24 × 0.31=0.31 = 7.44 storage
  • Aynı doc'a saatte 100 sorgu yap: 100 × 24 × 1M × 0.31/M=0.31/M = **744 read**
Storage maliyeti read'in %1'i bile değil trafikli senaryolarda. Düşük trafikli olunca dengeleniyor.
Gemini Pro için:
Yani saatte 1 sorgu bile, 1M tokenı cache'lemek kârlı. Yine de uzun süre tutarken bu "background" maliyete dikkat et.

Ne Zaman Gemini Cache?#

SenaryoCache Açar mı?
1M token doc, günde 10 sorgu✅ Kesin aç
50K doc, günde 100 sorgu✅ Aç (Anthropic da olur)
5K doc, günde 1000 sorgu⚠️ Marjinal — Anthropic daha iyi
100 token query, dinamik❌ Cache anlamsız
2M doc, haftada 1 sorgu❌ Storage maliyeti aşar

✓ Pekiştir#

Bir Sonraki Derste#

Gemini'yi gerçekten kullanacağız: 1M token doküman üzerinde 100 farklı soru sorup cost'u yan yana ölçeceğiz.

Sık Sorulan Sorular

Evet, 32.768 token. Anthropic ve OpenAI'a göre çok daha yüksek. Bu yüzden Gemini caching küçük promptlar için pratik değil — uzun context için tasarlandı.

Yorumlar & Soru-Cevap

(0)
Yorum yazmak için giriş yap.
Yorumlar yükleniyor...

İlgili İçerikler