特徴を作成する

特徴グループを作成して BigQuery テーブルまたは BigQuery ビューを関連付けると、特徴を作成できます。1 つの特徴グループに複数の特徴を作成し、各特徴を BigQuery データソースの特定の列に関連付けることができます。BigQuery の使用方法については、BigQuery のドキュメントをご覧ください。

たとえば、特徴グループ featuregroup1 が fval1 列と fval2 列の特徴値を含む BigQuery テーブル datasource_1 と関連付けられている場合は、featuregroup1 の下に特徴 feature_1 を作成して fval1 列の特徴値と関連付けることができます。同様に、feature_2 という名前の別の特徴を作成し、fval2 列の特徴値に関連付けることができます。

特徴を作成する前に、特徴グループに特徴データソースを関連付ける必要があります。特徴グループにデータソースが関連付けられていない場合は、特徴グループ内に特徴を作成するには、まず特徴グループを更新して BigQuery データソースを関連付ける必要があります。

特徴グループと特徴を使用して特徴データを登録することが必須、任意、または推奨されないのいずれであるかを把握するには、以下をご覧ください。

始める前に

まだ行っていない場合は、Gemini Enterprise Agent Platform に対する認証を行います。

このページのサンプルをどのように使うかに応じて、タブを選択してください。

コンソール

Cloud de Confiance コンソールを使用して Cloud de Confiance by S3NS サービスと API にアクセスする場合、認証を設定する必要はありません。

Python

ローカル開発環境でこのページの Python サンプルを使用するには、gcloud CLI をインストールして初期化し、ユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定します。

  1. Google Cloud CLI をインストールします。

  2. フェデレーション ID(連携 ID)を使用するように gcloud CLI を構成します。

    詳細については、 フェデレーション ID を使用して gcloud CLI にログインするをご覧ください。

  3. ユーザー アカウントのローカル認証情報を作成します。

    gcloud auth application-default login

    認証エラーが返された場合は、 フェデレーション ID を使用して gcloud CLI にログインしていることを確認します。

詳細については、 ローカル開発環境の認証を設定するをご覧ください。

REST

このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。

    Google Cloud CLI をインストールし、 フェデレーション ID を使用して gcloud CLI にログインします。

詳細については、 Cloud de Confiance 認証ドキュメントの REST を使用して認証するをご覧ください。

特徴グループ内に特徴を作成する

次のサンプルを使用して、特徴グループ内に特徴を作成し、特徴グループに登録された BigQuery データソースの特徴値を含む列を関連付けることができます。

コンソール

Cloud de Confiance コンソールを使用して既存の特徴グループに特徴を追加するには、次の操作を行います。

  1. Cloud de Confiance コンソールの [Agent Platform] セクションで、[Feature Store] ページに移動します。

    [Feature Store] ページに移動

  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 メソッドと URL:

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"
    }
  }
}

次のステップ