Skip to Content

Cached Contents

Verwalten Sie explizite Kontext-Caches (cachedContents) über das Gemini-native Protokoll: Cachen Sie aktiv einen großen Kontext als Objekt und referenzieren Sie es über Anfragen hinweg, für deterministischere Treffer und niedrigere Kosten. OfoxAI ist mit dem Google GenAI SDK kompatibel.

Anwendungsfälle, den Unterschied zum impliziten Caching und Best Practices finden Sie im Leitfaden zum Gemini Expliziten Caching. Diese Seite ist die API-Referenz auf Endpunkt-Ebene.

Endpunkte

POST https://api.ofox.ai/gemini/v1beta/cachedContents # Erstellen GET https://api.ofox.ai/gemini/v1beta/cachedContents/{id} # Abfragen DELETE https://api.ofox.ai/gemini/v1beta/cachedContents/{id} # Löschen

Um einen Cache für die Inhaltsgenerierung zu referenzieren, verwenden Sie den Standard-generateContent-Endpunkt mit einem cachedContent-Feld im Body:

POST https://api.ofox.ai/gemini/v1beta/models/{model}:generateContent

Authentifizierung

Verwenden Sie den x-goog-api-key-Header:

x-goog-api-key: <Ihr OFOXAI_API_KEY>

Ressourcenfelder

Wichtige Felder der CachedContent-Ressource:

FeldTypBeschreibung
namestring (nur Ausgabe)Cache-Handle, z. B. cachedContents/{id}, bei der Erstellung zurückgegeben
modelstring (erforderlich, unveränderlich)Modell, an das der Cache gebunden ist, z. B. models/gemini-3.1-pro-preview
contentsarrayZu cachender Inhalt (gleiche Struktur wie contents von generateContent)
systemInstructionobjectZu cachende System-Anweisung (optional)
toolsarrayZu cachende Tool-Definitionen (optional)
ttlstringLebensdauer, Sekunden-String (z. B. "600s"); schließt sich mit expireTime gegenseitig aus
expireTimestringAblaufzeitpunkt (RFC 3339); schließt sich mit ttl gegenseitig aus
displayNamestring (unveränderlich)Benutzerdefinierter Name (optional)
usageMetadata.totalTokenCountintegerAnzahl der gecachten Tokens (für die Abrechnung verwendet)

Unterstützter TTL-Bereich: minimal / Standard 600s (10 Minuten), maximal 3600s (1 Stunde).

Cache erstellen

create.py
from google import genai from google.genai import types client = genai.Client( api_key="<Ihr OFOXAI_API_KEY>", http_options={"api_version": "v1beta", "base_url": "https://api.ofox.ai/gemini"}, ) cache = client.caches.create( model="google/gemini-3.1-pro-preview", config=types.CreateCachedContentConfig( contents=[open("knowledge_base.txt").read()], system_instruction="Sie antworten ausschließlich auf Basis des bereitgestellten Dokuments.", ttl="600s", display_name="kb-v1", ), ) print(cache.name) # cachedContents/xxxxxxxx print(cache.usage_metadata.total_token_count)

Antwort

{ "name": "cachedContents/xxxxxxxx", "model": "google/gemini-3.1-pro-preview", "createTime": "2026-06-26T08:00:00Z", "updateTime": "2026-06-26T08:00:00Z", "expireTime": "2026-06-26T08:10:00Z", "displayName": "kb-v1", "usageMetadata": { "totalTokenCount": 14407 } }

Abfragen / Löschen

Abfragen und Löschen erfordern kein model; OfoxAI lokalisiert den Upstream anhand des Cache-Handles.

manage.py
# Einzeln abfragen info = client.caches.get(name=cache.name) print(info.expire_time) # Löschen client.caches.delete(name=cache.name)

Cache zur Generierung referenzieren

Fügen Sie dem generateContent-Body ein cachedContent-Feld hinzu, um den Cache zu referenzieren; contents enthält nur die neue Frage für diesen Schritt:

use.py
response = client.models.generate_content( model="google/gemini-3.1-pro-preview", contents="Fassen Sie auf Basis des obigen Dokuments drei Kernpunkte zusammen", config=types.GenerateContentConfig(cached_content=cache.name), ) print(response.text) print(response.usage_metadata.cached_content_token_count) # Anzahl der getroffenen Cache-Tokens

Bei einem Treffer zeigt usageMetadata.cachedContentTokenCount in der Antwort, wie viele Tokens aus dem Cache stammen.

Abrechnung

PhaseFormel
Cache erstellentotalTokenCount × cache_write Tarif
Referenz-TreffercachedContentTokenCount × cache_read Tarif (etwa 0,10x des Standard-Eingabepreises)
Neue Inhalte pro ReferenzNeuer Prompt / neue Ausgabe pro Schritt zum Standardtarif

Die cache_write / cache_read-Einzelpreise der einzelnen Modelle finden Sie im Modellkatalog .

OfoxAI verteilt die Last über mehrere GCP-Projekte, und explizite Caches sind regionsgebunden (region-scoped). OfoxAI sperrt Referenzen automatisch anhand des Cache-Handles hart zurück auf den Upstream, der den Cache erstellt hat, mit null Drift bei Referenzen; ein Cache-Handle kann nur von dem API Key referenziert / abgefragt / gelöscht werden, der es erstellt hat (kontoübergreifender Zugriff gibt 403 zurück). Details unter Leitfaden zum Expliziten Caching · Deterministisches Routing.

Verwandte Dokumente

Last updated on