Membuat grup fitur

Anda dapat membuat grup fitur untuk mendaftarkan tabel atau tampilan BigQuery yang berisi data fitur Anda.

Untuk setiap tabel atau tampilan BigQuery yang dikaitkan dengan grup fitur, Anda harus memastikan hal-hal berikut:

Setelah membuat grup fitur dan mengaitkan sumber data BigQuery, Anda dapat membuat fitur untuk dikaitkan dengan kolom dalam sumber data. Menentukan sumber data saat membuat grup fitur bersifat opsional. Namun, Anda harus menentukan sumber data sebelum membuat fitur.

Mendaftarkan sumber data Anda menggunakan fitur dan grup fitur memiliki beberapa keuntungan berikut:

  • Anda dapat menentukan tampilan fitur untuk penyaluran online menggunakan kolom fitur tertentu dari beberapa sumber data BigQuery.

  • Secara opsional, Anda dapat memformat data sebagai deret waktu dengan menentukan kolom stempel waktu fitur. Vertex AI Feature Store hanya menyalurkan nilai fitur terbaru dari data fitur dan tidak menyertakan nilai historis.

  • Anda dapat menemukan sumber BigQuery sebagai sumber data fitur terkait saat menelusuri resource grup fitur di Data Catalog.

Sebelum memulai

Lakukan autentikasi ke Vertex AI, kecuali jika Anda telah melakukannya.

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

Untuk menggunakan contoh Python di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.

  1. Install the Google Cloud CLI.
  2. To initialize the gcloud CLI, run the following command:

    gcloud init
  3. Buat kredensial autentikasi lokal untuk Akun Google Anda:

    gcloud auth application-default login

Untuk informasi selengkapnya, lihat Set up authentication for a local development environment.

REST

Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

    Install the Google Cloud CLI, then initialize it by running the following command:

    gcloud init

Untuk informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.

Membuat grup fitur dari sumber BigQuery

Gunakan contoh berikut untuk membuat grup fitur dan mengaitkan sumber data BigQuery.

Konsol

Gunakan petunjuk berikut untuk membuat grup fitur menggunakan konsol Google Cloud.

  1. Di bagian Vertex AI pada Konsol Google Cloud, buka halaman Feature Store.

    Buka halaman Feature Store

  2. Di bagian Grup fitur, klik Buat untuk membuka panel Info dasar di halaman Buat Grup Fitur.

  3. Tentukan Nama grup fitur.

  4. Opsional: Untuk menambahkan label, klik Tambahkan label, lalu tentukan nama dan nilai label. Anda dapat menambahkan beberapa label ke grup fitur.

  5. Di kolom BigQuery path, klik Browse untuk memilih tabel atau tampilan sumber BigQuery yang akan dikaitkan dengan grup fitur.

  6. Opsional: Dalam daftar Kolom ID entitas, klik kolom ID entitas dari tabel atau tampilan sumber BigQuery.

  7. Klik Lanjutkan.

  8. Di panel Register, klik salah satu opsi berikut untuk menunjukkan apakah Anda ingin menambahkan fitur ke grup fitur baru:

    • Sertakan semua kolom dari tabel BigQuery—Buat fitur dalam grup fitur untuk semua kolom dalam tabel atau tampilan sumber BigQuery.

    • Memasukkan fitur secara manual—Buat fitur berdasarkan kolom tertentu di sumber BigQuery. Untuk setiap fitur, masukkan Feature name dan klik nama kolom sumber BigQuery yang sesuai dalam daftar.

      Untuk menambahkan fitur lainnya, klik Tambahkan fitur lainnya.

    • Membuat grup fitur kosong—Membuat grup fitur tanpa menambahkan fitur ke dalamnya.

  9. Klik Create.

Python

Untuk mempelajari cara menginstal atau mengupdate Vertex AI SDK untuk Python, lihat Menginstal Vertex AI SDK untuk Python. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi Python API.


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


def create_feature_group_sample(
    project: str,
    location: str,
    feature_group_id: str,
    bq_table_uri: str,
    entity_id_columns: List[str],
):
    aiplatform.init(project=project, location=location)
    fg = feature_store.FeatureGroup.create(
        name=feature_group_id,
        source=feature_store.utils.FeatureGroupBigQuerySource(
            uri=bq_table_uri, entity_id_columns=entity_id_columns
        ),
    )
    return fg

  • project: Project ID Anda.
  • location: Region tempat Anda ingin membuat grup fitur, misalnya us-central1.
  • feature_group_id: Nama grup fitur baru yang ingin Anda buat.
  • bq_table_uri: URI tabel atau tampilan sumber BigQuery yang ingin Anda daftarkan untuk grup fitur.
  • entity_id_columns: Nama kolom yang berisi ID entity. Anda dapat menentukan satu kolom atau beberapa kolom.
    • Untuk menentukan hanya satu kolom ID entity, tentukan nama kolom dalam format berikut:
      "entity_id_column_name".
    • Untuk menentukan beberapa kolom ID entity, tentukan nama kolom dalam format berikut:
      ["entity_id_column_1_name", "entity_id_column_2_name", ...].

