Pour créer un data store et ingérer des données pour des recommandations personnalisées, accédez à la section correspondant à la source que vous prévoyez d'utiliser :
BigQuery
Vous pouvez créer des datastores à partir de tables BigQuery de deux manières :
Ingestion unique : vous importez des données depuis une table BigQuery dans un data store. Les données du data store ne changent pas, sauf si vous les actualisez manuellement.
Ingestion périodique : vous importez des données à partir d'une ou de plusieurs tables BigQuery, et vous définissez une fréquence de synchronisation qui détermine la fréquence à laquelle les magasins de données sont mis à jour avec les données les plus récentes de l'ensemble de données BigQuery.
Le tableau suivant compare les deux méthodes d'importation de données BigQuery dans les datastores Vertex AI Search.
Ingestion unique | Ingestion périodique |
---|---|
Disponibilité générale | Version Preview publique |
Les données doivent être actualisées manuellement. | Les données sont automatiquement mises à jour tous les jours, tous les trois jours ou tous les cinq jours. Les données ne peuvent pas être actualisées manuellement. |
Vertex AI Search crée un seul data store à partir d'une table dans BigQuery. | Vertex AI Search crée un connecteur de données pour un ensemble de données BigQuery et un data store (appelé datastore data store;entités) pour chaque table spécifiée. Pour chaque connecteur de données, les tables doivent avoir le même type de données (structurées, par exemple) et se trouver dans le même ensemble de données BigQuery. |
Vous pouvez combiner les données de plusieurs tables dans un seul data store en ingérant d'abord les données d'une table, puis d'autres données provenant d'une autre source ou table BigQuery. | Étant donné que l'importation manuelle de données n'est pas prise en charge, les données d'un data store d'entités ne peuvent provenir que d'une seule table BigQuery. |
Le contrôle des accès aux sources de données est disponible. | Le contrôle des accès aux sources de données n'est pas disponible. Les données importées peuvent contenir des contrôles d'accès, mais ceux-ci ne seront pas respectés. |
Vous pouvez créer un data store à l'aide de la consoleGoogle Cloud ou de l'API. | Vous devez utiliser la console pour créer des connecteurs de données et leurs magasins de données d'entités. |
Compatible avec les CMEK. | Compatible avec les CMEK. |
Importer des données depuis BigQuery une seule fois
Pour ingérer des données à partir d'une table BigQuery, suivez les étapes ci-dessous pour créer un data store et ingérer des données à l'aide de la console Google Cloud ou de l'API.
Avant d'importer vos données, consultez Préparer les données pour l'ingestion.
Console
Pour ingérer des données depuis BigQuery à l'aide de la console Google Cloud , procédez comme suit :
Dans la console Google Cloud , accédez à la page Applications d'IA.
Accédez à la page Datastores.
Cliquez sur
Créer un datastore.Sur la page Source, sélectionnez BigQuery.
Sélectionnez le type de données que vous allez importer dans la section Quel type de données importez-vous ?.
Sélectionnez Une seule fois dans la section Fréquence de synchronisation.
Dans le champ Chemin d'accès dans BigQuery, cliquez sur Parcourir, sélectionnez une table que vous avez préparée pour l'ingestion, puis cliquez sur Sélectionner. Vous pouvez également saisir l'emplacement de la table directement dans le champ Chemin d'accès BigQuery.
Cliquez sur Continuer.
Si vous effectuez une importation ponctuelle de données structurées :
Mappez les champs sur les propriétés clés.
Si des champs importants manquent dans le schéma, utilisez Ajouter un champ pour les ajouter.
Pour en savoir plus, consultez À propos de la détection et de la modification automatiques.
Cliquez sur Continuer.
Choisissez une région pour votre datastore.
Attribuez un nom à votre datastore
Cliquez sur Créer.
Pour vérifier l'état de l'ingestion, accédez à la page Datastores, puis cliquez sur le nom de votre datastore pour afficher des informations détaillées sur la page Données. Lorsque la colonne "État" de l'onglet Activité passe de En cours à Importation terminée, l'ingestion est terminée.
Selon la taille de vos données, l'ingestion peut prendre de quelques minutes à plusieurs heures.
REST
Pour créer un data store et importer des données depuis BigQuery à l'aide de la ligne de commande, procédez comme suit.
Créer un datastore
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_RECOMMENDATION"] }'
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet Google Cloud .DATA_STORE_ID
: ID du data store Vertex AI Search que vous souhaitez créer. Cet ID ne peut contenir que des lettres minuscules, des chiffres, des traits de soulignement et des traits d'union.DATA_STORE_DISPLAY_NAME
: nom à afficher du data store Vertex AI Search que vous souhaitez créer.
Importez des données depuis BigQuery.
Si vous avez défini un schéma, assurez-vous que les données le respectent.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \ -d '{ "bigquerySource": { "projectId": "PROJECT_ID", "datasetId":"DATASET_ID", "tableId": "TABLE_ID", "dataSchema": "DATA_SCHEMA", "aclEnabled": "BOOLEAN" }, "reconciliationMode": "RECONCILIATION_MODE", "autoGenerateIds": "AUTO_GENERATE_IDS", "idField": "ID_FIELD", "errorConfig": { "gcsPrefix": "ERROR_DIRECTORY" } }'
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet Google Cloud .DATA_STORE_ID
: ID du data store Vertex AI Search.DATASET_ID
: ID de l'ensemble de données BigQuery.TABLE_ID
: ID de la table BigQuery.- Si la table BigQuery ne se trouve pas sous PROJECT_ID, vous devez accorder au compte de service
service-<project number>@gcp-sa-discoveryengine.iam.gserviceaccount.com
l'autorisation "Lecteur de données BigQuery" pour la table BigQuery. Par exemple, si vous importez une table BigQuery du projet source "123" vers le projet de destination "456", accordez les autorisationsservice-456@gcp-sa-discoveryengine.iam.gserviceaccount.com
pour la table BigQuery sous le projet "123".
- Si la table BigQuery ne se trouve pas sous PROJECT_ID, vous devez accorder au compte de service
DATA_SCHEMA
(facultatif) : Les valeurs sontdocument
etcustom
. La valeur par défaut estdocument
.document
: la table BigQuery que vous utilisez doit être conforme au schéma BigQuery par défaut fourni dans Préparer les données à ingérer. Vous pouvez définir l'ID de chaque document vous-même, tout en encapsulant toutes les données dans la chaîne jsonData.custom
: tout schéma de table BigQuery est accepté, et Vertex AI Search génère automatiquement les ID pour chaque document importé.
ERROR_DIRECTORY
(facultatif) : Un répertoire Cloud Storage contenant des informations sur les erreurs d'importation (par exemple,gs://<your-gcs-bucket>/directory/import_errors
). Google recommande de laisser ce champ vide pour permettre à Vertex AI Search de créer automatiquement un répertoire temporaire.RECONCILIATION_MODE
(facultatif) : Les valeurs sontFULL
etINCREMENTAL
. La valeur par défaut estINCREMENTAL
. Si vous spécifiezINCREMENTAL
, les données de BigQuery sont actualisées de manière incrémentielle dans votre data store. Cette opération d'upsert ajoute de nouveaux documents et remplace les documents existants par des documents mis à jour portant le même ID. Si vous spécifiezFULL
, tous les documents de votre data store seront rebasés. En d'autres termes, les documents nouveaux et modifiés sont ajoutés à votre data store, et les documents qui ne se trouvent pas dans BigQuery en sont supprimés. Le modeFULL
est utile si vous souhaitez supprimer automatiquement les documents dont vous n'avez plus besoin.AUTO_GENERATE_IDS
(facultatif) : Spécifie si les ID de document doivent être générés automatiquement. Si la valeur est définie surtrue
, les ID de document sont générés en fonction d'un hachage de la charge utile. Notez que les ID de document générés peuvent ne pas rester cohérents lors de plusieurs importations. Si vous générez automatiquement des ID lors de plusieurs importations, Google vous recommande vivement de définirreconciliationMode
surFULL
pour conserver des ID de document cohérents.Spécifiez
autoGenerateIds
uniquement lorsquebigquerySource.dataSchema
est défini surcustom
. Dans le cas contraire, une erreurINVALID_ARGUMENT
est renvoyée. Si vous ne spécifiez pasautoGenerateIds
ou si vous le définissez surfalse
, vous devez spécifieridField
. Sinon, l'importation des documents échouera.ID_FIELD
(facultatif) : Spécifie les champs qui sont les ID de document. Pour les fichiers sources BigQuery,idField
indique le nom de la colonne de la table BigQuery qui contient les ID de document.Spécifiez
idField
uniquement lorsque (1)bigquerySource.dataSchema
est défini surcustom
et (2)auto_generate_ids
est défini surfalse
ou n'est pas spécifié. Dans le cas contraire, une erreurINVALID_ARGUMENT
est renvoyée.La valeur du nom de colonne BigQuery doit être de type chaîne, comporter entre 1 et 63 caractères, et être conforme à la norme RFC-1034. Sinon, l'importation des documents échouera.
C#
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications C#.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Go
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Go.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Java
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Java.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Node.js
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Node.js.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Python
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Python.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Ruby
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Ruby.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Se connecter à BigQuery avec une synchronisation périodique
Avant d'importer vos données, consultez Préparer les données pour l'ingestion.
La procédure suivante décrit comment créer un connecteur de données qui associe un ensemble de données BigQuery à un connecteur de données Vertex AI Search, et comment spécifier une table dans l'ensemble de données pour chaque data store que vous souhaitez créer. Les data stores enfants des connecteurs de données sont appelés data stores d'entités.
Les données de l'ensemble de données sont synchronisées périodiquement avec les data stores des entités. Vous pouvez spécifier une synchronisation quotidienne, tous les trois jours ou tous les cinq jours.
Console
Pour utiliser la console Google Cloud afin de créer un connecteur qui synchronise régulièrement les données d'un ensemble de données BigQuery avec Vertex AI Search, procédez comme suit :
Dans la console Google Cloud , accédez à la page Applications d'IA.
Dans le menu de navigation, cliquez sur Datastores.
Cliquez sur Créer un datastore.
Sur la page Source, sélectionnez BigQuery.
Sélectionnez le type de données que vous importez.
Cliquez sur Périodique.
Sélectionnez la fréquence de synchronisation, c'est-à-dire la fréquence à laquelle vous souhaitez que le connecteur Vertex AI Search se synchronise avec l'ensemble de données BigQuery. Vous pourrez modifier la fréquence ultérieurement.
Dans le champ Chemin d'accès à l'ensemble de données BigQuery, cliquez sur Parcourir, puis sélectionnez l'ensemble de données contenant les tables que vous avez préparées pour l'ingestion. Vous pouvez également saisir directement l'emplacement de la table dans le champ Chemin d'accès BigQuery. Le format du chemin d'accès est
projectname.datasetname
.Dans le champ Tables à synchroniser, cliquez sur Parcourir, puis sélectionnez une table contenant les données que vous souhaitez utiliser pour votre data store.
Si l'ensemble de données contient d'autres tables que vous souhaitez utiliser pour les magasins de données, cliquez sur Ajouter une table et spécifiez également ces tables.
Cliquez sur Continuer.
Choisissez une région pour votre data store, saisissez un nom pour votre connecteur de données, puis cliquez sur Créer.
Vous avez créé un connecteur de données qui synchronisera régulièrement les données avec l'ensemble de données BigQuery. Vous avez créé un ou plusieurs datastores d'entités. Les magasins de données portent le même nom que les tables BigQuery.
Pour vérifier l'état de l'ingestion, accédez à la page Datastores, puis cliquez sur le nom de votre connecteur de données pour afficher des informations détaillées sur la page Données > onglet Activité d'ingestion de données. Lorsque la colonne "État" de l'onglet Activité passe de En cours à Réussie, la première ingestion est terminée.
Selon la taille de vos données, l'ingestion peut prendre de quelques minutes à plusieurs heures.
Une fois que vous avez configuré votre source de données et importé des données pour la première fois, le datastore synchronise les données de cette source à la fréquence que vous avez sélectionnée lors de la configuration. La première synchronisation a lieu environ une heure après la création du connecteur de données. La prochaine synchronisation a lieu environ 24, 72 ou 120 heures plus tard.
Étapes suivantes
Pour associer votre data store à une application, créez une application et sélectionnez votre data store en suivant les étapes décrites dans Créer une application de recommandations personnalisée.
Pour prévisualiser ou obtenir des recommandations une fois votre application et votre data store configurés, consultez Obtenir des recommandations.
Cloud Storage
Vous pouvez créer des data stores à partir de tables Cloud Storage de deux manières :
Ingestion ponctuelle : vous importez des données depuis un dossier ou un fichier Cloud Storage dans un data store. Les données du data store ne changent pas, sauf si vous les actualisez manuellement.
Ingestion périodique : vous importez des données à partir d'un dossier ou d'un fichier Cloud Storage, et vous définissez une fréquence de synchronisation qui détermine la fréquence à laquelle le data store est mis à jour avec les données les plus récentes de cet emplacement Cloud Storage.
Le tableau suivant compare les deux méthodes d'importation de données Cloud Storage dans les data stores Vertex AI Search.
Ingestion unique | Ingestion périodique |
---|---|
Disponibilité générale | Version Preview publique |
Les données doivent être actualisées manuellement. | Les données sont automatiquement mises à jour tous les jours, tous les trois jours ou tous les cinq jours. Les données ne peuvent pas être actualisées manuellement. |
Vertex AI Search crée un seul data store à partir d'un dossier ou d'un fichier dans Cloud Storage. | Vertex AI Search crée un connecteur de données et lui associe un data store (appelé data store d'entités) pour le fichier ou le dossier spécifié. Chaque connecteur de données Cloud Storage ne peut comporter qu'un seul data store'entités. |
Vous pouvez combiner les données de plusieurs fichiers, dossiers et buckets dans un seul data store en ingérant d'abord les données d'un emplacement Cloud Storage, puis d'un autre. | Étant donné que l'importation manuelle de données n'est pas prise en charge, les données d'un data store d'entités ne peuvent provenir que d'un seul fichier ou dossier Cloud Storage. |
Le contrôle des accès aux sources de données est disponible. Pour en savoir plus, consultez Contrôle des accès aux sources de données. | Le contrôle des accès aux sources de données n'est pas disponible. Les données importées peuvent contenir des contrôles d'accès, mais ceux-ci ne seront pas respectés. |
Vous pouvez créer un data store à l'aide de la consoleGoogle Cloud ou de l'API. | Vous devez utiliser la console pour créer des connecteurs de données et leurs magasins de données d'entités. |
Compatible avec les CMEK. | Compatible avec les CMEK. |
Importer une seule fois depuis Cloud Storage
Pour ingérer des données depuis Cloud Storage, suivez la procédure ci-dessous pour créer un data store et ingérer des données à l'aide de la console Google Cloud ou de l'API.
Avant d'importer vos données, consultez Préparer les données pour l'ingestion.
Console
Pour ingérer des données à partir d'un bucket Cloud Storage à l'aide de la console, procédez comme suit :
Dans la console Google Cloud , accédez à la page Applications d'IA.
Accédez à la page Datastores.
Cliquez sur
Créer un datastore.Sur la page Source, sélectionnez Cloud Storage.
Dans la section Sélectionnez un dossier ou un fichier à importer, sélectionnez Dossier ou Fichier.
Cliquez sur Parcourir, sélectionnez les données que vous avez préparées pour l'ingestion, puis cliquez sur Sélectionner. Vous pouvez également saisir l'emplacement directement dans le champ
gs://
.Sélectionnez le type de données que vous importez.
Cliquez sur Continuer.
Si vous effectuez une importation ponctuelle de données structurées :
Mappez les champs sur les propriétés clés.
Si des champs importants manquent dans le schéma, utilisez Ajouter un champ pour les ajouter.
Pour en savoir plus, consultez À propos de la détection et de la modification automatiques.
Cliquez sur Continuer.
Choisissez une région pour votre datastore.
Attribuez un nom à votre datastore
Facultatif : Si vous avez sélectionné des documents non structurés, vous pouvez choisir des options d'analyse et de segmentation pour vos documents. Pour comparer les analyseurs, consultez Analyser des documents. Pour en savoir plus sur le découpage, consultez Découper les documents pour la RAG.
L'analyseur OCR et l'analyseur de mise en page peuvent entraîner des coûts supplémentaires. Consultez les tarifs des fonctionnalités Document AI.
Pour sélectionner un analyseur, développez Options de traitement des documents et spécifiez les options d'analyseur que vous souhaitez utiliser.
Cliquez sur Créer.
Pour vérifier l'état de l'ingestion, accédez à la page Datastores, puis cliquez sur le nom de votre datastore pour afficher des informations détaillées sur la page Données. Lorsque la colonne "État" de l'onglet Activité passe de En cours à Importation terminée, l'ingestion est terminée.
Selon la taille de vos données, l'ingestion peut prendre de quelques minutes ou plusieurs heures.
REST
Pour créer un data store et ingérer des données depuis Cloud Storage à l'aide de la ligne de commande, procédez comme suit.
Créer un datastore
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_RECOMMENDATION"] }'
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet Google Cloud .DATA_STORE_ID
: ID du data store Vertex AI Search que vous souhaitez créer. Cet ID ne peut contenir que des lettres minuscules, des chiffres, des traits de soulignement et des traits d'union.DATA_STORE_DISPLAY_NAME
: nom à afficher du data store Vertex AI Search que vous souhaitez créer.
Importez des données depuis Cloud Storage.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \ -d '{ "gcsSource": { "inputUris": ["INPUT_FILE_PATTERN_1", "INPUT_FILE_PATTERN_2"], "dataSchema": "DATA_SCHEMA", }, "reconciliationMode": "RECONCILIATION_MODE", "autoGenerateIds": "AUTO_GENERATE_IDS", "idField": "ID_FIELD", "errorConfig": { "gcsPrefix": "ERROR_DIRECTORY" } }'
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet Google Cloud .DATA_STORE_ID
: ID du data store Vertex AI Search.INPUT_FILE_PATTERN
: modèle de fichier dans Cloud Storage contenant vos documents.Pour les données structurées ou les données non structurées avec des métadonnées, un exemple de modèle de fichier d'entrée est
gs://<your-gcs-bucket>/directory/object.json
, et un exemple de modèle correspondant à un ou plusieurs fichiers estgs://<your-gcs-bucket>/directory/*.json
.Pour les documents non structurés, un exemple est
gs://<your-gcs-bucket>/directory/*.pdf
. Chaque fichier correspondant au modèle devient un document.Si
<your-gcs-bucket>
ne se trouve pas sous PROJECT_ID, vous devez accorder au compte de serviceservice-<project number>@gcp-sa-discoveryengine.iam.gserviceaccount.com
les autorisations "Lecteur des objets Storage" pour le bucket Cloud Storage. Par exemple, si vous importez un bucket Cloud Storage du projet source "123" vers le projet de destination "456", accordez les autorisationsservice-456@gcp-sa-discoveryengine.iam.gserviceaccount.com
sur le bucket Cloud Storage du projet "123".DATA_SCHEMA
(facultatif) : Les valeurs sontdocument
,custom
,csv
etcontent
. La valeur par défaut estdocument
.document
: importez des données non structurées avec des métadonnées pour les documents non structurés. Chaque ligne du fichier doit respecter l'un des formats suivants. Vous pouvez définir l'ID de chaque document :{ "id": "<your-id>", "jsonData": "<JSON string>", "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }
{ "id": "<your-id>", "structData": <JSON object>, "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }
custom
: importez le fichier JSON pour les documents structurés. Les données sont organisées selon un schéma. Vous pouvez spécifier le schéma. Sinon, il est détecté automatiquement. Vous pouvez placer la chaîne JSON du document dans un format cohérent directement sur chaque ligne. Vertex AI Search génère automatiquement les ID pour chaque document importé.content
: importez des documents non structurés (PDF, HTML, DOC, TXT, PPTX). L'ID de chaque document est généré automatiquement. Il correspond aux 128 premiers bits de SHA256(GCS_URI) encodés sous forme de chaîne hexadécimale. Vous pouvez spécifier plusieurs modèles de fichiers d'entrée, à condition que les fichiers correspondants ne dépassent pas la limite de 100 000 fichiers.csv
: incluez une ligne d'en-tête dans votre fichier CSV, chaque en-tête étant associé à un champ de document. Spécifiez le chemin d'accès au fichier CSV à l'aide du champinputUris
.
ERROR_DIRECTORY
(facultatif) : Un répertoire Cloud Storage contenant des informations sur les erreurs d'importation (par exemple,gs://<your-gcs-bucket>/directory/import_errors
). Google recommande de laisser ce champ vide pour permettre à Vertex AI Search de créer automatiquement un répertoire temporaire.RECONCILIATION_MODE
(facultatif) : Les valeurs sontFULL
etINCREMENTAL
. La valeur par défaut estINCREMENTAL
. Si vous spécifiezINCREMENTAL
, les données seront actualisées de manière incrémentielle depuis Cloud Storage vers votre data store. Cette opération d'upsert ajoute de nouveaux documents et remplace les documents existants par des documents mis à jour portant le même ID. Si vous spécifiezFULL
, les documents de votre data store seront entièrement rebasés. En d'autres termes, les documents nouveaux et modifiés sont ajoutés à votre data store, et les documents qui ne se trouvent pas dans Cloud Storage en sont supprimés. Le modeFULL
est utile si vous souhaitez supprimer automatiquement les documents dont vous n'avez plus besoin.AUTO_GENERATE_IDS
(facultatif) : Indique si les ID de document doivent être générés automatiquement. Si la valeur est définie surtrue
, les ID de document sont générés en fonction d'un hachage de la charge utile. Notez que les ID de document générés peuvent ne pas rester cohérents lors de plusieurs importations. Si vous générez automatiquement des ID lors de plusieurs importations, Google vous recommande vivement de définirreconciliationMode
surFULL
pour conserver des ID de document cohérents.Spécifiez
autoGenerateIds
uniquement lorsquegcsSource.dataSchema
est défini surcustom
oucsv
. Dans le cas contraire, une erreurINVALID_ARGUMENT
est renvoyée. Si vous ne spécifiez pasautoGenerateIds
ou si vous le définissez surfalse
, vous devez spécifieridField
. Sinon, l'importation des documents échouera.ID_FIELD
(facultatif) : Spécifie les champs qui correspondent aux ID de document. Pour les documents sources Cloud Storage,idField
spécifie le nom dans les champs JSON qui sont des ID de document. Par exemple, si{"my_id":"some_uuid"}
est le champ d'ID de document dans l'un de vos documents, spécifiez"idField":"my_id"
. Cela identifie tous les champs JSON portant le nom"my_id"
comme ID de document.Spécifiez ce champ uniquement lorsque (1)
gcsSource.dataSchema
est défini surcustom
oucsv
, et (2)auto_generate_ids
est défini surfalse
ou n'est pas spécifié. Dans le cas contraire, une erreurINVALID_ARGUMENT
est renvoyée.Notez que la valeur du champ JSON Cloud Storage doit être de type chaîne, comporter entre 1 et 63 caractères, et être conforme à la norme RFC-1034. Sinon, l'importation des documents échouera.
Notez que le nom de champ JSON spécifié par
id_field
doit être de type chaîne, doit comporter entre 1 et 63 caractères, et doit être conforme à la norme RFC-1034. Sinon, l'importation des documents échouera.
C#
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications C#.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Go
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Go.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Java
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Java.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Node.js
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Node.js.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Python
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Python.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Ruby
Pour en savoir plus, consultez la documentation de référence de l'API AI Applications Ruby.
Pour vous authentifier auprès des applications d'IA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Créer un datastore
Importer des documents
Se connecter à Cloud Storage avec une synchronisation périodique
Avant d'importer vos données, consultez Préparer les données pour l'ingestion.
La procédure suivante décrit comment créer un connecteur de données qui associe un emplacement Cloud Storage à un connecteur de données Vertex AI Search, et comment spécifier un dossier ou un fichier dans cet emplacement pour le data store que vous souhaitez créer. Les data stores enfants des connecteurs de données sont appelés data stores d'entités.
Les données sont synchronisées périodiquement avec le data store d'entités. Vous pouvez spécifier une synchronisation quotidienne, tous les trois jours ou tous les cinq jours.
Console
Dans la console Google Cloud , accédez à la page Applications d'IA.
Accédez à la page Datastores.
Cliquez sur Créer un datastore.
Sur la page Source, sélectionnez Cloud Storage.
Sélectionnez le type de données que vous importez.
Cliquez sur Périodique.
Sélectionnez la fréquence de synchronisation, c'est-à-dire la fréquence à laquelle vous souhaitez que le connecteur Vertex AI Search se synchronise avec l'emplacement Cloud Storage. Vous pourrez modifier la fréquence ultérieurement.
Dans la section Sélectionnez un dossier ou un fichier à importer, sélectionnez Dossier ou Fichier.
Cliquez sur Parcourir, sélectionnez les données que vous avez préparées pour l'ingestion, puis cliquez sur Sélectionner. Vous pouvez également saisir l'emplacement directement dans le champ
gs://
.Cliquez sur Continuer.
Choisissez une région pour votre connecteur de données.
Attribuez un nom à votre connecteur de données.
Facultatif : Si vous avez sélectionné des documents non structurés, vous pouvez choisir des options d'analyse et de segmentation pour vos documents. Pour comparer les analyseurs, consultez Analyser des documents. Pour en savoir plus sur le découpage, consultez Découper les documents pour la RAG.
L'analyseur OCR et l'analyseur de mise en page peuvent entraîner des coûts supplémentaires. Consultez les tarifs des fonctionnalités Document AI.
Pour sélectionner un analyseur, développez Options de traitement des documents et spécifiez les options d'analyseur que vous souhaitez utiliser.
Cliquez sur Créer.
Vous avez créé un connecteur de données qui synchronisera régulièrement les données avec l'emplacement Cloud Storage. Vous avez également créé un data store d'entités nommé
gcs_store
.Pour vérifier l'état de l'ingestion, accédez à la page Datastores, puis cliquez sur le nom de votre connecteur de données pour afficher des informations détaillées sur la page Données.
Onglet Activité d'ingestion de données Lorsque la colonne "État" de l'onglet Activité d'ingestion de données passe de En cours à Réussie, la première ingestion est terminée.
Selon la taille de vos données, l'ingestion peut prendre de quelques minutes à plusieurs heures.
Une fois que vous avez configuré votre source de données et importé des données pour la première fois, les données de cette source sont synchronisées à la fréquence que vous avez sélectionnée lors de la configuration. La première synchronisation a lieu environ une heure après la création du connecteur de données. La prochaine synchronisation a lieu environ 24, 72 ou 120 heures plus tard.
Étapes suivantes
Pour associer votre data store à une application, créez une application et sélectionnez votre data store en suivant les étapes décrites dans Créer une application de recommandations personnalisée.
Pour prévisualiser ou obtenir des recommandations une fois votre application et votre data store configurés, consultez Obtenir des recommandations.
Importer des données JSON structurées avec l'API
Pour importer directement un document ou un objet JSON à l'aide de l'API, procédez comme suit.
Avant d'importer vos données, préparez-les pour l'ingestion.
REST
Pour créer un data store et importer des données JSON structurées à l'aide de la ligne de commande, procédez comme suit :
Créer un datastore
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_RECOMMENDATION"] }'
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet Google Cloud .DATA_STORE_ID
: ID du data store de recommandations que vous souhaitez créer. Cet ID ne peut contenir que des lettres minuscules, des chiffres, des traits de soulignement et des traits d'union.DATA_STORE_DISPLAY_NAME
: nom à afficher du data store de recommandations que vous souhaitez créer.
Facultatif : Fournissez votre propre schéma. Lorsque vous fournissez un schéma, vous obtenez généralement de meilleurs résultats. Pour en savoir plus, consultez Fournir ou détecter automatiquement un schéma.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/schemas/default_schema" \ -d '{ "structSchema": JSON_SCHEMA_OBJECT }'
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet Google Cloud .DATA_STORE_ID
: ID du data store de recommandations.JSON_SCHEMA_OBJECT
: votre schéma JSON sous forme d'objet JSON (par exemple :{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "title": { "type": "string", "keyPropertyMapping": "title" }, "categories": { "type": "array", "items": { "type": "string", "keyPropertyMapping": "category" } }, "uri": { "type": "string", "keyPropertyMapping": "uri" } } }
Importer des données structurées qui respectent le schéma défini.
Vous pouvez importer des données de plusieurs façons :
Importez un document JSON.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents?documentId=DOCUMENT_ID" \ -d '{ "jsonData": "JSON_DOCUMENT_STRING" }'
Remplacez
JSON_DOCUMENT_STRING
par le document JSON sous forme de chaîne unique. Il doit être conforme au schéma JSON que vous avez fourni à l'étape précédente. Par exemple :```none { \"title\": \"test title\", \"categories\": [\"cat_1\", \"cat_2\"], \"uri\": \"test uri\"} ```
Importez un objet JSON.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents?documentId=DOCUMENT_ID" \ -d '{ "structData": JSON_DOCUMENT_OBJECT }'
Remplacez
JSON_DOCUMENT_OBJECT
par le document JSON sous forme d'objet JSON. Il doit être conforme au schéma JSON que vous avez fourni à l'étape précédente. Par exemple :```json { "title": "test title", "categories": [ "cat_1", "cat_2" ], "uri": "test uri" } ```
Mettez à jour avec un document JSON.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID" \ -d '{ "jsonData": "JSON_DOCUMENT_STRING" }'
Mettez à jour avec un objet JSON.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID" \ -d '{ "structData": JSON_DOCUMENT_OBJECT }'
Étapes suivantes
Pour associer votre data store à une application, créez une application et sélectionnez votre data store en suivant les étapes décrites dans Créer une application de recommandations personnalisée.
Pour prévisualiser l'apparence de vos recommandations une fois votre application et votre data store configurés, consultez Obtenir des recommandations.
Créer un data store à l'aide de Terraform
Vous pouvez utiliser Terraform pour créer un data store vide. Une fois le data store vide créé, vous pouvez y ingérer des données à l'aide des commandes de la console Google Cloud ou de l'API.
Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.
Pour créer un data store vide à l'aide de Terraform, consultez
google_discovery_engine_data_store
.