Vous pouvez créer une vue des caractéristiques dans une instance de magasin en ligne existante. Lorsque vous créez une vue de caractéristiques, vous pouvez lui associer des caractéristiques de différentes manières :
Ajouter des groupes de caractéristiques et des caractéristiques à partir du registre de caractéristiques :Associez des groupes de caractéristiques et des caractéristiques à partir du registre de caractéristiques. Un groupe de caractéristiques spécifie l'emplacement de la source de données BigQuery. Une caractéristique du groupe de caractéristiques pointe vers une colonne de caractéristiques spécifique dans cette source de données. Vous pouvez associer une vue des caractéristiques à plusieurs groupes de caractéristiques.
Ajouter des caractéristiques à partir d'une source BigQuery : associez directement une source de données BigQuery, telle qu'une table ou une vue BigQuery, et spécifiez au moins une colonne d'ID d'entité.
Une fois la vue des caractéristiques créée, Vertex AI Feature Store synchronise les dernières valeurs des caractéristiques à partir de la source de données BigQuery. Si vous définissez le paramètre de requête run_sync_immediately=true
, Vertex AI Feature Store synchronise les valeurs des caractéristiques lors de la création de la vue de caractéristiques. Sinon, Vertex AI Feature Store synchronise les valeurs des caractéristiques en fonction de la planification de synchronisation spécifiée pour la vue des caractéristiques.
Avant de commencer
Authentifiez-vous auprès de Vertex AI, sauf si vous l'avez déjà fait.
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
Pour utiliser les exemples Python de cette page dans un environnement de développement local, installez et initialisez la gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
Installez la Google Cloud CLI.
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Pour en savoir plus, consultez la section Set up authentication for a local development environment.
REST
Pour utiliser les exemples API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à la gcloud CLI.
Installez la Google Cloud CLI.
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud .
Synchroniser les données de caractéristiques dans une vue de caractéristiques
Vertex AI Feature Store peut actualiser ou synchroniser les valeurs des caractéristiques de la source de données BigQuery avec la vue des caractéristiques. Vous pouvez spécifier le type de synchronisation des données pour une vue des caractéristiques à l'aide du paramètre FeatureView.sync_config
.
Vertex AI Feature Store accepte les types de synchronisation de données suivants :
Synchronisation planifiée des données : vous pouvez spécifier la planification ou la fréquence de synchronisation des données. Vous pouvez choisir cette synchronisation planifiée des données pour une vue des caractéristiques, quel que soit le type de livraison en ligne spécifié pour l'instance de magasin en ligne.
Si votre vue des caractéristiques est configurée pour utiliser la synchronisation planifiée des données, vous pouvez éventuellement éviter d'attendre la prochaine opération de synchronisation planifiée en lançant manuellement la synchronisation des données. Pour en savoir plus sur le déclenchement manuel d'une synchronisation des données, consultez Synchroniser les données de caractéristiques avec le magasin en ligne.
Lors de la livraison en ligne, si vous souhaitez livrer uniquement les dernières valeurs de caractéristiques, y compris les valeurs nulles, vous devez utiliser la configuration suivante :
Enregistrez votre source de données de caractéristiques en créant un groupe de caractéristiques avec le paramètre
dense
défini surtrue
.Sélectionnez la livraison en ligne Bigtable lorsque vous créez l'instance de magasin en ligne.
Choisissez la synchronisation planifiée des données lorsque vous créez vos vues des caractéristiques.
Synchronisation continue des données : les données de caractéristiques sont actualisées chaque fois que les données de caractéristiques de la source de données BigQuery sont modifiées. Vous ne pouvez choisir ce type de synchronisation des données pour une vue des caractéristiques que si toutes les conditions suivantes sont remplies :
L'instance de magasin en ligne est configurée pour la livraison en ligne Bigtable.
La vue des caractéristiques est associée à des groupes et des ressources de caractéristiques.
La source de données BigQuery se trouve dans l'une des régions suivantes :
eu
us
us-central1
La synchronisation continue des données présente les limites suivantes :
Vous ne pouvez pas actualiser une vue des caractéristiques si vous sélectionnez la synchronisation continue des données.
Seuls les nouveaux enregistrements de caractéristiques sont synchronisés à partir de la source de données BigQuery. La synchronisation continue des données ne synchronise pas les enregistrements de caractéristiques que vous modifiez ou supprimez dans BigQuery.
Le groupe de caractéristiques de la source du registre de caractéristiques doit avoir une table BigQuery comme source.
Optimiser les coûts lors de la synchronisation planifiée des données
Une opération de synchronisation des données peut entraîner des coûts liés à l'utilisation des ressources BigQuery. Suivez ces consignes pour optimiser ces coûts et améliorer les performances lors de la synchronisation des données :
Ne configurez pas la planification de synchronisation pour qu'elle s'exécute plus souvent que la fréquence à laquelle les données sont censées changer dans la source BigQuery.
Optimisez la taille de la source de données de caractéristiques dans BigQuery. Lors de la création de la vue de caractéristiques, n'incluez que les données dont vous avez besoin pour la diffusion en ligne.
Évitez d'exécuter des agrégations complexes dans BigQuery. Exécutez une requête
SELECT *
sur la table ou la vue pour estimer le volume et la durée du traitement des données.Lorsque vous définissez les options de scaling pour le magasin en ligne, définissez
max_node_count
sur une valeur suffisamment élevée pour couvrir les charges élevées lors d'une synchronisation de données.Planifiez la synchronisation pour différentes vues de caractéristiques à différents moments dans le même magasin en ligne.
Si votre table BigQuery contient de nombreuses données d'historique, envisagez de partitionner la table à l'aide d'horodatages et de spécifier une période pour la récupération des données de caractéristiques. Cela minimise la récupération des données de caractéristiques obsolètes lors de la synchronisation.
L'utilisation de Bigtable augmente lors des synchronisations de données. Pour les vues des caractéristiques créées dans les magasins en ligne pour la livraison en ligne Bigtable, planifiez les jobs de synchronisation pendant les heures creuses afin d'optimiser les performances.
Configurer le compte de service pour une vue des caractéristiques
Chaque vue des caractéristiques utilise un compte de service pour accéder aux données sources dans BigQuery pendant la synchronisation. Vertex AI Feature Store attribue le rôle IAM (Identity and Access Management) Lecteur de données BigQuery à ce compte de service.
Par défaut, une vue des caractéristiques utilise le compte de service configuré pour votre projet. Avec cette configuration, tout utilisateur autorisé à créer une vue des caractéristiques dans votre projet peut accéder aux données de caractéristiques dans BigQuery.
Vous pouvez également configurer la vue des caractéristiques pour qu'elle utilise son propre compte de service. Vertex AI Feature Store configure ensuite un compte de service dédié pour la vue des caractéristiques. Avec cette configuration, vous pouvez limiter l'accès aux données des caractéristiques dans BigQuery ou accorder l'accès à d'autres utilisateurs.
Vous pouvez spécifier la configuration du compte de service à l'aide du paramètre FeatureView.service_agent_type
. Notez que Vertex AI Feature Store génère une adresse e-mail de compte de service unique pour chaque vue de caractéristiques configurée pour disposer d'un compte de service dédié.
Si une vue de caractéristiques est configurée pour disposer d'un compte de service dédié, vous pouvez afficher l'adresse e-mail du compte de service de l'une des manières suivantes :
Récupérez la liste de toutes les vues de caractéristiques dans l'instance de magasin en ligne à l'aide de la méthode featureViews.list.
Récupérez les détails de la vue de caractéristiques à l'aide de la méthode featureViews.get.
Configurer la récupération vectorielle pour une vue de caractéristiques
Vous pouvez configurer la récupération vectorielle pour une vue des caractéristiques dans un magasin en ligne créé pour la livraison en ligne optimisée à l'aide du paramètre FeatureView.index_config
.
Pour savoir comment préparer ou actualiser la source de données BigQuery pour accepter les embeddings en incluant la colonne embedding
, consultez les Consignes de préparation des sources de données.
Notez que vous ne pouvez configurer la récupération vectorielle et gérer les embeddings que si la vue des caractéristiques est créée en spécifiant un URI source BigQuery, et non à partir de groupes de caractéristiques et de caractéristiques issus du registre de caractéristiques.
Pour en savoir plus sur la recherche des plus proches voisins approximatifs à l'aide d'embeddings dans Vertex AI Feature Store, consultez Rechercher à l'aide d'embeddings.
Créer une vue des caractéristiques à partir de groupes de caractéristiques
Vous pouvez créer une vue de caractéristiques en utilisant des données de caractéristiques préalablement enregistrées dans des groupes de caractéristiques ou dans des caractéristiques individuelles. Pour associer plusieurs sources de données BigQuery à la même vue de caractéristiques, vous pouvez spécifier plusieurs groupes de caractéristiques.
Si vous créez une vue de caractéristiques en spécifiant des groupes de caractéristiques et des caractéristiques :
Votre source de données doit comporter une colonne
feature_timestamp
et peut contenir des données d'historique.Vertex AI Feature Store ne diffuse que les dernières valeurs de caractéristiques en se basant sur l'horodatage des caractéristiques.
Vous ne pouvez pas configurer la gestion des embeddings pour la vue des caractéristiques.
Créer une vue des caractéristiques avec la configuration de compte de service par défaut
Utilisez l'exemple suivant pour créer une vue des caractéristiques en associant plusieurs groupes de caractéristiques sans spécifier de configuration de compte de service.
REST
Pour créer une ressource FeatureView
, envoyez une requête POST
en utilisant la méthode featureViews.create.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- LOCATION_ID : région dans laquelle vous souhaitez créer la vue de caractéristiques, par exemple
us-central1
. - PROJECT_ID : ID de votre projet
- FEATUREONLINESTORE_NAME : nom de l'instance de magasin en ligne dans laquelle vous souhaitez créer la vue de caractéristiques.
- FEATUREVIEW_NAME : nom de la nouvelle instance de vue de caractéristiques que vous souhaitez créer.
- FEATUREGROUP_NAME_A et FEATUREGROUP_NAME_B : noms des groupes de caractéristiques à partir desquels vous souhaitez ajouter des caractéristiques à la vue de caractéristiques.
- FEATURE_ID_A1 et FEATURE_ID_A2 : ID de caractéristiques du groupe de caractéristiques FEATUREGROUP_NAME_A que vous souhaitez ajouter à la vue de caractéristiques.
- FEATURE_ID_B1 et FEATURE_ID_B2 : ID de caractéristiques du groupe de caractéristiques FEATUREGROUP_NAME_B que vous souhaitez ajouter à la vue des caractéristiques.
- SYNC_CONFIG : saisissez l'une des configurations de synchronisation suivantes pour la vue des caractéristiques :
- Pour utiliser la synchronisation planifiée des données, indiquez la planification de synchronisation au format suivant :
"cron": "cron_schedule_expression"
Remplacez "cron_schedule_expression" par l'expression de planification Cron représentant la fréquence de synchronisation des données dans la vue des caractéristiques. Pour en savoir plus, consultez Cron. - Pour utiliser la synchronisation continue des données, saisissez les éléments suivants :
"continuous": true
Vous ne pouvez utiliser la synchronisation continue des données que si l'instance de magasin en ligne contenant la vue des caractéristiques est configurée pour la livraison en ligne Bigtable.
- Pour utiliser la synchronisation planifiée des données, indiquez la planification de synchronisation au format suivant :
Méthode HTTP et URL :
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
Corps JSON de la requête :
{ "feature_registry_source": { "feature_groups": [ { "feature_group_id": "FEATUREGROUP_NAME_A", "feature_ids": [ "FEATURE_ID_A1", "FEATURE_ID_A2" ] }, { "feature_group_id": "FEATUREGROUP_NAME_B", "feature_ids": [ "FEATURE_ID_B1", "FEATURE_ID_B2" ] } ] }, "sync_config": { SYNC_CONFIG } }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
Créer une vue des caractéristiques qui utilise un compte de service dédié
Utilisez l'exemple suivant pour créer une vue des caractéristiques à partir de groupes de caractéristiques en configurant un compte de service dédié.
REST
Pour créer une ressource FeatureView
, envoyez une requête POST
en utilisant la méthode featureViews.create.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- LOCATION_ID : région dans laquelle vous souhaitez créer la vue de caractéristiques, par exemple
us-central1
. - PROJECT_ID : ID de votre projet
- FEATUREONLINESTORE_NAME : nom de l'instance de magasin en ligne dans laquelle vous souhaitez créer la vue de caractéristiques.
- FEATUREVIEW_NAME : nom de la nouvelle instance de vue de caractéristiques que vous souhaitez créer.
- FEATUREGROUP_NAME_A et FEATUREGROUP_NAME_B : noms des groupes de caractéristiques à partir desquels vous souhaitez ajouter des caractéristiques à la vue de caractéristiques.
- FEATURE_ID_A1 et FEATURE_ID_A2 : ID de caractéristiques du groupe de caractéristiques FEATUREGROUP_NAME_A que vous souhaitez ajouter à la vue de caractéristiques.
- FEATURE_ID_B1 et FEATURE_ID_B2 : ID de caractéristiques du groupe de caractéristiques FEATUREGROUP_NAME_B que vous souhaitez ajouter à la vue des caractéristiques.
- SYNC_CONFIG : saisissez l'une des configurations de synchronisation suivantes pour la vue des caractéristiques :
- Pour utiliser la synchronisation planifiée des données, indiquez la planification de synchronisation au format suivant :
"cron": "cron_schedule_expression"
Remplacez "cron_schedule_expression" par l'expression de planification Cron représentant la fréquence de synchronisation des données dans la vue des caractéristiques. Pour en savoir plus, consultez Cron. - Pour utiliser la synchronisation continue des données, saisissez les éléments suivants :
"continuous": true
Vous ne pouvez utiliser la synchronisation continue des données que si l'instance de magasin en ligne contenant la vue des caractéristiques est configurée pour la livraison en ligne Bigtable.
- Pour utiliser la synchronisation planifiée des données, indiquez la planification de synchronisation au format suivant :
- SERVICE_AGENT_TYPE : configuration du compte de service pour la vue des caractéristiques. Pour utiliser un compte de service dédié pour la vue des caractéristiques, saisissez
SERVICE_AGENT_TYPE_FEATURE_VIEW
.
Méthode HTTP et URL :
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
Corps JSON de la requête :
{ "feature_registry_source": { "feature_groups": [ { "feature_group_id": "FEATUREGROUP_NAME_A", "feature_ids": [ "FEATURE_ID_A1", "FEATURE_ID_A2" ] }, { "feature_group_id": "FEATUREGROUP_NAME_B", "feature_ids": [ "FEATURE_ID_B1", "FEATURE_ID_B2" ] } ] }, "sync_config": { SYNC_CONFIG }, "service_agent_type": "SERVICE_AGENT_TYPE", }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
Créer une vue de caractéristiques à partir d'une source BigQuery
Si vous souhaitez diffuser des caractéristiques en ligne sans enregistrer votre source de données BigQuery à l'aide de groupes de caractéristiques et de caractéristiques, vous pouvez créer une vue de caractéristiques en spécifiant l'URI de la source de données BigQuery.
Si vous créez une vue de caractéristiques en spécifiant la source de données :
Vous ne pouvez pas inclure de colonne
feature_timestamp
dans la table ou la vue BigQuery.Vous ne pouvez pas inclure de valeurs de caractéristiques historiques dans la source de données. Chaque ligne doit contenir un ID d'entité unique.
Créer une vue des caractéristiques qui utilise le compte de service par défaut et n'est pas compatible avec les embeddings
Utilisez les exemples suivants pour créer une vue des caractéristiques qui n'est pas compatible avec les embeddings en associant directement une source de données BigQuery et sans spécifier de configuration de compte de service.
Python
Pour savoir comment installer ou mettre à jour le SDK Vertex AI pour Python, consultez la section Installer le SDK Vertex AI pour Python. Pour en savoir plus, consultez la documentation de référence de l'API Python.
project
: ID de votre projet.location
: région dans laquelle vous souhaitez créer la vue des caractéristiques, par exempleus-central1
.existing_feature_online_store_id
: nom de l'instance de magasin en ligne dans laquelle vous souhaitez créer la vue des caractéristiques.feature_view_id
: nom de la nouvelle instance de vue des caractéristiques que vous souhaitez créer.bq_table_uri
: URI de la table ou de la vue source BigQuery.entity_id_columns
: noms de la ou des colonnes contenant les ID d'entité. Vous pouvez spécifier une ou plusieurs colonnes.- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
"entity_id_column_name"
. - Pour spécifier plusieurs colonnes d'ID d'entité, spécifiez les noms de colonne au format suivant :
["entity_id_column_1_name", "entity_id_column_2_name", ...]
.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
REST
Pour créer une ressource FeatureView
, envoyez une requête POST
en utilisant la méthode featureViews.create.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- LOCATION_ID : région dans laquelle vous souhaitez créer la vue de caractéristiques, par exemple
us-central1
. - PROJECT_ID : ID de votre projet
- FEATUREONLINESTORE_NAME : nom de l'instance de magasin en ligne dans laquelle vous souhaitez créer la vue de caractéristiques.
- FEATUREVIEW_NAME : nom de la nouvelle vue des caractéristiques que vous souhaitez créer.
- PROJECT_NAME : nom de votre projet.
- DATASET_NAME : nom de votre ensemble de données BigQuery.
- TABLE_NAME : nom de la table de votre ensemble de données BigQuery.
- ENTITY_ID_COLUMNS : noms des colonnes contenant les ID d'entité. Vous pouvez spécifier une ou plusieurs colonnes.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
"entity_id_column_name"
. - Pour spécifier plusieurs colonnes d'ID d'entité, spécifiez les noms de colonne au format suivant :
["entity_id_column_1_name", "entity_id_column_2_name", ...]
.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
- CRON : expression de programmation Cron représentant la fréquence de synchronisation des données dans la vue des caractéristiques. Pour en savoir plus, consultez la section Cron.
Méthode HTTP et URL :
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
Corps JSON de la requête :
{ "big_query_source": { "uri": "bq://PROJECT_NAME.DATASET_NAME.TABLE_NAME", "entity_id_columns": "ENTITY_ID_COLUMNS" }, "sync_config": { "cron": "CRON" } }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
Créer une vue des caractéristiques qui utilise le compte de service par défaut et accepte les embeddings
Utilisez les exemples suivants pour créer une vue de caractéristiques compatible avec les représentations vectorielles continues en associant directement une source de données BigQuery et avec la configuration de compte de service par défaut.
Python
Pour savoir comment installer ou mettre à jour le SDK Vertex AI pour Python, consultez la section Installer le SDK Vertex AI pour Python. Pour en savoir plus, consultez la documentation de référence de l'API Python.
project
: ID de votre projet.location
: région dans laquelle vous souhaitez créer la vue des caractéristiques, par exempleus-central1
.existing_feature_online_store_id
: nom de l'instance de magasin en ligne dans laquelle vous souhaitez créer la vue des caractéristiques.feature_view_id
: nom de la nouvelle instance de vue des caractéristiques que vous souhaitez créer.bq_table_uri
: URI de la table ou de la vue source BigQuery.entity_id_columns
: noms de la ou des colonnes contenant les ID d'entité. Vous pouvez spécifier une ou plusieurs colonnes.- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
"entity_id_column_name"
. - Pour spécifier plusieurs colonnes d'ID d'entité, spécifiez les noms de colonne au format suivant :
["entity_id_column_1_name", "entity_id_column_2_name", ...]
.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
embedding_column
: nom de la colonne contenant les données sources afin de créer l'index pour la recherche vectorielle. Cela n'est requis que si vous souhaitez gérer les embeddings avec la vue des caractéristiques.embedding_dimensions
: facultatif. Taille d'un embedding dans la colonne d'embeddings, exprimée en nombre de dimensions.
REST
Pour créer une ressource FeatureView
, envoyez une requête POST
en utilisant la méthode featureViews.create.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- LOCATION_ID : région dans laquelle vous souhaitez créer la vue de caractéristiques, par exemple
us-central1
. - PROJECT_ID : ID de votre projet
- FEATUREONLINESTORE_NAME : nom de l'instance de magasin en ligne dans laquelle vous souhaitez créer la vue de caractéristiques.
- FEATUREVIEW_NAME : nom de la nouvelle vue des caractéristiques que vous souhaitez créer.
- PROJECT_NAME : nom de votre projet.
- DATASET_NAME : nom de votre ensemble de données BigQuery.
- TABLE_NAME : nom de la table de votre ensemble de données BigQuery.
- ENTITY_ID_COLUMNS : noms des colonnes contenant les ID d'entité. Vous pouvez spécifier une ou plusieurs colonnes.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
"entity_id_column_name"
. - Pour spécifier plusieurs colonnes d'ID d'entité, spécifiez les noms de colonne au format suivant :
["entity_id_column_1_name", "entity_id_column_2_name", ...]
.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
- CRON : expression de programmation Cron représentant la fréquence de synchronisation des données dans la vue des caractéristiques. Pour en savoir plus, consultez la section Cron.
- EMBEDDING_COLUMN : nom de la colonne contenant les données sources afin de créer l'index pour la recherche vectorielle. Cela n'est requis que si vous souhaitez gérer les embeddings avec la vue des caractéristiques.
- FILTER_COLUMN_1 et FILTER_COLUMN_2 (facultatif) : noms des colonnes utilisées pour filtrer les résultats de la recherche vectorielle.
- CROWDING_COLUMN (facultatif) : nom de la colonne contenant les attributs de regroupement.
- EMBEDDING_DIMENSION (facultatif) : taille d'un embedding dans la colonne d'embeddings, exprimée en nombre de dimensions.
Méthode HTTP et URL :
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
Corps JSON de la requête :
{ "big_query_source": { "uri": "bq://PROJECT_NAME.DATASET_NAME.TABLE_NAME", "entity_id_columns": "ENTITY_ID_COLUMNS" }, "sync_config": { "cron": "CRON" }, "index_config": { "embedding_column": "EMBEDDING_COLUMN", "filter_columns": ["FILTER_COLUMN_1", "FILTER_COLUMN_2"], "crowding_column": "CROWDING_COLUMN", "embedding_dimension": EMBEDDING_DIMENSION "tree_ah_config": {} } }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
Créer une vue des caractéristiques avec un compte de service dédié et sans gestion des embeddings
Utilisez l'exemple suivant pour créer une vue des caractéristiques sans prise en charge des embeddings en associant directement une source de données BigQuery et en spécifiant une configuration de compte de service.
REST
Pour créer une ressource FeatureView
compatible avec les embeddings, envoyez une requête POST
à l'aide de la méthode featureViews.create, et spécifiez le paramètre FeatureView.index_config
. Notez que vous ne pouvez utiliser la gestion des embeddings que si le magasin en ligne est configuré pour la livraison en ligne optimisée.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- LOCATION_ID : région dans laquelle vous souhaitez créer la vue de caractéristiques, par exemple
us-central1
. - PROJECT_ID : ID de votre projet
- FEATUREONLINESTORE_NAME : nom de l'instance de magasin en ligne dans laquelle vous souhaitez créer la vue de caractéristiques.
- FEATUREVIEW_NAME : nom de la nouvelle vue des caractéristiques que vous souhaitez créer.
- PROJECT_NAME : nom de votre projet.
- DATASET_NAME : nom de votre ensemble de données BigQuery.
- TABLE_NAME : nom de la table de votre ensemble de données BigQuery.
- ENTITY_ID_COLUMNS : noms des colonnes contenant les ID d'entité. Vous pouvez spécifier une ou plusieurs colonnes.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
"entity_id_column_name"
. - Pour spécifier plusieurs colonnes d'ID d'entité, spécifiez les noms de colonne au format suivant :
["entity_id_column_1_name", "entity_id_column_2_name", ...]
.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
- CRON : expression de programmation Cron représentant la fréquence de synchronisation des données dans la vue des caractéristiques. Pour en savoir plus, consultez Cron.
- SERVICE_AGENT_TYPE : configuration du compte de service pour la vue des caractéristiques. Pour utiliser un compte de service dédié pour la vue des caractéristiques, saisissez
SERVICE_AGENT_TYPE_FEATURE_VIEW
.
Méthode HTTP et URL :
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
Corps JSON de la requête :
{ "big_query_source": { "uri": "bq://PROJECT_NAME.DATASET_NAME.TABLE_NAME", "entity_id_columns": "ENTITY_ID_COLUMNS" }, "sync_config": { "cron": "CRON" }, "service_agent_type": "SERVICE_AGENT_TYPE", }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
Créer une vue des caractéristiques avec gestion des embeddings et un compte de service dédié
Utilisez l'exemple suivant pour créer une vue des caractéristiques acceptant les embeddings en associant directement une source de données BigQuery et en spécifiant une configuration de compte de service.
REST
Pour créer une ressource FeatureView
compatible avec les embeddings, envoyez une requête POST
à l'aide de la méthode featureViews.create, et spécifiez le paramètre FeatureView.index_config
. Notez que vous ne pouvez utiliser la gestion des embeddings que si le magasin en ligne est configuré pour la livraison en ligne optimisée.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- LOCATION_ID : région dans laquelle vous souhaitez créer la vue de caractéristiques, par exemple
us-central1
. - PROJECT_ID : ID de votre projet
- FEATUREONLINESTORE_NAME : nom de l'instance de magasin en ligne dans laquelle vous souhaitez créer la vue de caractéristiques.
- FEATUREVIEW_NAME : nom de la nouvelle vue des caractéristiques que vous souhaitez créer.
- PROJECT_NAME : nom de votre projet.
- DATASET_NAME : nom de votre ensemble de données BigQuery.
- TABLE_NAME : nom de la table de votre ensemble de données BigQuery.
- ENTITY_ID_COLUMNS : noms des colonnes contenant les ID d'entité. Vous pouvez spécifier une ou plusieurs colonnes.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
"entity_id_column_name"
. - Pour spécifier plusieurs colonnes d'ID d'entité, spécifiez les noms de colonne au format suivant :
["entity_id_column_1_name", "entity_id_column_2_name", ...]
.
- Pour ne spécifier qu'une seule colonne d'ID d'entité, spécifiez le nom de la colonne au format suivant :
- CRON : expression de programmation Cron représentant la fréquence de synchronisation des données dans la vue des caractéristiques. Pour en savoir plus, consultez Cron.
- SERVICE_AGENT_TYPE : configuration du compte de service pour la vue des caractéristiques. Pour utiliser un compte de service dédié pour la vue des caractéristiques, saisissez
SERVICE_AGENT_TYPE_FEATURE_VIEW
. - EMBEDDING_COLUMN : nom de la colonne contenant les données sources afin de créer l'index pour la recherche vectorielle. Cela n'est requis que si vous souhaitez gérer les embeddings avec la vue des caractéristiques.
- FILTER_COLUMN_1 et FILTER_COLUMN_2 (facultatif) : noms des colonnes utilisées pour filtrer les résultats de la recherche vectorielle.
- CROWDING_COLUMN (facultatif) : nom de la colonne contenant les attributs de regroupement.
- EMBEDDING_DIMENSION (facultatif) : taille d'un embedding dans la colonne d'embeddings, exprimée en nombre de dimensions.
Méthode HTTP et URL :
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME
Corps JSON de la requête :
{ "big_query_source": { "uri": "bq://PROJECT_NAME.DATASET_NAME.TABLE_NAME", "entity_id_columns": "ENTITY_ID_COLUMNS" }, "sync_config": { "cron": "CRON" }, "service_agent_type": "SERVICE_AGENT_TYPE", "index_config": { "embedding_column": "EMBEDDING_COLUMN", "filter_columns": ["FILTER_COLUMN_1", "FILTER_COLUMN_2"], "crowding_column": "CROWDING_COLUMN", "embedding_dimension": EMBEDDING_DIMENSION "tree_ah_config": {} } }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews?feature_view_id=FEATUREVIEW_NAME" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureViewOperationMetadata", "genericMetadata": { "createTime": "2023-09-15T02:11:29.458820Z", "updateTime": "2023-09-15T02:11:29.458820Z" } } }
Étapes suivantes
Découvrez comment diffuser des caractéristiques en ligne.
Découvrez comment mettre à jour une vue de caractéristiques.
Découvrez comment supprimer une vue de caractéristiques.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/10/19 (UTC).