אם אתם צריכים לאחזר או להציג נתונים עדכניים וגם היסטוריים של תכונות, אתם יכולים להשתמש בהצגה אופליין כדי לאחזר ערכי תכונות מ-BigQuery. לדוגמה, אפשר להשתמש בהצגה אופליין כדי לאחזר את ערכי התכונות עבור חותמות זמן ספציפיות כדי לאמן מודל.
כל נתוני התכונות, כולל נתוני התכונות ההיסטוריים, נשמרים ב-BigQuery, שמשמש כמאגר האופליין של ערכי התכונות. כדי להשתמש בהצגת מודעות אופליין, קודם צריך לרשום את מקור הנתונים של BigQuery על ידי יצירת קבוצות של תכונות וערכי תכונות. בנוסף, במקרה של הצגה אופליין, לכל שורה שמכילה את אותו מזהה ישות צריכה להיות חותמת זמן שונה. מידע נוסף על הנחיות להכנת מקור נתונים זמין במאמר הכנת מקור נתונים.
לפני שמתחילים
מאמתים את Gemini Enterprise Agent Platform, אלא אם כבר עשיתם זאת.
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Python שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות, צריך לוודא ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
אחזור ערכים היסטוריים של תכונות
אפשר להשתמש בדוגמה הבאה כדי לאחזר ערכים היסטוריים מתכונה מכמה מזהי ישויות וחותמות זמן.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonההוראות להגדרה במאמר מדריך למתחילים של Agent Platform באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Agent Platform Python API.
כדי לבצע אימות ב-Agent Platform, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך 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],
)
מחליפים את מה שכתוב בשדות הבאים:
FEATURE_GROUP_NAME: השם של קבוצת התכונות הקיימת שמכילה את התכונה.
FEATURE_NAME_1 ו-FEATURE_NAME_2: השמות של התכונות הרשומות שרוצים לאחזר את ערכי התכונות שלהן.
ENTITY_ID_COLUMN: שם העמודה שמכילה את מזהי הישויות. אפשר לציין שם של עמודה רק אם היא רשומה בקבוצת התכונות.
ENTITY_ID_1 ו-ENTITY_ID_2: מזהי הישויות שרוצים לאחזר את ערכי התכונות שלהן. אם רוצים לאחזר ערכי מאפיינים לאותו מזהה ישות בחותמות זמן שונות, צריך לציין את אותו מזהה ישות שמתאים לכל חותמת זמן.
FEATURE_TIMESTAMP_1 ו-FEATURE_TIMESTAMP_2: חותמות הזמן שמתאימות לערכי התכונות ההיסטוריים שרוצים לאחזר. FEATURE_TIMESTAMP_1 מתאים ל-ENTITY_ID_1, FEATURE_TIMESTAMP_2 מתאים ל-ENTITY_ID_2 וכן הלאה. מציינים את חותמות הזמן בפורמט של תאריך ושעה – לדוגמה,
2024-05-01T12:00:00.