建立功能

建立特徵群組並將 BigQuery 資料表或 BigQuery 檢視區塊與其建立關聯後,即可建立特徵。您可以為特徵群組建立多個特徵,並將每個特徵與 BigQuery 資料來源中的特定資料欄建立關聯。如要瞭解如何使用 BigQuery,請參閱 BigQuery 說明文件

舉例來說,如果特徵群組 featuregroup1 與 BigQuery 資料表 datasource_1 建立關聯,而資料表 datasource_1fval1fval2 欄包含特徵值,您就可以在 featuregroup1 下方建立特徵 feature_1,並將其與 fval1 欄中的特徵值建立關聯。同樣地,您可以建立另一個名為 feature_2 的特徵,並將其與 fval2 欄中的特徵值建立關聯。

特徵群組必須先與特徵資料來源建立關聯,才能建立特徵。如果特徵群組沒有相關聯的資料來源,您必須更新特徵群組,建立關聯的 BigQuery 資料來源,才能在特徵群組中建立特徵。

如要瞭解使用功能群組和功能註冊功能資料是必要、選用還是不建議,請參閱下列文章:

事前準備

向 Gemini Enterprise Agent Platform 驗證,除非您已完成驗證。

選取這個頁面上您打算如何使用範例的分頁:

控制台

使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,無須設定驗證。

Python

如要在本機開發環境中使用本頁的 Python 範例,請安裝並初始化 gcloud CLI,然後使用您的使用者憑證設定應用程式預設憑證。

  1. 安裝 Google Cloud CLI。

  2. 若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI

  3. 如果您使用本機殼層,請為使用者帳戶建立本機驗證憑證:

    gcloud auth application-default login

    如果您使用 Cloud Shell,則不需要執行這項操作。

    如果系統傳回驗證錯誤,且您使用外部識別資訊提供者 (IdP),請確認您已 使用聯合身分登入 gcloud CLI

詳情請參閱 這篇文章,瞭解如何設定本機開發環境的驗證機制。

REST

如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。

    安裝 Google Cloud CLI。

    若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI

詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」。

在特徵群組中建立特徵

請使用下列範例,在特徵群組中建立特徵,並將包含特徵值的資料欄與特徵群組註冊的 BigQuery 資料來源建立關聯。

控制台

請按照下列操作說明,使用 Google Cloud 控制台將功能新增至現有功能群組。

  1. 在 Google Cloud 控制台的「Agent Platform」部分,前往「特徵儲存庫」頁面。

    前往「特徵儲存庫」頁面

  2. 在「功能群組」部分,按一下要新增功能的對應功能群組列中的 ,然後按一下「新增功能」

  3. 為每個特徵輸入特徵名稱,然後在清單中按一下對應的 BigQuery 來源資料欄名稱。如要新增更多功能,請按一下「新增其他功能」

  4. 點選「建立」

Python

如要瞭解如何安裝或更新 Vertex AI SDK for Python,請參閱「安裝 Vertex AI SDK for Python」。 詳情請參閱 Python API 參考文件


from google.cloud import aiplatform
from vertexai.resources.preview import feature_store


def create_feature_sample(
    project: str,
    location: str,
    existing_feature_group_id: str,
    feature_id: str,
    version_column_name: str,
):
    aiplatform.init(project=project, location=location)
    feature_group = feature_store.FeatureGroup(existing_feature_group_id)
    feature = feature_group.create_feature(
        name=feature_id, version_column_name=version_column_name
    )
    return feature

  • project:專案 ID。
  • location:特徵群組所在的區域,例如 us-central1
  • existing_feature_group_id:要建立特徵的現有特徵群組名稱。
  • version_column_name:選用:要與特徵建立關聯的 BigQuery 資料表或檢視畫面中的資料欄。如未指定此參數,系統預設會設為 FEATURE_NAME
  • feature_id:要建立的新功能名稱

REST

如要建立 Feature 資源,請使用 features.create 方法傳送 POST 要求。

使用任何要求資料之前,請先修改下列項目的值:

  • LOCATION_ID:特徵群組所在的區域,例如 us-central1
  • PROJECT_ID:專案 ID。
  • FEATUREGROUP_NAME:要建立特徵的特徵群組名稱。
  • FEATURE_NAME:要建立的新功能名稱。
  • VERSION_COLUMN_NAME:選用:要與特徵建立關聯的 BigQuery 資料表或檢視畫面中的資料欄。如未指定此參數,系統預設會設為 FEATURE_NAME

HTTP 方法和網址:

POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureGroups/FEATUREGROUP_NAME/features?feature_id=FEATURE_NAME

JSON 要求內文:

{
  "version_column_name": "VERSION_COLUMN_NAME"
}

如要傳送要求,請選擇以下其中一個選項:

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/featureGroups/FEATUREGROUP_NAME/features?feature_id=FEATURE_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/featureGroups/FEATUREGROUP_NAME/features?feature_id=FEATURE_NAME" | Select-Object -Expand Content

您應該會收到如下的 JSON 回覆:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureGroups/FEATUREGROUP_NAME/features/FEATURE_NAME/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.UpdateFeatureOperationMetadata",
    "genericMetadata": {
      "createTime": "2023-09-18T02:36:22.870679Z",
      "updateTime": "2023-09-18T02:36:22.870679Z"
    }
  }
}

後續步驟