Puoi aggiornare una cache di contesto alla scadenza. La scadenza predefinita di una cache di contesto è 60 minuti dopo la relativa ora di creazione. Una cache di contesto scaduta viene eliminata durante un processo di garbage collection e non può essere utilizzata o aggiornata. Per aggiornare la data di scadenza di una cache di contesto non scaduta, aggiorna una delle seguenti proprietà:
ttl
: il numero di secondi e nanosecondi di vita della cache dopo la sua creazione o dopo l'aggiornamento dittl
prima della scadenza. Quando impostittl
, ilexpireTime
della cache viene aggiornato.expire_time
: unTimestamp
che specifica la data e l'ora assolute di scadenza della cache di contesto.
Aggiorna la cache del contesto utilizzando il relativo parametro ttl
Di seguito è riportato un esempio di comando curl che aggiorna la scadenza di 3600 secondi.
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Vertex AI SDK for Python.
Risposte dinamiche e non dinamiche
Puoi scegliere se il modello genera risposte in streaming o non in streaming. Per le risposte dinamiche, ricevi ogni risposta non appena viene generato il token di output. Per le risposte non dinamiche, ricevi tutte le risposte dopo la generazione di tutti i token di output.
Per una risposta dinamica, utilizza il parametro stream
in
generate_content
.
response = model.generate_content(contents=[...], stream = True)
Per una risposta non in streaming, rimuovi il parametro o impostalo su
False
.
Codice di esempio
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida introduttiva di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'SDK Go di Vertex AI per Gemini.
Per autenticarti a Vertex AI, configura le Credenziali predefinite dell'applicazione. Per maggiori informazioni, vedi Configurare l'ADC per un ambiente di sviluppo locale.
Risposte dinamiche e non dinamiche
Puoi scegliere se il modello genera risposte in streaming o non in streaming. Per le risposte dinamiche, ricevi ogni risposta non appena viene generato il token di output. Per le risposte non dinamiche, ricevi tutte le risposte dopo la generazione di tutti i token di output.
Per una risposta dinamica, utilizza il metodo
GenerateContentStream
.
iter := model.GenerateContentStream(ctx, genai.Text("Tell me a story about a lumberjack and his giant ox. Keep it very short."))
Per una risposta non in streaming, utilizza il metodo GenerateContent
.
resp, err := model.GenerateContent(ctx, genai.Text("What is the average size of a swallow?"))
Codice di esempio
REST
Puoi utilizzare REST per creare un aggiornamento della cache del contesto utilizzando l'API Vertex AI per inviare una richiesta PATCH all'endpoint del modello del publisher. L'esempio seguente mostra come aggiornare la data di scadenza utilizzando il parametro ttl
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto.
- LOCATION: la regione in cui è stata elaborata la richiesta di creazione della cache di contesto.
- CACHE_ID: l'ID della cache del contesto. L'ID della cache di contesto viene restituito quando viene creata la cache di contesto. Puoi anche trovare gli ID cache di contesto elencando le cache di contesto per un progetto Google Cloud in uso. Per ulteriori informazioni, consulta Creare una cache di contesto e Elenco delle cache di contesto.
- SECONDS: un
float
che specifica il componente secondi della durata prima della scadenza della cache. - NANOSECONDS: un
float
che specifica il componente in nanosecondi della durata prima della scadenza della cache.
Metodo HTTP e URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID
Corpo JSON della richiesta:
{ "seconds":"SECONDS", "nanos":"NANOSECONDS" }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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
Dovresti ricevere una risposta JSON simile alla seguente:
Comando curl di esempio
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"}
}'
Aggiorna la cache del contesto utilizzando il relativo parametro expire_time
Di seguito è riportato un esempio di comando curl che utilizza il parametro expire_time
per aggiornare la data e l'ora di scadenza alle ore 09:00 del 30 giugno 2024.
REST
Puoi utilizzare REST per creare un aggiornamento della cache del contesto utilizzando l'API Vertex AI per inviare una richiesta PATCH all'endpoint del modello del publisher. L'esempio seguente mostra come aggiornare la data di scadenza utilizzando il parametro expire_time
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto.
- LOCATION: la regione in cui è stata elaborata la richiesta di creazione della cache di contesto.
- CACHE_ID: l'ID della cache del contesto. Puoi trovare l'ID nella risposta quando crei la cache del contesto.
- EXPIRE_TIME: un
Timestamp
che specifica l'ora di scadenza della cache del contesto.
Metodo HTTP e URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID
Corpo JSON della richiesta:
{ "expire_time":"EXPIRE_TIME" }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
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
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$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
Dovresti ricevere una risposta JSON simile alla seguente:
Comando curl di esempio
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"
}'
Passaggi successivi
- Scopri come utilizzare una cache di contesto.
- Scopri come ottenere informazioni su tutte le cache di contesto associate a un progetto Google Cloud.