Preparare i dati per le origini dati personalizzate

Le aziende spesso hanno applicazioni personalizzate create internamente. Se vuoi che Gemini Enterprise si connetta alle origini dati in queste applicazioni personalizzate, devi prima preparare i dati. La modalità di preparazione dei dati dipende dal tipo di dati che stai importando dall'origine dati personalizzata e dalla modalità di importazione scelta. Inizia con il tipo di dati che intendi importare:

Per i limiti della ricerca combinata, in cui è possibile collegare più datastore a una singola app, consulta Informazioni sul collegamento di più datastore.

Dati non strutturati

Gemini Enterprise supporta la ricerca nei documenti in formato TXT, PDF, HTML, DOCX, PPTX, XLSX e XLSM.

La tabella seguente elenca i limiti delle dimensioni dei file di ogni tipo di file con configurazioni diverse (per saperne di più, consulta Analizzare e dividere i documenti in blocchi). Puoi importare fino a 100.000 file alla volta.

Tipo di file Importazione predefinita
File basati su testo come HTML, TXT, JSON, XHTML e XML < 200 MB
PPTX, DOCX, XLSX e XLSM < 200 MB
PDF < 200 MB

Se prevedi di includere incorporamenti nei dati non strutturati, consulta Utilizzare incorporamenti personalizzati nella documentazione di Ricerca dell'agente.

