您可以在現有的網路商店執行個體中建立特徵檢視畫面。建立地圖檢視時,您可以透過下列方式將地圖檢視與地圖項目建立關聯:
從特徵登錄新增特徵群組和特徵:與特徵登錄中的現有特徵群組和特徵建立關聯。特徵群組會指定 BigQuery 資料來源的位置。特徵群組中的特徵會指向該資料來源中的特定特徵欄。您可以將地圖檢視畫面與多個地圖項目群組建立關聯。
從 BigQuery 來源新增功能:直接關聯 BigQuery 資料來源 (例如 BigQuery 表格或 View),並指定至少一個實體 ID 欄。
建立特徵檢視後,Vertex AI 特徵儲存庫會從 BigQuery 資料來源同步最新的特徵值。如果您設定查詢參數 run_sync_immediately=true
,Vertex AI 特徵儲存庫會在您建立特徵檢視時同步處理特徵值。否則,Vertex AI 特徵儲存庫會根據為特徵檢視畫面指定的同步時間表,同步處理特徵值。
事前準備
驗證 Vertex AI (如果您尚未驗證)。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
Python
如要在本機開發環境中使用本頁面上的 Python 範例,請先安裝並初始化 gcloud CLI,然後使用您的使用者憑證設定應用程式預設憑證。
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
詳情請參閱 Set up authentication for a local development environment。
REST
如要在本機開發環境中使用本頁的 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」。
同步處理特徵檢視畫面中的地圖項目資料
Vertex AI 特徵儲存庫可將特徵值從 BigQuery 資料來源重新整理或同步至特徵檢視畫面。您可以使用 FeatureView.sync_config
參數,指定地圖項目檢視畫面資料同步處理的類型。
Vertex AI 特徵儲存庫支援下列類型的資料同步:
排定資料同步處理作業:您可以指定資料同步處理作業的時間表或頻率。無論為網路商店例項指定的線上服務類型為何,您都可以為功能檢視畫面選擇這項定期資料同步作業。
如果功能檢視畫面已設定為使用排定資料同步功能,您可以選擇手動啟動資料同步功能,略過等待下次排定同步作業的時間。如要進一步瞭解如何手動觸發資料同步處理,請參閱「將功能資料同步至網路商店」。
在線上服務期間,如果您只想提供最新的特徵值 (包括空值),則必須使用下列設定:
建立網路商店執行個體時,請選擇 Bigtable 線上服務。
建立地圖項目檢視畫面時,請選擇排程資料同步處理。
持續性資料同步:每當 BigQuery 資料來源中的地圖項目資料更新時,地圖項目資料就會重新整理。只有在符合下列所有條件時,您才能為地圖檢視畫面選擇這類資料同步處理:
線上商店執行個體已針對 Bigtable 線上供應功能進行設定。
特徵檢視畫面與特徵群組和特徵資源相關聯。
BigQuery 資料來源位於下列任一區域:
eu
us
us-central1
持續性資料同步功能有下列限制:
如果您選取了持續性資料同步功能,就無法更新地圖項目檢視畫面。
系統只會從 BigQuery 資料來源同步新特徵記錄。持續性資料同步功能不會同步處理您在 BigQuery 中更新或刪除的特徵記錄。
特徵註冊庫來源中的特徵群組必須使用 BigQuery 資料表做為來源。
在排定資料同步作業期間提高成本效益
資料同步作業可能會產生 BigQuery 資源使用費用。請遵循下列規範,在資料同步期間降低成本並提升效能:
請勿將同步處理時間表的執行頻率設得比 BigQuery 來源資料變更頻率還要頻繁。
在 BigQuery 中調整地圖項目資料來源的大小。建立特徵資料檢視時,請只納入線上供應所需的資料。
請避免在 BigQuery 中執行複雜的匯總作業。對資料表或檢視畫面執行
SELECT *
查詢,以估算資料處理的量和時間。設定網路商店的縮放選項時,請將
max_node_count
設為足以涵蓋資料同步期間高負載的值。在同一線上商店中,為不同特徵檢視畫面安排不同時間的同步作業。
如果 BigQuery 資料表包含大量歷來資料,建議您使用時間戳記分割資料表,並指定擷取地圖資料的時間範圍。這可盡量減少在同步處理期間擷取過時功能資料的情況。
在同步處理資料時,Bigtable 的用量會增加。如果是為了 Bigtable 線上服務,在線上商店中建立的特徵檢視,請在非尖峰時段排定同步作業,以獲得最佳效能。
為功能檢視畫面設定服務帳戶
每個地圖檢視畫面都會在同步處理期間使用服務帳戶存取 BigQuery 中的來源資料。Vertex AI 特徵儲存庫會將 BigQuery 資料檢視器 身分與存取權管理 (IAM) 角色指派給這個服務帳戶。
根據預設,地圖檢視畫面會使用為專案設定的服務帳戶。有了這項設定,任何在專案中擁有建立地圖檢視權限的使用者,都能存取 BigQuery 中的地圖檢視資料。
或者,您也可以設定功能檢視畫面,讓其使用自己的服務帳戶。Vertex AI 特徵儲存庫會為特徵檢視畫面設定專屬服務帳戶。透過這項設定,您可以限制 BigQuery 中功能資料的存取權,或授予其他使用者存取權。您可以使用 FeatureView.service_agent_type
參數指定服務帳戶設定。請注意,Vertex AI 特徵儲存庫會為每個設有專屬服務帳戶的特徵檢視畫面產生專屬服務帳戶電子郵件地址。
如果功能檢視畫面已設定專屬服務帳戶,您可以透過下列任一方式查看服務帳戶電子郵件地址:
使用 featureViews.list 方法,擷取線上商店例項內所有特徵檢視畫面的清單。
使用 featureViews.get 方法,擷取地圖檢視區塊的詳細資料。
為地圖檢視畫面設定向量擷取功能
您可以使用 FeatureView.index_config
參數,為為最佳化線上服務而建立的網路商店內的特徵檢視畫面設定向量擷取功能。如要瞭解如何準備或更新 BigQuery 資料來源,以便透過納入 embedding
欄來支援嵌入功能,請參閱「資料來源準備指南」。
請注意,您只能在透過指定 BigQuery 來源 URI 建立特徵檢視表的情況下,設定向量擷取功能並管理嵌入資料,而非從特徵註冊庫中的特徵群組和特徵建立。
如要進一步瞭解如何在 Vertex AI 特徵儲存庫中使用嵌入值搜尋近似值,請參閱「使用嵌入值進行搜尋」。
根據特徵群組建立特徵檢視
您可以根據使用特徵群組和特徵註冊的特徵資料,建立特徵檢視。如要將多個 BigQuery 資料來源與同一個特徵檢視畫面建立關聯,您可以指定多個特徵群組。
如果您是透過指定特徵群組和特徵來建立特徵檢視畫面,請注意:
資料來源必須有
feature_timestamp
欄,且可包含歷來資料。Vertex AI 特徵儲存庫只會根據特徵時間戳記提供最新的特徵值。
您無法為功能檢視畫面設定嵌入管理功能。
使用預設服務帳戶設定建立功能檢視畫面
使用下列範例建立地圖檢視畫面,方法是連結多個地圖項目群組,但不指定服務帳戶設定。
REST
如要建立 FeatureView
資源,請使用 featureViews.create 方法傳送 POST
要求。
使用任何要求資料之前,請先替換以下項目:
- LOCATION_ID:要建立地圖項目檢視畫面的區域,例如
us-central1
。 - PROJECT_ID:您的專案 ID。
- FEATUREONLINESTORE_NAME:要建立功能檢視畫面的線上商店執行個體名稱。
- FEATUREVIEW_NAME:您要建立的新地圖項目檢視畫面執行個體名稱。
- FEATUREGROUP_NAME_A 和 FEATUREGROUP_NAME_B:您要將特徵新增至特徵檢視畫面的特徵群組名稱。
- FEATURE_ID_A1 和 FEATURE_ID_A2:您要新增至特徵檢視畫面的特徵群組 FEATUREGROUP_NAME_A 中的特徵 ID。
- FEATURE_ID_B1 和 FEATURE_ID_B2:您要新增至特徵檢視畫面的特徵群組 FEATUREGROUP_NAME_B 中的特徵 ID。
- SYNC_CONFIG:請為功能檢視畫面輸入下列其中一種同步設定:
- 如要使用排程資料同步功能,請以以下格式提供同步排程:
"cron": "cron_schedule_expression"
將 `cron_schedule_expression` 替換為代表將資料同步至功能檢視畫面的 Cron 排程運算式。詳情請參閱 cron。 - 如要使用持續性資料同步功能,請輸入以下內容:
"continuous": true
只有在包含功能檢視的網路商店執行個體為 Bigtable 線上服務設定後,才能使用持續性資料同步功能。
- 如要使用排程資料同步功能,請以以下格式提供同步排程:
HTTP 方法和網址:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
JSON 要求主體:
{ "feature_registry_source": { "feature_groups": [ { "feature_group_id": "FEATUREGROUP_NAME_A", "feature_ids": [ "FEATURE_ID_A1", "FEATURE_ID_A2" ] }, { "feature_group_id": "FEATUREGROUP_NAME_B", "feature_ids": [ "FEATURE_ID_B1", "FEATURE_ID_B2" ] } ] }, "sync_config": { SYNC_CONFIG } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X POST \
-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?feature_view_id=FEATUREVIEW_NAME"
PowerShell
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-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?feature_view_id=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.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
建立使用專用服務帳戶的功能檢視畫面
使用下列範例,設定專屬服務帳戶,從群組建立功能檢視畫面。
REST
如要建立 FeatureView
資源,請使用 featureViews.create 方法傳送 POST
要求。
使用任何要求資料之前,請先替換以下項目:
- LOCATION_ID:要建立地圖項目檢視畫面的區域,例如
us-central1
。 - PROJECT_ID:您的專案 ID。
- FEATUREONLINESTORE_NAME:要建立功能檢視畫面的線上商店執行個體名稱。
- FEATUREVIEW_NAME:您要建立的新地圖項目檢視畫面執行個體名稱。
- FEATUREGROUP_NAME_A 和 FEATUREGROUP_NAME_B:您要將特徵新增至特徵檢視畫面的特徵群組名稱。
- FEATURE_ID_A1 和 FEATURE_ID_A2:您要新增至特徵檢視畫面的特徵群組 FEATUREGROUP_NAME_A 中的特徵 ID。
- FEATURE_ID_B1 和 FEATURE_ID_B2:您要新增至特徵檢視畫面的特徵群組 FEATUREGROUP_NAME_B 中的特徵 ID。
- SYNC_CONFIG:請為功能檢視畫面輸入下列其中一種同步設定:
- 如要使用排程資料同步功能,請以以下格式提供同步排程:
"cron": "cron_schedule_expression"
將 `cron_schedule_expression` 替換為代表將資料同步至功能檢視畫面的 Cron 排程運算式。詳情請參閱 cron。 - 如要使用持續性資料同步功能,請輸入以下內容:
"continuous": true
只有在包含功能檢視的網路商店執行個體為 Bigtable 線上服務設定後,才能使用持續性資料同步功能。
- 如要使用排程資料同步功能,請以以下格式提供同步排程:
- SERVICE_AGENT_TYPE:地圖項目檢視畫面的服務帳戶設定。如要為功能檢視畫面使用專屬服務帳戶,請輸入
SERVICE_AGENT_TYPE_FEATURE_VIEW
。
HTTP 方法和網址:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
JSON 要求主體:
{ "feature_registry_source": { "feature_groups": [ { "feature_group_id": "FEATUREGROUP_NAME_A", "feature_ids": [ "FEATURE_ID_A1", "FEATURE_ID_A2" ] }, { "feature_group_id": "FEATUREGROUP_NAME_B", "feature_ids": [ "FEATURE_ID_B1", "FEATURE_ID_B2" ] } ] }, "sync_config": { SYNC_CONFIG }, "service_agent_type": "SERVICE_AGENT_TYPE", }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X POST \
-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?feature_view_id=FEATUREVIEW_NAME"
PowerShell
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-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?feature_view_id=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.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
使用 BigQuery 來源建立特徵檢視表
如果您不想使用特徵群組和特徵註冊 BigQuery 資料來源,而是想在線上提供特徵,可以指定 BigQuery 資料來源的 URI,建立特徵檢視。
如果您透過指定資料來源建立地圖檢視畫面:
您無法在 BigQuery 資料表或檢視表中加入
feature_timestamp
欄。您無法在資料來源中加入歷來特徵值。每個資料列都必須包含不重複的實體 ID。
建立使用預設服務帳戶且不支援嵌入功能的特徵檢視表
使用下列範例,直接關聯 BigQuery 資料來源,不必指定服務帳戶設定,即可建立不支援嵌入功能的特色檢視畫面。
Python 適用的 Vertex AI SDK
如要瞭解如何安裝或更新 Python 適用的 Vertex AI SDK,請參閱「安裝 Python 適用的 Vertex AI SDK」。 詳情請參閱 Vertex AI SDK for Python API 參考說明文件。
project
:您的專案 ID。location
:要建立地圖項目檢視畫面的區域,例如us-central1
。existing_feature_online_store_id
:要建立功能檢視畫面的線上商店執行個體名稱。feature_view_id
:您要建立的新地圖項目檢視畫面執行個體名稱。bq_table_uri
:BigQuery 來源資料表或檢視表的 URI。entity_id_columns
:包含實體 ID 的資料欄名稱。您可以指定一或多個資料欄。- 如要只指定一個實體 ID 欄,請使用下列格式指定欄名稱:
"entity_id_column_name"
。 - 如要指定多個實體 ID 欄,請使用以下格式指定欄名稱:
["entity_id_column_1_name", "entity_id_column_2_name", ...]
。
- 如要只指定一個實體 ID 欄,請使用下列格式指定欄名稱:
REST
如要建立 FeatureView
資源,請使用 featureViews.create 方法傳送 POST
要求。
使用任何要求資料之前,請先替換以下項目:
- LOCATION_ID:要建立地圖項目檢視畫面的區域,例如
us-central1
。 - PROJECT_ID:您的專案 ID。
- FEATUREONLINESTORE_NAME:要建立功能檢視畫面的線上商店執行個體名稱。
- FEATUREVIEW_NAME:您要建立的新地圖項目檢視畫面名稱。
- PROJECT_NAME:您的專案名稱。
- DATASET_NAME:BigQuery 資料集名稱。
- TABLE_NAME:BigQuery 資料集中的資料表名稱。
- ENTITY_ID_COLUMNS:包含實體 ID 的資料欄名稱。您可以指定一或多個資料欄。
- 如要只指定一個實體 ID 欄,請使用以下格式指定欄名稱:
"entity_id_column_name"
- 如要指定多個實體 ID 欄,請使用以下格式指定欄名稱:
["entity_id_column_1_name", "entity_id_column_2_name", ...]
- 如要只指定一個實體 ID 欄,請使用以下格式指定欄名稱:
- CRON:Cron 排程運算式,代表將資料同步至地圖檢視畫面的頻率。詳情請參閱 cron。
HTTP 方法和網址:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
JSON 要求主體:
{ "big_query_source": { "uri": "bq://PROJECT_NAME.DATASET_NAME.TABLE_NAME", "entity_id_columns": "ENTITY_ID_COLUMNS" }, "sync_config": { "cron": "CRON" } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X POST \
-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?feature_view_id=FEATUREVIEW_NAME"
PowerShell
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-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?feature_view_id=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.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
建立使用預設服務帳戶且支援嵌入功能的特徵資料檢視
使用下列範例,直接將 BigQuery 資料來源與預設服務帳戶設定建立關聯,藉此建立支援嵌入功能的特色檢視。
Python 適用的 Vertex AI SDK
如要瞭解如何安裝或更新 Python 適用的 Vertex AI SDK,請參閱「安裝 Python 適用的 Vertex AI SDK」。 詳情請參閱 Vertex AI SDK for Python API 參考說明文件。
project
:您的專案 ID。location
:要建立地圖項目檢視畫面的區域,例如us-central1
。existing_feature_online_store_id
:要建立功能檢視畫面的線上商店執行個體名稱。feature_view_id
:您要建立的新地圖項目檢視畫面執行個體名稱。bq_table_uri
:BigQuery 來源資料表或檢視表的 URI。entity_id_columns
:包含實體 ID 的資料欄名稱。您可以指定一或多個資料欄。- 如要只指定一個實體 ID 欄,請使用下列格式指定欄名稱:
"entity_id_column_name"
。 - 如要指定多個實體 ID 欄,請使用以下格式指定欄名稱:
["entity_id_column_1_name", "entity_id_column_2_name", ...]
。
- 如要只指定一個實體 ID 欄,請使用下列格式指定欄名稱:
embedding_column
:包含來源資料的資料欄名稱,用於建立向量搜尋的索引。只有在您想透過功能檢視畫面管理嵌入項目時,才需要這項設定。embedding_dimensions
:選用。嵌入資料欄中嵌入項目的大小,以維度數量表示。
REST
如要建立 FeatureView
資源,請使用 featureViews.create 方法傳送 POST
要求。
使用任何要求資料之前,請先替換以下項目:
- LOCATION_ID:要建立地圖項目檢視畫面的區域,例如
us-central1
。 - PROJECT_ID:您的專案 ID。
- FEATUREONLINESTORE_NAME:要建立功能檢視畫面的線上商店執行個體名稱。
- FEATUREVIEW_NAME:您要建立的新地圖項目檢視畫面名稱。
- PROJECT_NAME:您的專案名稱。
- DATASET_NAME:BigQuery 資料集名稱。
- TABLE_NAME:BigQuery 資料集中的資料表名稱。
- ENTITY_ID_COLUMNS:包含實體 ID 的資料欄名稱。您可以指定一或多個資料欄。
- 如要只指定一個實體 ID 欄,請使用以下格式指定欄名稱:
"entity_id_column_name"
- 如要指定多個實體 ID 欄,請使用以下格式指定欄名稱:
["entity_id_column_1_name", "entity_id_column_2_name", ...]
- 如要只指定一個實體 ID 欄,請使用以下格式指定欄名稱:
- CRON:Cron 排程運算式,代表將資料同步至地圖檢視畫面的頻率。詳情請參閱 cron。
- EMBEDDING_COLUMN:包含來源資料的資料欄名稱,用於建立向量搜尋的索引。只有在您想透過功能檢視畫面管理嵌入項目時,才需要這項設定。
- FILTER_COLUMN_1 和 FILTER_COLUMN_2:選用:用於篩選向量搜尋結果的資料欄名稱。
- CROWDING_COLUMN:選用:包含擁擠屬性的資料欄名稱。
- EMBEDDING_DIMENSION:選用:嵌入資料欄中嵌入項目的大小,以維度數量表示。
HTTP 方法和網址:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
JSON 要求主體:
{ "big_query_source": { "uri": "bq://PROJECT_NAME.DATASET_NAME.TABLE_NAME", "entity_id_columns": "ENTITY_ID_COLUMNS" }, "sync_config": { "cron": "CRON" }, "index_config": { "embedding_column": "EMBEDDING_COLUMN", "filter_columns": ["FILTER_COLUMN_1", "FILTER_COLUMN_2"], "crowding_column": "CROWDING_COLUMN", "embedding_dimension": EMBEDDING_DIMENSION "tree_ah_config": {} } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X POST \
-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?feature_view_id=FEATUREVIEW_NAME"
PowerShell
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-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?feature_view_id=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.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
使用專屬服務帳戶建立功能檢視畫面,且不使用嵌入管理
請使用下列範例,直接關聯 BigQuery 資料來源並指定服務帳戶設定,建立不支援嵌入功能檢視畫面。
REST
如要建立支援嵌入功能的 FeatureView
資源,請使用 featureViews.create 方法並指定 FeatureView.index_config
參數,傳送 POST
要求。請注意,只有在線上商店已設定為最佳化線上放送功能時,才能使用嵌入管理功能。
使用任何要求資料之前,請先替換以下項目:
- LOCATION_ID:要建立地圖項目檢視畫面的區域,例如
us-central1
。 - PROJECT_ID:您的專案 ID。
- FEATUREONLINESTORE_NAME:要建立功能檢視畫面的線上商店執行個體名稱。
- FEATUREVIEW_NAME:您要建立的新地圖項目檢視畫面名稱。
- PROJECT_NAME:您的專案名稱。
- DATASET_NAME:BigQuery 資料集名稱。
- TABLE_NAME:BigQuery 資料集中的資料表名稱。
- ENTITY_ID_COLUMNS:包含實體 ID 的資料欄名稱。您可以指定一或多個資料欄。
- 如要只指定一個實體 ID 欄,請使用以下格式指定欄名稱:
"entity_id_column_name"
- 如要指定多個實體 ID 欄,請使用以下格式指定欄名稱:
["entity_id_column_1_name", "entity_id_column_2_name", ...]
- 如要只指定一個實體 ID 欄,請使用以下格式指定欄名稱:
- CRON:Cron 排程運算式,代表將資料同步至地圖檢視畫面的頻率。詳情請參閱 cron。
- SERVICE_AGENT_TYPE:地圖項目檢視畫面的服務帳戶設定。如要為功能檢視畫面使用專屬服務帳戶,請輸入
SERVICE_AGENT_TYPE_FEATURE_VIEW
。
HTTP 方法和網址:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
JSON 要求主體:
{ "big_query_source": { "uri": "bq://PROJECT_NAME.DATASET_NAME.TABLE_NAME", "entity_id_columns": "ENTITY_ID_COLUMNS" }, "sync_config": { "cron": "CRON" }, "service_agent_type": "SERVICE_AGENT_TYPE", }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X POST \
-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?feature_view_id=FEATUREVIEW_NAME"
PowerShell
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-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?feature_view_id=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.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
建立內嵌管理和專用服務帳戶的功能檢視畫面
使用下列範例,直接關聯 BigQuery 資料來源並指定服務帳戶設定,藉此建立支援嵌入功能的特色檢視畫面。
REST
如要建立支援嵌入功能的 FeatureView
資源,請使用 featureViews.create 方法並指定 FeatureView.index_config
參數,傳送 POST
要求。請注意,只有在線上商店已設定為最佳化線上放送功能時,才能使用嵌入管理功能。
使用任何要求資料之前,請先替換以下項目:
- LOCATION_ID:要建立地圖項目檢視畫面的區域,例如
us-central1
。 - PROJECT_ID:您的專案 ID。
- FEATUREONLINESTORE_NAME:要建立功能檢視畫面的線上商店執行個體名稱。
- FEATUREVIEW_NAME:您要建立的新地圖項目檢視畫面名稱。
- PROJECT_NAME:您的專案名稱。
- DATASET_NAME:BigQuery 資料集名稱。
- TABLE_NAME:BigQuery 資料集中的資料表名稱。
- ENTITY_ID_COLUMNS:包含實體 ID 的資料欄名稱。您可以指定一或多個資料欄。
- 如要只指定一個實體 ID 欄,請使用以下格式指定欄名稱:
"entity_id_column_name"
- 如要指定多個實體 ID 欄,請使用以下格式指定欄名稱:
["entity_id_column_1_name", "entity_id_column_2_name", ...]
- 如要只指定一個實體 ID 欄,請使用以下格式指定欄名稱:
- CRON:Cron 排程運算式,代表將資料同步至地圖檢視畫面的頻率。詳情請參閱 cron。
- SERVICE_AGENT_TYPE:地圖項目檢視畫面的服務帳戶設定。如要為功能檢視畫面使用專屬服務帳戶,請輸入
SERVICE_AGENT_TYPE_FEATURE_VIEW
。 - EMBEDDING_COLUMN:包含來源資料的資料欄名稱,用於建立向量搜尋的索引。只有在您想透過功能檢視畫面管理嵌入項目時,才需要這項設定。
- FILTER_COLUMN_1 和 FILTER_COLUMN_2:選用:用於篩選向量搜尋結果的資料欄名稱。
- CROWDING_COLUMN:選用:包含擁擠屬性的資料欄名稱。
- EMBEDDING_DIMENSION:選用:嵌入資料欄中嵌入項目的大小,以維度數量表示。
HTTP 方法和網址:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
JSON 要求主體:
{ "big_query_source": { "uri": "bq://PROJECT_NAME.DATASET_NAME.TABLE_NAME", "entity_id_columns": "ENTITY_ID_COLUMNS" }, "sync_config": { "cron": "CRON" }, "service_agent_type": "SERVICE_AGENT_TYPE", "index_config": { "embedding_column": "EMBEDDING_COLUMN", "filter_columns": ["FILTER_COLUMN_1", "FILTER_COLUMN_2"], "crowding_column": "CROWDING_COLUMN", "embedding_dimension": EMBEDDING_DIMENSION "tree_ah_config": {} } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X POST \
-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?feature_view_id=FEATUREVIEW_NAME"
PowerShell
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-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?feature_view_id=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.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
後續步驟
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-07-09 (世界標準時間)。