Wenn Sie aktuelle und Verlaufsdaten abrufen oder bereitstellen möchten, verwenden Sie die Offlinebereitstellung, um Featurewerte aus BigQuery abzurufen. Sie können die Offlinebereitstellung beispielsweise verwenden, um die Featurewerte für bestimmte Zeitstempel abzurufen und ein Modell zu trainieren.
Alle Feature-Daten, einschließlich Verlaufsdaten, werden in BigQuery verwaltet. Dies ist der Offlinespeicher für Ihre Featurewerte. Wenn Sie die Offlinebereitstellung verwenden möchten, müssen Sie zuerst Ihre BigQuery-Datenquelle registrieren, indem Sie Featuregruppen und Featurewerte erstellen. Außerdem muss bei der Offlineauslieferung jede Zeile mit derselben Entitäts-ID einen anderen Zeitstempel haben. Weitere Informationen zu den Richtlinien für die Vorbereitung von Datenquellen finden Sie unter Datenquelle vorbereiten.
Vorbereitung
Authentifizieren Sie sich bei Vertex AI, sofern nicht bereits geschehen.
Wenn Sie die Python Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Weitere Informationen unter Set up authentication for a local development environment.
Bisherige Featurewerte abrufen
Im folgenden Beispiel werden Verlaufswerte für ein Feature anhand mehrerer Entitäts-IDs und Zeitstempel abgerufen.
Python
Bevor Sie dieses Beispiel anwenden, folgen Sie den Python-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Python API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
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],
)
Ersetzen Sie dabei Folgendes:
FEATURE_GROUP_NAME: Der Name der vorhandenen Featuregruppe, die das Feature enthält.
FEATURE_NAME_1 und FEATURE_NAME_2: Die Namen der registrierten Features, aus denen Sie die Featurewerte abrufen möchten.
ENTITY_ID_COLUMN: Der Name der Spalte, die die Entitäts-IDs enthält. Sie können nur einen Spaltennamen angeben, wenn er in der Feature-Gruppe registriert ist.
ENTITY_ID_1 und ENTITY_ID_2: Die Entitäts-IDs, für die Sie die Featurewerte abrufen möchten. Wenn Sie Featurewerte für dieselbe Entitäts-ID zu verschiedenen Zeitstempeln abrufen möchten, geben Sie für jeden Zeitstempel dieselbe Entitäts-ID an.
FEATURE_TIMESTAMP_1 und FEATURE_TIMESTAMP_2: Die Zeitstempel der bisherigen Featurewerte, die Sie abrufen möchten. FEATURE_TIMESTAMP_1 entspricht ENTITY_ID_1, FEATURE_TIMESTAMP_2 entspricht ENTITY_ID_2 usw. Geben Sie die Zeitstempel im Datums-/Uhrzeitformat an, z. B.
2024-05-01T12:00:00
.