Per importare dati da Firestore, segui questi passaggi per creare un datastore e importare i dati utilizzando la console Google Cloud o l'API.
Se i dati Firestore si trovano nello stesso progetto di Gemini Enterprise, vai a Importare dati da Firestore.
Se i dati di Firestore si trovano in un progetto diverso da quello di Gemini Enterprise, vai a Configurare l'accesso a Firestore.
Configurare l'accesso a Firestore da un altro progetto
Per concedere a Gemini Enterprise l'accesso ai dati Firestore che si trovano in un progetto diverso, segui questi passaggi:
Sostituisci la seguente variabile
PROJECT_NUMBER
con il numero del tuo progetto Gemini Enterprise, quindi copia i contenuti di questo blocco di codice. Questo è l'identificatore del tuo account di servizio Gemini Enterprise:service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
Vai alla pagina IAM e amministrazione.
Passa al progetto Firestore nella pagina IAM e amministrazione e fai clic su Concedi l'accesso.
In Nuove entità, inserisci l'identificatore dell'account di servizio dell'istanza e seleziona il ruolo Datastore > Amministratore importazione/esportazione di Cloud Datastore.
Fai clic su Salva.
Torna al progetto Gemini Enterprise.
Poi vai a Importare dati da Firestore.
Importa dati da Firestore
Console
Per utilizzare la console per importare i dati da Firestore, 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 Firestore.
Specifica l'ID progetto, l'ID database e l'ID raccolta dei dati che intendi importare.
Fai clic su Continua.
Seleziona una regione per il datastore.
Inserisci un nome per il tuo datastore.
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 Firestore, 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/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_SEARCH"], }'
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.DATA_STORE_ID
: l'ID del datastore. L'ID può contenere solo lettere minuscole, cifre, trattini bassi e trattini.DISPLAY_NAME
: il nome visualizzato del datastore. Questo messaggio potrebbe essere visualizzato nella console Google Cloud .
Importa i dati da Firestore.
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 '{ "firestoreSource": { "projectId": "FIRESTORE_PROJECT_ID", "databaseId": "DATABASE_ID", "collectionId": "COLLECTION_ID", }, "reconciliationMode": "RECONCILIATION_MODE", "autoGenerateIds": "AUTO_GENERATE_IDS", "idField": "ID_FIELD", }'
Sostituisci quanto segue:
PROJECT_ID
: l'ID del tuo progetto Gemini Enterprise.DATA_STORE_ID
: l'ID del datastore. L'ID può contenere solo lettere minuscole, cifre, trattini bassi e trattini.FIRESTORE_PROJECT_ID
: l'ID del tuo progetto Firestore.DATABASE_ID
: l'ID del database Firestore.COLLECTION_ID
: l'ID della raccolta Firestore.RECONCILIATION_MODE
: facoltativo. I valori sonoFULL
eINCREMENTAL
. Il valore predefinito èINCREMENTAL
. Se specifichiINCREMENTAL
, viene eseguito un aggiornamento incrementale dei dati da Firestore al tuo 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 sono in Firestore 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.ID_FIELD
: facoltativo. Specifica quali campi sono gli ID documento.
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.