Featuregruppe erstellen

Sie können eine Featuregruppe erstellen, um eine BigQuery-Tabelle oder ‐Ansicht zu registrieren, die Ihre Featuredaten enthält.

Für jede BigQuery-Tabelle oder -Ansicht, die Sie mit einer Featuregruppe verknüpfen, müssen Sie Folgendes sicherstellen:

Nachdem Sie eine Featuregruppe erstellt und die BigQuery-Daten verknüpft haben Quelle haben, können Sie Features erstellen, die mit den Spalten in der Datenquelle verknüpft werden. Sie können beim Erstellen der Featuregruppe eine Datenquelle angeben. Vor dem Erstellen von Features müssen Sie jedoch eine Datenquelle angeben.

Wenn Sie die Datenquelle mithilfe von Featuregruppen und Features registrieren, bestehen folgende Vorteile:

  • Sie können eine Featureansicht für die Onlinebereitstellung definieren, indem Sie bestimmte Featurespalten aus mehreren BigQuery-Datenquellen verwenden.

  • Sie können Ihre Daten optional als Zeitreihe formatieren, indem Sie eine Feature-Zeitstempelspalte angeben. Vertex AI Feature Store stellt nur die neuesten Featurewerte aus den Featuredaten bereit und schließt historische Werte aus.

  • Sie können die BigQuery-Quelle als zugehörige Feature-Datenquelle ermitteln, wenn Sie in Data Catalog nach der Featuregruppen-Ressource suchen.

Hinweise

Authentifizieren Sie sich bei Vertex AI, sofern nicht bereits geschehen.

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

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.

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

    gcloud init
  3. 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.

REST

Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

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

    gcloud init

Weitere Informationen finden Sie unter Für die Verwendung von REST authentifizieren in der Dokumentation zur Google Cloud-Authentifizierung.

Eine Featureansicht aus einer BigQuery-Quelle erstellen

Verwenden Sie das folgende Beispiel, um eine Featuregruppe zu erstellen und eine BigQuery-Datenquelle zu verknüpfen.

Console

Gehen Sie nach der folgenden Anleitung vor, um mit der Google Cloud Console eine Feature-Gruppe zu erstellen.

  1. Rufen Sie im Abschnitt „Vertex AI“ der Google Cloud Console die Seite Feature Store auf.

    Zur Seite „Feature Store“

  2. Klicken Sie im Abschnitt Featuregruppen auf Erstellen, um den Bereich Allgemeine Informationen auf der Seite Featuregruppe erstellen zu öffnen.

  3. Geben Sie den Namen der Featuregruppe an.

  4. Optional: Klicken Sie auf Label hinzufügen und geben Sie den Namen und den Wert des Labels an. Sie können einer Featuregruppe mehrere Labels hinzufügen.

  5. Klicken Sie im Feld BigQuery-Pfad auf Durchsuchen, um die BigQuery-Quelltabelle oder ‑ansicht auszuwählen, die mit der Featuregruppe verknüpft werden soll.

  6. Optional: Klicken Sie in der Liste Entitäts-ID-Spalte auf die Entitäts-ID-Spalte in der BigQuery-Quelltabelle oder ‐ansicht.

  7. Klicken Sie auf Weiter.

  8. Klicken Sie im Bereich Register (Registrieren) auf eine der folgenden Optionen, um anzugeben, ob Sie der neuen Featuregruppe Features hinzufügen möchten:

    • Alle Spalten aus der BigQuery-Tabelle einschließen: Sie können in der Featuregruppe Features für alle Spalten in der BigQuery-Quelltabelle oder ‐ansicht erstellen.

    • Features manuell eingeben: Sie können Features basierend auf bestimmten Spalten in der BigQuery-Quelle erstellen. Geben Sie für jedes Element einen Feature-Namen ein und klicken Sie in der Liste auf den entsprechenden Namen der BigQuery-Quellspalte.

      Wenn Sie weitere Features hinzufügen möchten, klicken Sie auf Weiteres Feature hinzufügen.

    • Leere Featuregruppe erstellen: Sie erstellen die Featuregruppe, ohne ihr Features hinzuzufügen.

  9. Klicken Sie auf Erstellen.

