Anda dapat memperbarui saat cache konteks berakhir masa berlakunya. Waktu habis masa berlaku default cache konteks adalah 60 menit setelah waktu pembuatannya. Cache konteks yang telah habis masa berlakunya akan dihapus selama proses pembersihan sampah memori dan tidak dapat digunakan atau diperbarui. Untuk memperbarui waktu habis masa berlaku cache konteks yang belum habis masa berlakunya, perbarui salah satu propertinya berikut:
ttl
- Jumlah detik dan nanodetik yang digunakan cache setelah dibuat atau setelahttl
diperbarui sebelum masa berlakunya berakhir. Saat Anda menetapkanttl
,expireTime
cache akan diperbarui.expire_time
-Timestamp
yang menentukan tanggal dan waktu absolut saat cache konteks berakhir masa berlakunya.
Memperbarui cache konteks menggunakan parameter ttl
-nya
Berikut adalah contoh perintah curl yang memperbarui waktu habis masa berlakunya selama 3.600 detik.
Python
Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Vertex AI SDK untuk Python.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan parameter stream
di
generate_content
.
response = model.generate_content(contents=[...], stream = True)
Untuk respons non-streaming, hapus parameter, atau tetapkan parameter ke
False
.
Kode contoh
Go
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Vertex AI. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Vertex AI Go SDK untuk Gemini.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Respons streaming dan non-streaming
Anda dapat memilih apakah model menghasilkan respons streaming atau respons non-streaming. Untuk respons streaming, Anda akan menerima setiap respons segera setelah token output-nya dibuat. Untuk respons non-streaming, Anda akan menerima semua respons setelah semua token output dibuat.
Untuk respons streaming, gunakan metode
GenerateContentStream
.
iter := model.GenerateContentStream(ctx, genai.Text("Tell me a story about a lumberjack and his giant ox. Keep it very short."))
Untuk respons non-streaming, gunakan metode GenerateContent
.
resp, err := model.GenerateContent(ctx, genai.Text("What is the average size of a swallow?"))
Kode contoh
REST
Anda dapat menggunakan REST untuk membuat pembaruan cache konteks menggunakan
Vertex AI API untuk mengirim permintaan PATCH ke endpoint model penayang. Contoh
berikut menunjukkan cara memperbarui tanggal habis masa berlaku menggunakan
parameter ttl
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region tempat permintaan untuk membuat cache konteks diproses.
- CACHE_ID: ID cache konteks. ID cache konteks ditampilkan saat Anda membuat cache konteks. Anda juga dapat menemukan ID cache konteks dengan mencantumkan cache konteks untuk project Google Cloud menggunakan. Untuk informasi selengkapnya, lihat membuat cache konteks dan mencantumkan cache konteks.
- SECONDS:
float
yang menentukan komponen detik dari durasi sebelum cache berakhir masa berlakunya. - NANOSECONDS:
float
yang menentukan komponen durasi dalam nanodetik sebelum cache berakhir masa berlakunya.
Metode HTTP dan URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID
Isi JSON permintaan:
{ "seconds":"SECONDS", "nanos":"NANOSECONDS" }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
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
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Contoh perintah curl
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"}
}'
Memperbarui cache konteks menggunakan parameter expire_time
-nya
Berikut adalah contoh perintah curl yang menggunakan parameter expire_time
untuk memperbarui waktu habis masa berlakunya menjadi pukul 09.00 pada 30 Juni 2024.
REST
Anda dapat menggunakan REST untuk membuat pembaruan cache konteks menggunakan
Vertex AI API untuk mengirim permintaan PATCH ke endpoint model penayang. Contoh
berikut menunjukkan cara memperbarui tanggal habis masa berlaku menggunakan
parameter expire_time
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- LOCATION: Region tempat permintaan untuk membuat cache konteks diproses.
- CACHE_ID: ID cache konteks. Anda dapat menemukan ID dalam respons saat membuat cache konteks.
- EXPIRE_TIME:
Timestamp
yang menentukan waktu berakhirnya masa berlaku cache konteks.
Metode HTTP dan URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID
Isi JSON permintaan:
{ "expire_time":"EXPIRE_TIME" }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
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
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Contoh perintah curl
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"
}'
Langkah selanjutnya
- Pelajari cara menggunakan cache konteks.
- Pelajari cara mendapatkan informasi tentang semua cache konteks yang terkait dengan project Google Cloud.