REST

Untuk membuat resource FeatureGroup, kirim permintaan POST menggunakan metode featureGroups.create.

Sebelum menggunakan data permintaan mana pun, lakukan penggantian berikut:

  • LOCATION_ID: Region tempat Anda ingin membuat grup fitur, misalnya us-central1.
  • ENTITY_ID_COLUMNS: Nama kolom yang berisi ID entity. Anda dapat menentukan satu kolom atau beberapa kolom.
    • Untuk menentukan hanya satu kolom ID entity, tentukan nama kolom dalam format berikut:
      "entity_id_column_name".
    • Untuk menentukan beberapa kolom ID entity, tentukan nama kolom dalam format berikut:
      ["entity_id_column_1_name", "entity_id_column_2_name", ...].
  • PROJECT_ID: Project ID Anda.
  • FEATUREGROUP_NAME: Nama grup fitur baru yang ingin Anda buat.
  • BIGQUERY_SOURCE_URI: URI tabel atau tampilan sumber BigQuery yang ingin Anda daftarkan untuk grup fitur.
  • TIMESTAMP_COLUMN: Opsional. Tentukan nama kolom yang berisi stempel waktu fitur di tabel atau tampilan sumber BigQuery.
    Anda hanya perlu menentukan nama kolom stempel waktu jika data diformat sebagai deret waktu dan kolom yang berisi stempel waktu fitur tidak bernama feature_timestamp.
  • STATIC_DATA_SOURCE: Opsional. Masukkan true jika data tidak diformat sebagai deret waktu. Setelan default-nya adalah false.
  • DENSE: Opsional. Tunjukkan cara Vertex AI Feature Store menangani nilai null saat menyalurkan data dari tampilan fitur yang terkait dengan grup fitur:
    • false—Ini adalah setelan default. Vertex AI Feature Store hanya menyalurkan nilai fitur non-null terbaru. Jika nilai terbaru untuk suatu fitur adalah null, Vertex AI Feature Store akan menyalurkan nilai historis non-null terbaru. Namun, jika nilai saat ini dan historis untuk fitur tersebut bernilai null, Vertex AI Feature Store akan menyalurkan null sebagai nilai fitur.
    • true—Untuk tampilan fitur dengan sinkronisasi data terjadwal, Vertex AI Feature Store hanya menyalurkan nilai fitur terbaru, termasuk nilai null. Untuk tampilan fitur dengan sinkronisasi data berkelanjutan, Vertex AI Feature Store hanya menyalurkan nilai fitur non-null terbaru. Namun, jika nilai saat ini dan historis untuk fitur tersebut adalah null, Vertex AI Feature Store akan menyalurkan null sebagai nilai fitur. Untuk mengetahui informasi selengkapnya tentang jenis sinkronisasi data dan cara mengonfigurasi jenis sinkronisasi data dalam tampilan fitur, lihat Menyinkronkan data dalam tampilan fitur.

Metode HTTP dan URL:

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

Isi JSON permintaan:

{
  "big_query": {
    "entity_id_columns": "ENTITY_ID_COLUMNS",
    "big_query_source": {
      "input_uri": "BIGQUERY_SOURCE_URI",
    }
    "time_series": {
      "timestamp_column": ""TIMESTAMP_COLUMN"",
    },
    "static_data_source": STATIC_DATA_SOURCE,
    "dense": DENSE
  }
}

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

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?feature_group_id=FEATUREGROUP_NAME"

PowerShell

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

$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?feature_group_id=FEATUREGROUP_NAME" | Select-Object -Expand Content

Anda akan melihat respons JSON yang mirip dengan berikut ini:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureGroups/FEATUREGROUP_NAME/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.UpdateFeatureGroupOperationMetadata",
    "genericMetadata": {
      "createTime": "2023-09-18T03:00:13.060636Z",
      "updateTime": "2023-09-18T03:00:13.060636Z"
    }
  }
}

Langkah berikutnya