Python

Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren. Weitere Informationen finden Sie in der Referenzdokumentation zur 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: Ihre Projekt-ID.
  • location: die Region, in der Sie die Featuregruppe erstellen möchten, z. B. us-central1.
  • feature_group_id: der Name der neuen Featuregruppe, die Sie erstellen möchten.
  • bq_table_uri: URI der BigQuery-Quelltabelle oder -Ansicht, die Sie für die Featuregruppe registrieren möchten.
  • entity_id_columns: Die Namen der Spalten mit den Entitäts-IDs. Sie können entweder eine oder mehrere Spalten angeben.
    • Wenn Sie nur eine Spalte für die Entitäts-ID angeben möchten, geben Sie den Spaltennamen im folgenden Format an:
      "entity_id_column_name".
    • Wenn Sie mehrere Spalten für die Entitäts-ID angeben möchten, geben Sie die Spaltennamen im folgenden Format an:
      ["entity_id_column_1_name", "entity_id_column_2_name", ...].

REST

So erstellen Sie eine FeatureGroup-Ressource: Senden Sie eine POST-Anfrage mithilfe der Methode featureGroups.create .

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • LOCATION_ID: die Region, in der Sie die Featuregruppe erstellen möchten, z. B. us-central1.
  • ENTITY_ID_COLUMNS: Die Namen der Spalten mit den Entitäts-IDs. Sie können entweder eine oder mehrere Spalten angeben.
    • Wenn Sie nur eine Spalte für die Entitäts-ID angeben möchten, geben Sie den Spaltennamen im folgenden Format an:
      "entity_id_column_name".
    • Wenn Sie mehrere Spalten für die Entitäts-ID angeben möchten, geben Sie die Spaltennamen im folgenden Format an:
      ["entity_id_column_1_name", "entity_id_column_2_name", ...].
  • PROJECT_ID: Ihre Projekt-ID.
  • FEATUREGROUP_NAME: der Name der neuen Featuregruppe, die Sie erstellen möchten.
  • BIGQUERY_SOURCE_URI: URI der BigQuery-Quelltabelle oder -Ansicht, die Sie für die Featuregruppe registrieren möchten.
  • TIMESTAMP_COLUMN: Optional. Geben Sie den Namen der Spalte mit den Zeitstempeln der Features in der BigQuery-Quelltabelle oder -Ansicht an.
    Sie müssen den Namen der Zeitstempelspalte nur angeben, wenn die Daten als Zeitreihe formatiert sind und die Spalte mit den Zeitstempeln der Features nicht den Namen feature_timestamp hat.
  • STATIC_DATA_SOURCE: Optional. Geben Sie true ein, wenn die Daten nicht als Zeitreihe formatiert sind. Die Standardeinstellung ist false.
  • DENSE: Optional. Geben Sie an, wie Vertex AI Feature Store Nullwerte beim Bereitstellen von Daten aus Featureansichten verarbeitet, die mit der Featuregruppe verknüpft sind:
    • false – Das ist die Standardeinstellung. Vertex AI Feature Store stellt nur die neuesten Nicht-Null-Werte bereit. Wenn der neueste Wert für ein Feature null ist, stellt Vertex AI Feature Store den neuesten Nicht-Null-Wert aus den bisherigen Werten bereit. Wenn jedoch sowohl der aktuelle als auch der bisherige Wert für dieses Feature null ist, gibt Vertex AI Feature Store „null“ als Featurewert zurück.
    • true: Bei Featureansichten mit geplanter Datensynchronisierung stellt Vertex AI Feature Store nur die neuesten Featurewerte bereit, einschließlich Nullwerte. Bei Feature-Ansichten mit kontinuierlicher Datensynchronisierung stellt Vertex AI Feature Store nur die neuesten Nicht-Null-Werte bereit. Wenn jedoch sowohl der aktuelle als auch der bisherige Wert für das Feature null ist, gibt Vertex AI Feature Store „null“ als Featurewert zurück. Weitere Informationen zu den Arten der Datensynchronisierung und zum Konfigurieren der Datensynchronisierung in einer Featureansicht finden Sie unter Daten in einer Featureansicht synchronisieren.

HTTP-Methode und URL:

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

JSON-Text der Anfrage:

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

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

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

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$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

Sie sollten in etwa folgende JSON-Antwort erhalten:

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

Nächste Schritte