Puoi creare datastore dalle tabelle Cloud Storage in due modi:
Importazione una tantum: importi i dati da una cartella o un file Cloud Storage in un datastore. I dati nel datastore non cambiano a meno che tu non aggiorni manualmente i dati.
Importazione periodica: importi i dati da una cartella o un file Cloud Storage e imposti una frequenza di sincronizzazione che determina la frequenza con cui il datastore viene aggiornato con i dati più recenti da quella posizione Cloud Storage.
La seguente tabella confronta i due modi in cui puoi importare i dati di Cloud Storage nei datastore Gemini Enterprise.
Importazione una tantum | Importazione periodica |
---|---|
Disponibilità generale (GA). | Anteprima pubblica. |
I dati devono essere aggiornati manualmente. | I dati vengono aggiornati automaticamente ogni 1, 3 o 5 giorni. I dati non possono essere aggiornati manualmente. |
Gemini Enterprise crea un singolo datastore da una cartella o un file in Cloud Storage. | Gemini Enterprise crea un connettore di dati e associa un datastore (chiamato datastore entità) al file o alla cartella specificati. Ogni connettore dati Cloud Storage può avere un unico datastore di entità. |
I dati di più file, cartelle e bucket possono essere combinati in un unico datastore importando prima i dati da una posizione Cloud Storage e poi altri dati da un'altra posizione. | Poiché l'importazione manuale dei dati non è supportata, i dati in un datastore delle entità possono provenire solo da un file o una cartella Cloud Storage. |
Il controllo dell'accesso all'origine dati è supportato. Per saperne di più, consulta Controllo dell'accesso all'origine dati. | Controllo dell'accesso all'origine dati non è supportato. I dati importati possono contenere controlli dell'accesso, ma questi controlli non verranno rispettati. |
Puoi creare un datastore utilizzando la consoleGoogle Cloud o l'API. | Per creare i connettori di dati e i relativi datastore delle entità, devi utilizzare la console. |
Conforme a CMEK. | Conforme a CMEK. |
Importa una volta da Cloud Storage
Per importare dati da Cloud Storage, segui questi passaggi per creare un datastore e importare i dati utilizzando la console Google Cloud o l'API.
Prima di importare i dati, consulta Preparare i dati per l'importazione.
Console
Per utilizzare la console per importare i dati da un bucket Cloud Storage, segui questi passaggi:
Nella console Google Cloud , vai alla pagina Gemini Enterprise.
Vai alla pagina Datastore.
Fai clic su Crea datastore.
Nella pagina Seleziona un'origine dati, scegli Cloud Storage.
Nella sezione Seleziona una cartella o un file da importare, seleziona Cartella o File.
Fai clic su Sfoglia e scegli i dati che hai preparato per l'importazione, poi fai clic su Seleziona. In alternativa, inserisci la posizione direttamente nel campo
gs://
.Seleziona il tipo di dati che stai importando.
Fai clic su Continua.
Se esegui un'importazione una tantum di dati strutturati:
Mappa i campi alle proprietà chiave.
Se mancano campi importanti nello schema, utilizza Aggiungi nuovo campo per aggiungerli.
Per saperne di più, consulta Informazioni sul rilevamento automatico e sull'editing.
Fai clic su Continua.
Seleziona una regione per il datastore.
Inserisci un nome per il tuo datastore.
(Facoltativo) Se hai selezionato documenti non strutturati, puoi selezionare le opzioni di analisi e chunking per i tuoi documenti. Per confrontare i parser, vedi Analizzare i documenti. Per informazioni sulla suddivisione in blocchi, vedi Suddividere i documenti in blocchi per RAG.
Il parser OCR e il parser di layout possono comportare costi aggiuntivi.
Per selezionare un parser, espandi Opzioni di elaborazione dei documenti e specifica le opzioni del parser che vuoi utilizzare.
Fai clic su Crea.
Per controllare lo stato dell'importazione, vai alla pagina Datastore e fai clic sul nome del datastore per visualizzarne i dettagli nella pagina Data (Dati). Quando la colonna dello stato nella scheda Attività cambia da In corso a Importazione completata, l'importazione è terminata.
A seconda delle dimensioni dei dati, l'importazione può richiedere diversi minuti o diverse ore.
REST
Per utilizzare la riga di comando per creare un datastore e importare dati da Cloud Storage, segui questi passaggi.
Crea 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_SEARCH"], "contentConfig": "CONTENT_REQUIRED", }'
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.DATA_STORE_ID
: l'ID del datastore che vuoi creare. Questo ID può contenere solo lettere minuscole, cifre, trattini bassi e trattini.DATA_STORE_DISPLAY_NAME
: il nome visualizzato del datastore che vuoi creare.
(Facoltativo) Per configurare l'analisi dei documenti o attivare la suddivisione dei documenti per RAG, specifica l'oggetto
documentProcessingConfig
e includilo nella richiesta di creazione del datastore. La configurazione di un analizzatore OCR per i PDF è consigliata se importi PDF scansionati. Per informazioni su come configurare le opzioni di analisi o suddivisione in blocchi, vedi Analizzare e dividere i documenti in blocchi.Importa i dati da 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" } }'
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.DATA_STORE_ID
: l'ID del datastore.INPUT_FILE_PATTERN
: un pattern di file in Cloud Storage contenente i tuoi documenti.Per i dati strutturati o per i dati non strutturati con metadati, un esempio di pattern del file di input è
gs://<your-gcs-bucket>/directory/object.json
e un esempio di pattern che corrisponde a uno o più file ègs://<your-gcs-bucket>/directory/*.json
.Per i documenti non strutturati, un esempio è
gs://<your-gcs-bucket>/directory/*.pdf
. Ogni file corrispondente al pattern diventa un documento.Se
<your-gcs-bucket>
non si trova inPROJECT_ID
, devi concedere al account di servizioservice-<project number>@gcp-sa-discoveryengine.iam.gserviceaccount.com
le autorizzazioni "Visualizzatore oggetti Storage" per il bucket Cloud Storage. Ad esempio, se importi un bucket Cloud Storage dal progetto di origine "123" al progetto di destinazione "456", concedi le autorizzazioniservice-456@gcp-sa-discoveryengine.iam.gserviceaccount.com
sul bucket Cloud Storage nel progetto "123".DATA_SCHEMA
: facoltativo. I valori sonodocument
,custom
,csv
econtent
. Il valore predefinito èdocument
.document
: Carica dati non strutturati con metadati per documenti non strutturati. Ogni riga del file deve seguire uno dei seguenti formati. Puoi definire l'ID di ogni documento:{ "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
: carica il file JSON per i documenti strutturati. I dati sono organizzati in base a uno schema. Puoi specificare lo schema; in caso contrario, viene rilevato automaticamente. Puoi inserire la stringa JSON del documento in un formato coerente direttamente in ogni riga e Gemini Enterprise genera automaticamente gli ID per ogni documento importato.content
: carica documenti non strutturati (PDF, HTML, DOC, TXT, PPTX). L'ID di ogni documento viene generato automaticamente come i primi 128 bit di SHA256(GCS_URI) codificati come stringa esadecimale. Puoi specificare più pattern di file di input, a condizione che i file corrispondenti non superino il limite di 100.000 file.csv
: includi una riga di intestazione nel file CSV, con ogni intestazione mappata a un campo del documento. Specifica il percorso del file CSV utilizzando il campoinputUris
.
ERROR_DIRECTORY
: facoltativo. Una directory Cloud Storage per informazioni sugli errori relativi all'importazione, ad esempiogs://<your-gcs-bucket>/directory/import_errors
. Google consiglia di lasciare vuoto questo campo per consentire a Gemini Enterprise di creare automaticamente una directory temporanea.RECONCILIATION_MODE
: facoltativo. I valori sonoFULL
eINCREMENTAL
. Il valore predefinito èINCREMENTAL
. Se specifichiINCREMENTAL
viene eseguito un aggiornamento incrementale dei dati da Cloud Storage all'datastore. Esegue un'operazione di upsert, che aggiunge nuovi documenti e sostituisce quelli esistenti con documenti aggiornati con lo stesso ID. La specifica diFULL
causa una ribasatura completa dei documenti nel datastore. In altre parole, i documenti nuovi e aggiornati vengono aggiunti al datastore e i documenti che non si trovano in Cloud Storage vengono rimossi dal datastore. La modalitàFULL
è utile se vuoi eliminare automaticamente i documenti che non ti servono più.AUTO_GENERATE_IDS
: facoltativo. Specifica se generare automaticamente gli ID documento. Se impostato sutrue
, gli ID documento vengono generati in base a un hash del payload. Tieni presente che gli ID documento generati potrebbero non rimanere coerenti in più importazioni. Se generi automaticamente ID in più importazioni, Google consiglia vivamente di impostarereconciliationMode
suFULL
per mantenere ID documento coerenti.Specifica
autoGenerateIds
solo quandogcsSource.dataSchema
è impostato sucustom
ocsv
. In caso contrario, viene restituito un erroreINVALID_ARGUMENT
. Se non specifichiautoGenerateIds
o lo imposti sufalse
, devi specificareidField
. In caso contrario, l'importazione dei documenti non andrà a buon fine.ID_FIELD
: facoltativo. Specifica quali campi sono gli ID documento. Per i documenti di origine Cloud Storage,idField
specifica il nome nei campi JSON che sono ID documento. Ad esempio, se{"my_id":"some_uuid"}
è il campo ID documento in uno dei tuoi documenti, specifica"idField":"my_id"
. Identifica tutti i campi JSON con il nome"my_id"
come ID documento.Specifica questo campo solo quando: (1)
gcsSource.dataSchema
è impostato sucustom
ocsv
e (2)auto_generate_ids
è impostato sufalse
o non è specificato. In caso contrario, viene restituito un erroreINVALID_ARGUMENT
.Tieni presente che il nome del campo JSON specificato da
id_field
deve essere di tipo stringa, deve essere compreso tra 1 e 63 caratteri e deve essere conforme allo standard RFC-1034. In caso contrario, l'importazione dei documenti non andrà a buon fine.
Connettersi a Cloud Storage con sincronizzazione periodica
Prima di importare i dati, consulta Preparare i dati per l'importazione.
La seguente procedura descrive come creare un connettore dati che associa una posizione Cloud Storage a un connettore dati Gemini Enterprise e come specificare una cartella o un file in quella posizione per il datastore che vuoi creare. I datastore secondari dei connettori di dati sono chiamati datastore entità.
I dati vengono sincronizzati periodicamente con il datastore delle entità. Puoi specificare la sincronizzazione giornaliera, ogni tre giorni o ogni cinque giorni.
Console
Nella console Google Cloud , vai alla pagina Gemini Enterprise.
Vai alla pagina Datastore.
Fai clic su Crea datastore.
Nella pagina Origine, seleziona Cloud Storage.
Seleziona il tipo di dati che stai importando.
Fai clic su Periodico.
Seleziona la frequenza di sincronizzazione, ovvero la frequenza con cui vuoi che il connettore Gemini Enterprise si sincronizzi con la posizione Cloud Storage. Puoi modificare la frequenza in un secondo momento.
Nella sezione Seleziona una cartella o un file da importare, seleziona Cartella o File.
Fai clic su Sfoglia e scegli i dati che hai preparato per l'importazione, poi fai clic su Seleziona. In alternativa, inserisci la posizione direttamente nel campo
gs://
.Fai clic su Continua.
Scegli una regione per il connettore dati.
Inserisci un nome per il tuo connettore dati.
(Facoltativo) Se hai selezionato documenti non strutturati, puoi selezionare le opzioni di analisi e chunking per i tuoi documenti. Per confrontare i parser, vedi Analizzare i documenti. Per informazioni sulla suddivisione in blocchi, vedi Suddividere i documenti in blocchi per RAG.
Il parser OCR e il parser di layout possono comportare costi aggiuntivi.
Per selezionare un parser, espandi Opzioni di elaborazione dei documenti e specifica le opzioni del parser che vuoi utilizzare.
Fai clic su Crea.
Ora hai creato un connettore dati che sincronizzerà periodicamente i dati con la posizione Cloud Storage. Hai anche creato un datastore di entità denominato
gcs_store
.Per controllare lo stato dell'importazione, vai alla pagina Datastore e fai clic sul nome del connettore dati per visualizzarne i dettagli nella pagina Data (Dati).
Scheda Attività di importazione dati. Quando la colonna dello stato nella scheda Attività di importazione dei dati cambia da In corso a Riuscito, la prima importazione è completata.
A seconda delle dimensioni dei dati, l'importazione può richiedere diversi minuti o diverse ore.
Dopo aver configurato l'origine dati e importato i dati la prima volta, i dati vengono sincronizzati da questa origine con una frequenza che selezioni durante la configurazione. Circa un'ora dopo la creazione del connettore dati, viene eseguita la prima sincronizzazione. La sincronizzazione successiva avviene circa 24 ore, 72 ore o 120 ore dopo.
Passaggi successivi
Per collegare il datastore a un'app, crea un'app e seleziona il datastore seguendo i passaggi descritti in Crea un'app di ricerca.
Per visualizzare l'anteprima dell'aspetto dei risultati di ricerca dopo la configurazione dell'app e del datastore, consulta Visualizzare l'anteprima dei risultati di ricerca.