Aggiornare le funzionalità in una visualizzazione delle caratteristiche

Se il tuo negozio online utilizza l'erogazione online di Bigtable, puoi aggiornare direttamente i valori delle caratteristiche in una vista delle caratteristiche senza aggiornare l'origine dati delle caratteristiche in tempo reale. Puoi aggiornare i valori delle funzionalità per un ID esistente oppure aggiungere un nuovo ID entità insieme ai valori delle funzionalità corrispondenti. Utilizza questa funzionalità nei seguenti scenari:

  • Vuoi scrivere funzionalità in un negozio online più velocemente della sincronizzazione batch, mantenendo l'aggiornamento dei dati a 100 ms o meno.

  • Vuoi recuperare il timestamp in cui la caratteristica viene scritta nel negozio online.

Vertex AI Feature Store non aggiorna l'origine dati delle caratteristiche in BigQuery in base ai dati delle caratteristiche scritti direttamente in un'istanza di visualizzazione delle caratteristiche. Durante la sincronizzazione dei dati, Vertex AI Feature Store aggiorna la visualizzazione delle funzionalità con il valore della funzionalità con il timestamp più recente. Ad esempio, se aggiorni un valore della funzionalità direttamente in una vista delle funzionalità e successivamente aggiorni la stessa funzionalità nell'origine BigQuery, allora Vertex AI Feature Store aggiorna la vista delle funzionalità con il valore della funzionalità aggiornato più di recente da BigQuery durante la successiva sincronizzazione dei dati.

Se vuoi aggiungere o aggiornare i valori delle caratteristiche per una colonna di caratteristiche utilizzata in più visualizzazioni delle caratteristiche, devi apportare gli stessi aggiornamenti a ogni visualizzazione delle caratteristiche separatamente.

Se un'istanza di negozio online è configurata per l'erogazione online ottimizzata (deprecato), non puoi scrivere caratteristiche direttamente in una visualizzazione delle caratteristiche all'interno di quel negozio online.

Tieni presente che questa funzionalità non ti consente di aggiungere o rimuovere colonne di funzionalità in una vista delle funzionalità. Inoltre, non puoi eliminare i valori delle funzionalità o gli ID entità esistenti.

Prima di iniziare

Autenticati in Gemini Enterprise Agent Platform, a meno che tu non l'abbia già fatto.

Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

    Installa Google Cloud CLI.

    Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .

Aggiornare le funzionalità direttamente in una vista delle funzionalità

Utilizza il seguente esempio per scrivere le funzionalità in un'entità all'interno di una vista delle funzionalità.

REST

Per scrivere i valori delle funzionalità direttamente in un'istanza FeatureView, invia una richiesta POST utilizzando il metodo featureViews.directWrite.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • LOCATION_ID: la regione per la visualizzazione delle funzionalità in cui vuoi scrivere le funzionalità, ad esempio us-central1.
  • PROJECT_ID: il tuo ID progetto.
  • FEATUREONLINESTORE_NAME: il nome dell'istanza del negozio online contenente la visualizzazione delle funzionalità.
  • FEATUREVIEW_NAME: Il nome della nuova istanza della visualizzazione delle funzionalità in cui vuoi scrivere le funzionalità.
  • ENTITY_ID: L'ID entità per cui vuoi aggiungere valori delle funzionalità.
  • FEATURE_1 e FEATURE_2: le funzionalità che vuoi aggiungere.
  • FEATURE_1_VALUE e FEATURE_2_VALUE: i valori delle caratteristiche per FEATURE_1 e FEATURE_2, rispettivamente.

Metodo HTTP e URL:

POST https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:directWrite

Corpo JSON della richiesta:

[
  {
      "feature_view": "LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME",
      "data_key_and_feature_values": {
        "data_key": {
          "key": "ENTITY_ID"
        },
        "features": [{
          "name": "FEATURE_1",
          "value_and_timestamp": {
            "value": {
              "string_value": "FEATURE_1_VALUE"
            }
          }
        },
        {
          "name": "FEATURE_2",
          "value_and_timestamp": {
            "value": {
              "string_value": "FEATURE_2_VALUE"
            }
          }
        }
      ]
    }
  }
]

Per inviare la richiesta, scegli una di queste opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

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/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:directWrite"

PowerShell

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

$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/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:directWrite" | Select-Object -Expand Content

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "status": {},
  "writeResponses": [
    {
      "dataKey": {
        "key": "ENTITY_ID"
      },
      "onlineStoreWriteTime": "2025-04-01T01:30:09.525061Z"
    }
  ]
}

Passaggi successivi