Vous pouvez créer une vue de caractéristiques dans une instance de boutique 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 de 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 de 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 de 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 gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- 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.
Pour en savoir plus, consultez Set up authentication for a local development environment.
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
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 actualise ou synchronise régulièrement les valeurs des caractéristiques stockées dans le magasin en ligne à partir de BigQuery. Lorsque vous créez une vue de caractéristiques, vous pouvez spécifier la programmation ou la fréquence de synchronisation des données à l'aide du paramètre FeatureView.sync_config
.
Vous avez également la possibilité de déclencher manuellement la synchronisation des données pour une vue de caractéristiques. Pour en savoir plus sur la synchronisation manuelle des données pour une vue de caractéristiques, consultez la page Synchroniser les données de caractéristiques avec le magasin en ligne.
Notez qu'une seule opération de synchronisation des données peut être active à la fois pour une vue de caractéristiques. Si une synchronisation de données est en cours pour une vue de caractéristiques, toutes les synchronisations de données planifiées pour cette vue de caractéristiques sont ignorées jusqu'à ce que la synchronisation soit terminée.
Optimiser les coûts lors de la synchronisation
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 Cloud Bigtable augmente lors des synchronisations de données. Pour les vues de caractéristiques créées dans les magasins en ligne pour la diffusion 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
.
Configurer la récupération vectorielle pour une vue de caractéristiques
Vous pouvez configurer la récupération vectorielle pour une vue de caractéristiques dans un magasin en ligne créé pour la diffusion en ligne optimisée à l'aide du paramètre FeatureView.index_config
.
Pour savoir comment préparer ou mettre à jour 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 de 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 de voisins approximatifs les plus proches à l'aide d'embeddings dans Vertex AI Feature Store, consultez la page Rechercher à l'aide d'embeddings.
Créer une vue de 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 représentations vectorielles continues pour la vue de 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 de caractéristiques.
- CRON : expression de programmation Cron représentant la fréquence de synchronisation des données dans la vue de 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 :
{ "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": { "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 en spécifiant une configuration de compte de service
Utilisez l'exemple suivant pour créer une vue des caractéristiques à partir de groupes de caractéristiques en spécifiant une 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 de caractéristiques.
- CRON : expression de programmation Cron représentant la fréquence de synchronisation des données dans la vue de caractéristiques. Pour en savoir plus, consultez la section cron.
- SERVICE_AGENT_TYPE : (Facultatif) Configuration du compte de service pour la vue des caractéristiques. Les types d'agents de service compatibles sont les suivants :
SERVICE_AGENT_TYPE_PROJECT
: utilisez le compte de service au niveau du projet pour la vue des caractéristiques. Il s'agit de la configuration par défaut.SERVICE_AGENT_TYPE_FEATURE_VIEW
: configurez et utilisez un compte de service dédié pour la vue des caractéristiques.
Méthode HTTP et URL :
POST https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/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": { "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/v1beta1/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/v1beta1/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.v1beta1.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 projetlocation
: région dans laquelle vous souhaitez créer la vue de 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 de caractéristiques.feature_view_id
: nom de la nouvelle instance de vue de 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 de 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 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 :
- CRON : expression de programmation Cron représentant la fréquence de synchronisation des données dans la vue de 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 prend en charge les embeddings
Utilisez l'exemple suivant pour créer une vue de caractéristiques 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 projetlocation
: région dans laquelle vous souhaitez créer la vue de 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 de caractéristiques.feature_view_id
: nom de la nouvelle instance de vue de 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 de 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 de 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 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 :
- CRON : expression de programmation Cron représentant la fréquence de synchronisation des données dans la vue de 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 de 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 intégrant la gestion des représentations vectorielles continues en spécifiant une configuration de compte de service
Utilisez l'exemple suivant 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 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 diffusion en ligne optimisée.
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 de 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 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 :
- CRON : expression de programmation Cron représentant la fréquence de synchronisation des données dans la vue de caractéristiques. Pour en savoir plus, consultez la section cron.
- SERVICE_AGENT_TYPE : configuration du compte de service pour la vue des caractéristiques. Les types d'agents de service compatibles sont les suivants :
SERVICE_AGENT_TYPE_PROJECT
: utilisez le compte de service au niveau du projet pour la vue des caractéristiques. Il s'agit de la configuration par défaut.SERVICE_AGENT_TYPE_FEATURE_VIEW
: configurez et utilisez un compte de service dédié pour la vue des caractéristiques.
- 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 de 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/v1beta1/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/v1beta1/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/v1beta1/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.v1beta1.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 2024/11/26 (UTC).