Sie können eine Aktualisierung vornehmen, wenn ein Kontext-Cache abläuft. Die Standardablaufzeit eines Kontext-Caches beträgt 60 Minuten nach seiner Erstellung. Ein abgelaufener Kontext-Cache wird während der automatischen Speicherbereinigung gelöscht und kann nicht mehr verwendet oder aktualisiert werden. Wenn Sie die Ablaufzeit eines noch nicht abgelaufenen Kontext-Caches aktualisieren möchten, aktualisieren Sie eine der folgenden Eigenschaften:
ttl
: Die Anzahl der Sekunden und Nanosekunden, die der Cache nach der Erstellung oder nach der Aktualisierung vonttl
gültig ist, bevor er abläuft. Wenn Sie diettl
festlegen, wird dieexpireTime
des Caches aktualisiert.expire_time
: EinTimestamp
, das das absolute Datum und die absolute Uhrzeit angibt, zu dem der Kontext-Cache abläuft.
Kontext-Cache mit dem Parameter ttl
aktualisieren
Im folgenden Beispiel wird die Ablaufzeit eines cURL-Befehls um 3.600 Sekunden aktualisiert.
Python
Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren. Weitere Informationen finden Sie in der API-Referenzdokumentation zur Vertex AI SDK for Python.
Streaming- und Nicht-Streaming-Antworten
Sie können auswählen, ob das Modell Streaming-Antworten oder Nicht-Streaming-Antworten generiert. Bei Streaming-Antworten erhalten Sie jede Antwort, sobald ihr Ausgabetoken generiert wurde. Bei Nicht-Streaming-Antworten erhalten Sie alle Antworten, nachdem alle Ausgabetokens erzeugt wurden.
Verwenden Sie für eine Streaming-Antwort den Parameter stream
in generate_content
.
response = model.generate_content(contents=[...], stream = True)
Entfernen Sie für eine Nicht-Streamingantwort den Parameter oder setzen Sie den Parameter auf False
.
Beispielcode
Go
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Go in der Vertex AI-Kurzanleitung. Weitere Informationen finden Sie in der Referenzdokumentation zum Vertex AI Go SDK für Gemini.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Streaming- und Nicht-Streaming-Antworten
Sie können auswählen, ob das Modell Streaming-Antworten oder Nicht-Streaming-Antworten generiert. Bei Streaming-Antworten erhalten Sie jede Antwort, sobald ihr Ausgabetoken generiert wurde. Bei Nicht-Streaming-Antworten erhalten Sie alle Antworten, nachdem alle Ausgabetokens erzeugt wurden.
Verwenden Sie für eine Nicht-Streamingantwort die Methode GenerateContentStream
.
iter := model.GenerateContentStream(ctx, genai.Text("Tell me a story about a lumberjack and his giant ox. Keep it very short."))
Verwenden Sie für eine Nicht-Streamingantwort die Methode GenerateContent
.
resp, err := model.GenerateContent(ctx, genai.Text("What is the average size of a swallow?"))
Beispielcode
REST
Sie können mit REST einen Kontext-Cache erstellen oder aktualisieren. Dazu senden Sie mit der Vertex AI API eine PATCH-Anfrage an den Endpunkt des Publisher-Modells. Im folgenden Beispiel wird gezeigt, wie das Ablaufdatum mit dem Parameter ttl
aktualisiert wird.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: Ihre Projekt-ID.
- LOCATION: Die Region, in der die Anfrage zum Erstellen des Kontext-Cache verarbeitet wurde.
- CACHE_ID: Die ID des Kontext-Caches. Die Kontext-Cache-ID wird zurückgegeben, wenn Sie den Kontext-Cache erstellen. Sie können Kontext-Cache-IDs auch finden, indem Sie die Kontext-Caches für ein Google Cloud-Projekt auflisten. Weitere Informationen finden Sie unter Kontext-Cache erstellen und Kontext-Caches auflisten.
- SECONDS: Ein
float
, das die Sekundenkomponente der Dauer angibt, bevor der Cache abläuft. - NANOSECONDS: Ein
float
, das die Nanosekundenkomponente der Dauer angibt, bevor der Cache abläuft.
HTTP-Methode und URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID
JSON-Text der Anfrage:
{ "seconds":"SECONDS", "nanos":"NANOSECONDS" }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID" | Select-Object -Expand Content
Sie sollten in etwa folgende JSON-Antwort erhalten:
Beispiel: cURL-Befehls
PROJECT_NUMBER="PROJECT_NUMBER"
LOCATION="us-central1"
PROJECT_ID="PROJECT_ID"
CACHE_ID="CACHE_ID"
curl \
-X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json"\
"https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${PROJECT_NUMBER}/locations/${LOCATION}/cachedContents/${CACHE_ID}" -d \
'{
"ttl": {"seconds":"3600","nanos":"0"}
}'
Kontext-Cache mit dem Parameter expire_time
aktualisieren
Im folgenden Beispiel wird ein curl-Befehl mit dem Parameter expire_time
verwendet, um das Ablaufdatum auf den 30. Juni 2024 um 9:00 Uhr zu aktualisieren.
REST
Sie können mit REST einen Kontext-Cache erstellen oder aktualisieren. Dazu senden Sie mit der Vertex AI API eine PATCH-Anfrage an den Endpunkt des Publisher-Modells. Im folgenden Beispiel wird gezeigt, wie das Ablaufdatum mit dem Parameter expire_time
aktualisiert wird.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: Ihre Projekt-ID.
- LOCATION: Die Region, in der die Anfrage zum Erstellen des Kontext-Cache verarbeitet wurde.
- CACHE_ID: Die ID des Kontext-Caches. Sie finden die ID in der Antwort, wenn Sie den Kontext-Cache erstellen.
- EXPIRE_TIME: Ein
Timestamp
, das den Zeitpunkt angibt, zu dem der Kontext-Cache abläuft.
HTTP-Methode und URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID
JSON-Text der Anfrage:
{ "expire_time":"EXPIRE_TIME" }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID" | Select-Object -Expand Content
Sie sollten in etwa folgende JSON-Antwort erhalten:
Beispiel: cURL-Befehls
PROJECT_NUMBER="PROJECT_NUMBER"
LOCATION="us-central1"
PROJECT_ID="PROJECT_ID"
CACHE_ID="CACHE_ID"
curl \
-X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json"\
"https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${PROJECT_NUMBER}/locations/${LOCATION}/cachedContents/${CACHE_ID}" -d \
'{
"expire_time":"2024-06-30T09:00:00.000000Z"
}'
Nächste Schritte
- Kontext-Cache verwenden
- Informationen zu allen Kontext-Caches abrufen, die mit einem Google Cloud-Projekt verknüpft sind