コンテキスト キャッシュが期限切れになる時期は更新できます。コンテキスト キャッシュのデフォルトの有効期限は、作成時刻から 60 分後です。コンテキスト キャッシュは、期限切れになるとガベージ コレクションで削除されるため、使用することも更新することもできなくなります。期限切れになっていないコンテキスト キャッシュの有効期限を更新するには、次のいずれかのプロパティを更新します。
ttl- キャッシュの作成、またはttlの更新からキャッシュが期限切れになるまでの時間を秒単位およびナノ秒単位で指定します。ttlを設定すると、キャッシュのexpireTimeが更新されます。expire_time- コンテキスト キャッシュが期限切れになる絶対日時をTimestampで指定します。
ttl パラメータを使用してコンテキスト キャッシュを更新する
有効期限を 3,600 秒更新する curl コマンドの例を次に示します。
Python
インストール
pip install --upgrade google-genai
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
Go
Go をインストールまたは更新する方法について学びます。
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
Java
Java をインストールまたは更新します。
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
Node.js
インストール
npm install @google/genai
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
REST
REST を使用してコンテキスト キャッシュを作成または更新するには、Vertex AI API を使用してパブリッシャー モデル エンドポイントに PATCH リクエストを送信します。次の例は、ttl パラメータを使用して有効期限を更新する方法を示しています。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: 実際のプロジェクト ID。
- LOCATION: コンテキスト キャッシュの作成リクエストが処理されたリージョン。
- CACHE_ID: コンテキスト キャッシュの ID。コンテキスト キャッシュ ID は、コンテキスト キャッシュの作成時に返されます。コンテキスト キャッシュ ID は、 Google Cloud プロジェクトのコンテキスト キャッシュを一覧表示することでも確認できます。詳細については、コンテキスト キャッシュを作成するとコンテキスト キャッシュのリストを取得するをご覧ください。
- SECONDS: キャッシュが期限切れになるまでの期間の秒部分を指定する
float値。 - NANOSECONDS: キャッシュが期限切れになるまでの期間のナノ秒部分を指定する
float値。
HTTP メソッドと URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID
リクエストの本文(JSON):
{
"seconds":"SECONDS",
"nanos":"NANOSECONDS"
}
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
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/v1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID"
PowerShell
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
$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/v1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
curl コマンドの例
PROJECT_ID="PROJECT_ID"
LOCATION="us-central1"
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_ID}/locations/${LOCATION}/cachedContents/${CACHE_ID}" -d \
'{
"ttl": {"seconds":"3600","nanos":"0"}
}'
expire_time パラメータを使用してコンテキスト キャッシュを更新する
expire_time パラメータを使用して有効期限を 2024 年 6 月 30 日午前 9 時に更新する curl コマンドの例を次に示します。
REST
REST を使用してコンテキスト キャッシュを作成または更新するには、Vertex AI API を使用してパブリッシャー モデル エンドポイントに PATCH リクエストを送信します。次の例は、expire_time パラメータを使用して有効期限を更新する方法を示しています。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID:
- LOCATION: コンテキスト キャッシュの作成リクエストが処理されたリージョン。
- CACHE_ID: コンテキスト キャッシュの ID。この ID は、コンテキスト キャッシュの作成時にレスポンスで確認できます。
- EXPIRE_TIME: コンテキスト キャッシュが期限切れになる時刻を指定する
Timestamp。
HTTP メソッドと URL:
PATCH https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID
リクエストの本文(JSON):
{
"expire_time":"EXPIRE_TIME"
}
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
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/v1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID"
PowerShell
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
$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/v1/projects/PROJECT_ID/locations/LOCATION/cachedContents/CACHE_ID" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
curl コマンドの例
PROJECT_ID="PROJECT_ID"
LOCATION="us-central1"
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_ID}/locations/${LOCATION}/cachedContents/${CACHE_ID}" -d \
'{
"expire_time":"2024-06-30T09:00:00.000000Z"
}'