AI Mimarisi

Prompt Caching Mimarisi: Anthropic ve Gemini API'lerinde KV-Cache ile Maliyet ve Gecikmeyi %90 Azaltma

Tekrarlanan sistem promptları, uzun API dokümantasyonları ve kod tabanı yüklemelerinde Prompt Caching kullanarak faturaları ve gecikmeyi radikal şekilde azaltın.

Güncellendi: 9 Eylül 20265 dk
Paylaş:XLinkedIn

Özet & Doğrudan Çözüm (TL;DR)

Prompt Caching; büyük dil modellerine gönderilen statik sistem talimatları, şirket içi bilgi bankaları veya yüzlerce sayfalık kod tabanı gibi tekrarlayan ön eklerin (prefixes) her istekte GPU üzerinde yeniden hesaplanmak yerine önbelleğe alınmış Anahtar-Değer (KV - Key-Value) tensörlerinden okunması mimarisidir. Bu yöntem, önbellekten okunan token maliyetlerini %75 ila %90 oranında düşürürken, ilk token tepki süresini (TTFT) saniyelerden milisaniyelere indirir.

Önemli Çıkarımlar:

  • Transformatör KV-Cache Mantığı: Tekrarlanan girdiler için GPU matris çarpımları atlanır, hafızadaki tensörler anında yeniden kullanılır.
  • %90 Finansal Tasarruf: Anthropic'te yazma maliyetine kıyasla okuma maliyeti %90 indirimle faturalandırılır.
  • Dramatik Gecikme Düşüşü: 50.000 tokenlık bir bağlamda ilk yanıt süresi 15 saniyeden 800 milisaniyeye kadar geriler.
  • Ön Ek Sıralaması (Prefix Ordering): Değişmeyen verilerin (dokümantasyon, kurallar) her zaman en başta, değişken verilerin (kullanıcı sorusu) sonda tutulması kuralı.

1. Transformatör Mimarisinde KV-Cache Mantığı

Büyük dil modellerinde her bir token işlenirken Self-Attention katmanında Query, Key ve Value (Q, K, V) matrisleri hesaplanır. Girdi metninin ilk 10.000 token'ı her kullanıcı isteğinde aynı kalıyorsa, bu token'ların K ve V tensörleri de matematiksel olarak birbirinin tıpatıp aynısıdır.

Geleneksel API'ler bu matrisleri her istekte sıfırdan hesaplayarak hem devasa GPU gücü harcar hem de geliştiriciye tam token ücreti yansıtır. Prompt Caching ile sağlayıcı bu tensörleri GPU VRAM'inde veya yüksek hızlı NVMe katmanında saklar ve sonraki eşleşen isteklerde matris hesaplamasını tamamen atlar.

2. Anthropic Claude API ile Cache Kontrolü Entegrasyonu

Anthropic API'sinde önbelleğe alınacak kritik noktaya cache_control: {'type': 'ephemeral'} belirteci yerleştirilir:

prompt_caching_client.py
import anthropic

client = anthropic.Anthropic()

# Devasa teknik dokümantasyon veya kod tabanı (50.000+ token)
with open("massive_api_docs.md", "r", encoding="utf-8") as f:
    knowledge_base = f.read()

response = client.messages.create(
    model="claude-3-7-sonnet-20250219",
    max_tokens=2048,
    system=[
        {
            "type": "text",
            "text": "Sen kurumsal bir API asistanısın. Aşağıdaki dokümantasyona göre yanıt ver:"
        },
        {
            "type": "text",
            "text": knowledge_base,
            "cache_control": {"type": "ephemeral"}  # KV Cache kırılma noktası
        }
    ],
    messages=[
        {"role": "user", "content": "Ödeme webhook imza doğrulaması nasıl yapılır?"}
    ]
)

# Cache okuma istatistiklerini kontrol etme
usage = response.usage
print(f"Oluşturulan Cache: {getattr(usage, 'cache_creation_input_tokens', 0)}")
print(f"Önbellekten Okunan (İndirimli): {getattr(usage, 'cache_read_input_tokens', 0)}")

3. Altın Kural: Ön Ek Sıralaması (Prefix Ordering) ve FinOps

Prompt Caching sistemleri katı bir şekilde baştan sona (prefix-matching) çalışır. Eğer 50.000 tokenlık sabit dokümantasyonun hemen önüne dinamik bir zaman damgası eklerseniz, model tüm metni yeni bir veri kabul eder ve önbellek tamamen çöpe gider.

FinOps açısından başarı sağlamak için sistem promptu ve sabit bilgi bankası en tepeye konulmalı; dinamik değişkenler, kullanıcı geçmişi ve anlık sorular en sona eklenmelidir. Günde 5.000 sorgu alan bir enterprise botunda bu mimari aylık API maliyetini $3.000 seviyesinden $350 seviyesine düşürür.

Sıkça Sorulan Sorular

Önbellek bellekte ne kadar süre saklanır?

Anthropic'te geçici (ephemeral) cache süresi genellikle son kullanımdan itibaren 5 dakikadır. Her yeni istekte süre otomatik olarak sıfırlanır ve uzatılır. Gemini'de ise açık TTL (Time to Live) belirlenebilir.

Prompt caching için gereken minimum token eşiği nedir?

Anthropic Claude modellerinde minimum 1.024 tokenlık bir ön ek gereklidir. Gemini'de açık bağlam önbellekleme (context caching) için eşik genellikle 32.768 tokendır.

Doğrulanmış Kaynaklar ve Dokümantasyon

İlgili Teknik Rehberler

Bu mimariyle bağlantılı diğer üretim odaklı rehber ve vaka analizlerini inceleyin: