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 di queste applicazioni personalizzate, devi prima preparare i dati. La preparazione dei dati dipende dal tipo di dati che importi dall'origine dati personalizzata e dal modo in cui scegli di importarli. Inizia con il tipo di dati che prevedi di 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 di dimensione dei file per ogni tipo di file con configurazioni diverse (per ulteriori informazioni, consulta Analizza e suddividi i documenti). 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 embedding nei tuoi dati non strutturati, consulta Utilizza embedding personalizzati nella documentazione di Agent Search.

Se hai PDF non ricercabili (PDF scansionati o PDF con testo all'interno di immagini, come infografiche), ti consigliamo di attivare il parser di layout durante la creazione del datastore. In questo modo, Gemini Enterprise può estrarre elementi come blocchi di testo e tabelle. Se hai PDF disponibili per la ricerca composti principalmente da testo leggibile da macchina e contenenti molte tabelle, puoi valutare di attivare l'elaborazione OCR con l'opzione per il testo leggibile da macchina abilitata per migliorare il rilevamento e l'analisi. Per saperne di più, consulta Analizza e suddividi i documenti.

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

Puoi importare dati non strutturati dalle seguenti origini:

Cloud Storage

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

L'importazione dei dati è ricorsiva. In altre parole, se all'interno del bucket o della cartella che specifichi sono presenti cartelle, i file al loro interno vengono importati.

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

Per i test, puoi utilizzare le seguenti cartelle 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 la cui posizione viene fornita durante l'importazione.

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

Il file dei 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 indicare la posizione del documento in Cloud Storage.

Ecco un esempio di file di metadati NDJSON per un documento non strutturato. In questo esempio, ogni riga del file dei metadati rimanda a un documento PDF e contiene i metadati di 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 appaiono tra 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 Connetti un'origine dati Google.

BigQuery

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

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

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

    Puoi eseguire l'importazione utilizzando la consoleGoogle Cloud , con il metodo ImportDocuments o tramite l'acquisizione di importazione di flussi di dati di dati con 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 puntare alla posizione 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 Crea e utilizza le tabelle nella documentazione di BigQuery.

Per creare il datastore, consulta Connetti 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 Connetti 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 importarli con i metadati. (I dati strutturati con metadati sono anche chiamati dati strutturati migliorati.)

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 console Google Cloud , hai la possibilità di fornire il tuo schema come oggetto JSON. Per saperne di più, consulta Fornisci o rileva automaticamente uno schema.

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

Se prevedi di includere embedding nei tuoi dati strutturati, consulta Utilizza embedding personalizzati nella documentazione di Ricerca agente.

Se scegli di importare dati strutturati con metadati, includi due campi nelle tabelle BigQuery:

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

  • Un campo jsonData che contiene 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 Connetti un'origine dati Google.

Cloud Storage

I dati strutturati in Cloud Storage devono essere in formato JSON Lines o NDJSON. Le dimensioni di ogni file non devono superare i 2 GB e ogni riga del file deve essere inferiore 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 embedding nei tuoi dati strutturati, consulta Utilizza embedding personalizzati nella documentazione di Ricerca agente.

Ecco un esempio di file di metadati NDJSON di dati strutturati. Ogni riga del file rappresenta un documento ed è costituita 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 Connetti un'origine dati di Google.

Dati JSON locali

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

Per risultati migliori, Google consiglia di fornire il tuo schema come oggetto JSON. Se non fornisci il tuo schema, questo 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 Fornisci o rileva automaticamente uno schema.

Se prevedi di includere embedding nei tuoi dati strutturati, consulta Utilizza embedding personalizzati nella documentazione di Ricerca agente.

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