特徴ビューを更新して、関連付けられている特徴データソースのリストを変更できます。たとえば、次のような更新を行いたいことがあります。
異なる特徴グループと特徴を関連付ける。または同じ特徴グループの異なる特徴セットを関連付ける。
特徴データを含む異なる BigQuery テーブルまたはビューを指定する。この場合、更新されたデータソースから 1 つ以上のエンティティ ID 列を指定する必要もあります。
同じ BigQuery データソースから、一連の別のエンティティ ID 列を指定する。
特徴ビューを作成または更新する際、ユーザー定義メタデータをラベルの形式で特徴ビューに追加するオプションがあります。特徴ビューのユーザー定義ラベルを更新する方法については、特徴ビューのラベルを更新するをご覧ください。
継続的なデータ同期用に構成された特徴ビューは更新できません。
始める前に
まだ行っていない場合は、Vertex AI に対する認証を行います。
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
特徴グループに基づいて特徴ビューを更新する
既存の特徴グループの特徴を指定して特徴ビューを更新するには、次のサンプルを使用します。
REST
FeatureView
リソースを更新するには、featureViews.patch メソッドを使用して PATCH
リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION_ID: オンライン ストアがあるリージョン(
us-central1
など)。 - PROJECT_ID: プロジェクト ID。
- FEATUREONLINESTORE_NAME: 特徴ビューを含むオンライン ショップの名前。
- FEATUREVIEW_NAME: 更新する特徴ビューの名前。
- FEATUREGROUP_NAME: 特徴ビューに関連付ける特徴グループの名前。
- FEATURE_ID_1、FEATURE_ID_2: FEATUREGROUP_NAME 特徴グループから特徴ビューに追加する特徴 ID。
HTTP メソッドと URL:
PATCH https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME
リクエストの本文(JSON):
{ "feature_registry_source": { "feature_groups": [ { "feature_group_id": "FEATUREGROUP_NAME", "feature_ids": [ "FEATURE_ID_1", "FEATURE_ID_2" ] } ] } }
リクエストを送信するには、次のいずれかのオプションを選択します。
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_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME"
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_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.UpdateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T04:53:22.794004Z", "updateTime": "2023-09-15T04:53:22.794004Z" } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.FeatureView", "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME" } }
BigQuery ソースに基づいて特徴ビューを更新する
次のサンプルを使用して、BigQuery テーブルまたはビューの特徴列を指定して特徴ビューを更新します。
REST
BigQuery データソースに基づいて FeatureView
インスタンスを更新する場合は、featureViews.patch メソッドを使用して PATCH
リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION_ID: オンライン ストアがあるリージョン(
us-central1
など)。 - PROJECT_ID: プロジェクト ID。
- FEATUREONLINESTORE_NAME: 特徴ビューを含むオンライン ショップの名前。
- FEATUREVIEW_NAME: 更新する特徴ビューの名前。
- BIGQUERY_SOURCE_URI: 特徴データを含む BigQuery テーブルまたはビューの URI。
- ENTITY_ID_COLUMNS:
- ENTITY_ID_COLUMNS: エンティティ ID を含む列の名前。1 つまたは複数の列を指定できます。
- エンティティ ID 列を 1 つだけ指定するには、列名を次の形式で指定します。
"entity_id_column_name"
- 複数のエンティティ ID 列を指定するには、列名を次の形式で指定します。
["entity_id_column_1_name", "entity_id_column_2_name", ...]
- エンティティ ID 列を 1 つだけ指定するには、列名を次の形式で指定します。
HTTP メソッドと URL:
PATCH https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME
リクエストの本文(JSON):
{ "big_query_source": { "uri": "BIGQUERY_SOURCE_URI", "entity_id_columns": "ENTITY_ID_COLUMNS" } }
リクエストを送信するには、次のいずれかのオプションを選択します。
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_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME"
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_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.UpdateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T04:53:34.832192Z", "updateTime": "2023-09-15T04:53:34.832192Z" } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.FeatureView", "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME" } }
次のステップ
特徴データのオンライン サービングを開始する。
特徴ビューの削除方法を学習する。