Menyajikan nilai fitur historis

Jika Anda perlu mengambil atau menyalurkan data fitur saat ini dan historis, gunakan penayangan offline untuk mengambil nilai fitur dari BigQuery. Misalnya, Anda dapat menggunakan penyaluran offline untuk mengambil nilai fitur untuk stempel waktu tertentu guna melatih model.

Semua data fitur, termasuk data fitur historis, dikelola di BigQuery, yang merupakan penyimpanan offline untuk nilai fitur Anda. Untuk menggunakan penayangan offline, Anda harus mendaftarkan sumber data BigQuery terlebih dahulu dengan membuat grup fitur dan nilai fitur. Selain itu, dalam kasus penayangan offline, setiap baris yang berisi ID entity yang sama harus memiliki stempel waktu yang berbeda. Untuk mengetahui informasi selengkapnya tentang panduan persiapan sumber data, lihat Menyiapkan sumber data.

Sebelum memulai

Lakukan autentikasi ke Gemini Enterprise Agent Platform, kecuali jika Anda sudah melakukannya.

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. Instal Google Cloud CLI.

  2. Konfigurasi gcloud CLI agar menggunakan identitas gabungan Anda.

    Untuk mengetahui informasi selengkapnya, lihat Login ke gcloud CLI dengan identitas gabungan Anda.

  3. Buat kredensial autentikasi lokal untuk akun pengguna Anda:

    gcloud auth application-default login

    Jika error autentikasi ditampilkan, pastikan Anda telah login ke gcloud CLI dengan identitas gabungan Anda.

Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

Mengambil nilai fitur historis

Gunakan contoh berikut untuk mengambil nilai historis dari fitur dari beberapa ID entitas dan stempel waktu.

Python

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai Agent Platform menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Python API Agent Platform.

Untuk melakukan autentikasi ke Agent Platform, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

Sebelum menjalankan contoh kode, tetapkan variabel lingkungan GOOGLE_CLOUD_UNIVERSE_DOMAIN ke s3nsapis.fr.

import bigframes
import bigframes.pandas
import pandas as pd
from google.cloud import bigquery
from vertexai.resources.preview.feature_store import (Feature, FeatureGroup, offline_store)
from vertexai.resources.preview.feature_store import utils as fs_utils

fg = FeatureGroup("FEATURE_GROUP_NAME")
f1 = fg.get_feature("FEATURE_NAME_1")
f2 = fg.get_feature("FEATURE_NAME_2")

entity_df = pd.DataFrame(
  data={
    "ENTITY_ID_COLUMN": [
      "ENTITY_ID_1",
      "ENTITY_ID_2",
    ],
    "timestamp": [
      pd.Timestamp("FEATURE_TIMESTAMP_1"),
      pd.Timestamp("FEATURE_TIMESTAMP_2"),
    ],
  },
)

offline_store.fetch_historical_feature_values(
  entity_df=entity_df,
  features=[f1,f2],
)

Ganti kode berikut:

  • FEATURE_GROUP_NAME: Nama grup fitur yang ada yang berisi fitur.

  • FEATURE_NAME_1 dan FEATURE_NAME_2: Nama-nama fitur terdaftar yang ingin Anda ambil nilai fiturnya.

  • ENTITY_ID_COLUMN: Nama kolom yang berisi ID entity. Anda dapat menentukan nama kolom hanya jika kolom tersebut terdaftar dalam grup fitur.

  • ENTITY_ID_1 dan ENTITY_ID_2: ID entity yang nilai fiturnya ingin Anda ambil. Jika Anda ingin mengambil nilai fitur untuk ID entity yang sama pada stempel waktu yang berbeda, tentukan ID entity yang sama yang sesuai dengan setiap stempel waktu.

  • FEATURE_TIMESTAMP_1 dan FEATURE_TIMESTAMP_2: Stempel waktu yang sesuai dengan nilai fitur historis yang ingin Anda ambil. FEATURE_TIMESTAMP_1 sesuai dengan ENTITY_ID_1, FEATURE_TIMESTAMP_2 sesuai dengan ENTITY_ID_2, dan sebagainya. Tentukan stempel waktu dalam format tanggal dan waktu—misalnya, 2024-05-01T12:00:00.