Se hai PDF non ricercabili (PDF scansionati o PDF con testo all'interno delle immagini, ad esempio infografiche), ti consigliamo di attivare l'analizzatore di layout durante la creazione del datastore. In questo modo, Gemini Enterprise può estrarre elementi come blocchi di testo e tabelle. Se hai PDF ricercabili composti principalmente da testo leggibile da una macchina e contenenti molte tabelle, puoi prendere in considerazione l'attivazione dell'elaborazione OCR con l'opzione per il testo leggibile da una macchina abilitata per migliorare il rilevamento e l'analisi. Per saperne di più, consulta Analizzare e dividere i documenti in blocchi.

Se vuoi utilizzare Gemini Enterprise per la Retrieval Augmented Generation (RAG), attiva la suddivisione dei documenti in blocchi quando crei il datastore. Per saperne di più, consulta Analizzare e dividere i documenti in blocchi.

Puoi importare dati non strutturati dalle seguenti origini:

Cloud Storage

Puoi importare dati da Cloud Storage con o senza metadati utilizzando Google Cloud la console, il metodo ImportDocuments o l'importazione di flussi di dati tramite i metodi CRUD. Per informazioni di riferimento sull'API, consulta DocumentService e documents.

L'importazione dei dati è ricorsiva. Ciò significa che, se sono presenti cartelle all'interno del bucket o della cartella che hai specificato, i file all'interno di queste cartelle vengono importati.

Se prevedi di importare documenti da Cloud Storage senza metadati, inserisci i documenti direttamente in un bucket Cloud Storage. L'ID documento è un esempio di metadati.

Per i test, puoi utilizzare le seguenti cartelle di Cloud Storage disponibili pubblicamente, che contengono PDF:

  • gs://cloud-samples-data/gen-app-builder/search/alphabet-investor-pdfs
  • gs://cloud-samples-data/gen-app-builder/search/CUAD_v1
  • gs://cloud-samples-data/gen-app-builder/search/kaiser-health-surveys
  • gs://cloud-samples-data/gen-app-builder/search/stanford-cs-224

Se prevedi di importare dati da Cloud Storage con metadati, inserisci un file JSON contenente i metadati in un bucket Cloud Storage di cui fornisci la località durante l'importazione.

I documenti non strutturati possono trovarsi nello stesso bucket Cloud Storage dei metadati o in un bucket diverso.

Il file di metadati deve essere un file JSON Lines o NDJSON. L'ID documento è un esempio di metadati. Ogni riga del file di metadati deve seguire uno dei seguenti formati JSON:

  • Utilizzo di jsonData:

    { "id": "<your-id>", "jsonData": "<JSON string>", "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }
    
  • Utilizzo di structData:

    { "id": "<your-id>", "structData": { <JSON object> }, "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }
    

Utilizza il campo uri in ogni riga per indirizzare alla località di Cloud Storage del documento.

Ecco un esempio di file di metadati NDJSON per un documento non strutturato. In questo esempio, ogni riga del file di metadati punta a un documento PDF e contiene i metadati per quel documento. Le prime due righe utilizzano jsonData e le seconde due righe utilizzano structData. Con structData non è necessario eseguire l'escape delle virgolette che compaiono all'interno delle virgolette.

{"id":"doc-0","jsonData":"{\"title\":\"test_doc_0\",\"uri\":\"https://test_doc_0.html\",\"description\":\"This document uses a blue color theme\",\"color_theme\":\"blue\"}","content":{"mimeType":"application/pdf","uri":"gs://test-bucket-12345678/test_doc_0.pdf"}}
{"id":"doc-1","jsonData":"{\"title\":\"test_doc_1\",\"uri\":\"https://test_doc_1.html\",\"description\":\"This document uses a green color theme\",\"color_theme\":\"green\"}","content":{"mimeType":"application/pdf","uri":"gs://test-bucket-12345678/test_doc_1.pdf"}}
{"id":"doc-2","structData":{"title":"test_doc_2","uri":"https://test_doc_2.html","description":"This document uses a red color theme","color_theme":"red"},"content":{"mimeType":"application/pdf","uri":"gs://test-bucket-12345678/test_doc_3.pdf"}}
{"id":"doc-3","structData":{"title":"test_doc_3","uri":"https://test_doc_3.html","description":"This is document uses a yellow color theme","color_theme":"yellow"},"content":{"mimeType":"application/pdf","uri":"gs://test-bucket-12345678/test_doc_4.pdf"}}

Per creare il datastore, consulta Connettere un'origine dati Google.

BigQuery

Se prevedi di importare metadati da BigQuery, segui questi passaggi:

  1. Crea una tabella BigQuery contenente i metadati. L'ID documento è un esempio di metadati.

  2. Inserisci i documenti non strutturati in un bucket Cloud Storage.

    Puoi importare utilizzando Google Cloud console, il metodo ImportDocuments o l'importazione di flussi di dati tramite i metodi CRUD. Per informazioni di riferimento sull'API, consulta DocumentService e documents.

Utilizza il seguente schema BigQuery. Utilizza il campo uri in ogni record per indirizzare alla località di Cloud Storage del documento.

[
  {
    "name": "id",
    "mode": "REQUIRED",
    "type": "STRING",
    "fields": []
  },
  {
    "name": "jsonData",
    "mode": "NULLABLE",
    "type": "STRING",
    "fields": []
  },
  {
    "name": "content",
    "type": "RECORD",
    "mode": "NULLABLE",
    "fields": [
      {
        "name": "mimeType",
        "type": "STRING",
        "mode": "NULLABLE"
      },
      {
        "name": "uri",
        "type": "STRING",
        "mode": "NULLABLE"
      }
    ]
  }
]

Per saperne di più, consulta Creare e utilizzare le tabelle nella documentazione di BigQuery.

Per creare il datastore, consulta Connettere un'origine dati Google.

Google Drive

La sincronizzazione dei dati da Google Drive è supportata per la ricerca.

Se prevedi di importare dati da Google Drive, devi configurare Google Identity come provider di identità in Gemini Enterprise. Per informazioni sulla configurazione del controllo dell'accesso, consulta Identità e autorizzazioni.

Per creare il datastore, consulta Connettere un'origine dati Google.

Dati strutturati

Prepara i dati in base al metodo di importazione che intendi utilizzare.

Puoi importare dati strutturati dalle seguenti origini:

Quando importi dati strutturati da BigQuery o da Cloud Storage, hai la possibilità di importare i dati con i metadati. I dati strutturati con metadati sono anche chiamati dati strutturati avanzati.

BigQuery

Puoi importare dati strutturati dai set di dati BigQuery.

Lo schema viene rilevato automaticamente. Dopo l'importazione, Google consiglia di modificare lo schema rilevato automaticamente per mappare le proprietà chiave, come i titoli. Se importi utilizzando l'API anziché la Google Cloud console, hai la possibilità di fornire il tuo schema come oggetto JSON. Per saperne di più, consulta Fornire o rilevare automaticamente uno schema.

Per esempi di dati strutturati disponibili pubblicamente, consulta i set di dati pubblici di BigQuery.

Se prevedi di includere incorporamenti nei dati strutturati, consulta Utilizzare incorporamenti personalizzati nella documentazione di Ricerca dell'agente.

Se selezioni l'importazione di dati strutturati con metadati, includi due campi nelle tabelle BigQuery:

  • Un campo id per identificare il documento. Se importi dati strutturati senza metadati, l'id viene generato automaticamente. L'inclusione dei metadati ti consente di specificare il valore di id.

  • Un campo jsonData contenente i dati. Per esempi di stringhe jsonData, consulta la sezione precedente Cloud Storage.

Utilizza il seguente schema BigQuery per le importazioni di dati strutturati con metadati:

[
  {
    "name": "id",
    "mode": "REQUIRED",
    "type": "STRING",
    "fields": []
  },
  {
    "name": "jsonData",
    "mode": "NULLABLE",
    "type": "STRING",
    "fields": []
  }
]

Per creare il datastore, consulta Connettere un'origine dati Google.

Cloud Storage

I dati strutturati in Cloud Storage devono essere in formato JSON Lines o NDJSON. Ogni file deve avere dimensioni inferiori a 2 GB e ogni riga del file deve avere dimensioni inferiori a 1 MB. Puoi importare fino a 1000 file in un'unica richiesta di importazione.

Per esempi di dati strutturati disponibili pubblicamente, consulta le seguenti cartelle in Cloud Storage, che contengono file NDJSON:

  • gs://cloud-samples-data/gen-app-builder/search/kaggle_movies
  • gs://cloud-samples-data/gen-app-builder/search/austin_311

Se prevedi di includere incorporamenti nei dati strutturati, consulta Utilizzare incorporamenti personalizzati nella documentazione di Ricerca dell'agente.

Ecco un esempio di file di metadati NDJSON di dati strutturati. Ogni riga del file rappresenta un documento ed è composta da un insieme di campi.

{"id": 10001, "title": "Hotel 1", "location": {"address": "1600 Amphitheatre Parkway, Mountain View, CA 94043"}, "available_date": "2024-02-10", "non_smoking": true, "rating": 3.7, "room_types": ["Deluxe", "Single", "Suite"]}
{"id": 10002, "title": "Hotel 2", "location": {"address": "Manhattan, New York, NY 10001"}, "available_date": "2023-07-10", "non_smoking": false, "rating": 5.0, "room_types": ["Deluxe", "Double", "Suite"]}
{"id": 10003, "title": "Hotel 3", "location": {"address": "Moffett Park, Sunnyvale, CA 94089"}, "available_date": "2023-06-24", "non_smoking": true, "rating": 2.5, "room_types": ["Double", "Penthouse", "Suite"]}

Per creare il datastore, consulta Connettere un'origine dati di Google.

Dati JSON locali

Puoi caricare direttamente un documento o un oggetto JSON utilizzando l'API.

Google consiglia di fornire il tuo schema come oggetto JSON per ottenere risultati migliori. Se non fornisci il tuo schema, lo schema viene rilevato automaticamente. Dopo l'importazione, ti consigliamo di modificare lo schema rilevato automaticamente per mappare le proprietà chiave, come i titoli. Per saperne di più, consulta Fornire o rilevare automaticamente uno schema.

Se prevedi di includere incorporamenti nei dati strutturati, consulta Utilizzare incorporamenti personalizzati nella documentazione di Ricerca dell'agente.

Per creare il datastore, consulta Connettere un'origine dati Google.