準備自訂資料來源的資料

企業通常會自行建構自訂應用程式,如要讓 Gemini Enterprise 連線至這些自訂應用程式中的資料來源,請先準備資料。資料準備方式取決於從自訂資料來源匯入的資料類型,以及您選擇的匯入方式。首先,請選擇要匯入的資料類型:

如要瞭解混合搜尋的限制 (可將多個資料儲存庫連結至單一應用程式),請參閱「About connecting multiple data stores」(關於連結多個資料儲存庫) 一節。

非結構化資料

Gemini Enterprise 支援搜尋 HTML、含嵌入文字的 PDF 和 TXT 格式文件。預先發布版支援 PPTX 和 DOCX 格式。

下表列出不同設定下各檔案類型的檔案大小限制 (詳情請參閱「剖析及分塊處理文件」)。一次最多可匯入 100,000 個檔案。

檔案類型 預設匯入
文字型檔案,例如 HTML、TXT、JSON、XHTML 和 XML < 200 MB
PPTX、DOCX 和 XLSX < 200 MB
PDF < 200 MB

如要將嵌入內容納入非結構化資料,請參閱「使用自訂嵌入內容」。

如果 PDF 無法搜尋 (掃描的 PDF 或內含圖片文字的 PDF,例如資訊圖表),建議在建立資料儲存庫時開啟版面配置剖析器。Gemini Enterprise 就能擷取文字區塊和表格等元素。如果可搜尋的 PDF 主要是由機器可讀取的文字組成,且包含許多表格,建議開啟 OCR 處理功能,並啟用機器可讀取的文字選項,以提升偵測和剖析效果。詳情請參閱「剖析及分塊處理文件」。

如要使用 Gemini Enterprise 進行檢索增強生成 (RAG),請在建立資料儲存庫時啟用文件分塊功能。詳情請參閱「剖析及分塊處理文件」。

您可以從下列來源匯入非結構化資料:

Cloud Storage

您可以使用 Google Cloud 控制台ImportDocuments 方法,或透過 CRUD 方法串流擷取,從 Cloud Storage 匯入含或不含中繼資料的資料。如需 API 參考資料,請參閱 DocumentServicedocuments

資料匯入作業是遞迴的。也就是說,如果值區或指定資料夾內有其他資料夾,系統會匯入這些資料夾中的檔案。

如果您打算從 Cloud Storage 匯入文件,但沒有中繼資料,請直接將文件放入 Cloud Storage 值區。文件 ID 是中繼資料的範例。

如要進行測試,可以使用下列公開的 Cloud Storage 資料夾,其中包含 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

如果您打算從 Cloud Storage 匯入含有中繼資料的資料,請將含有中繼資料的 JSON 檔案放入 Cloud Storage bucket,並在匯入時提供該 bucket 的位置。

非結構化文件可以與中繼資料位於同一個 Cloud Storage 值區,也可以位於不同的值區。

中繼資料檔案必須是 JSON Lines 或 NDJSON 檔案。文件 ID 是中繼資料的例子。中繼資料檔案的每一列都必須採用下列其中一種 JSON 格式:

  • 使用 jsonData

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

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

使用每一列的 uri 欄位,指向文件的 Cloud Storage 位置。

以下是非結構化文件的 NDJSON 中繼資料檔案範例。在這個範例中,中繼資料檔案的每一行都指向一個 PDF 文件,並包含該文件的中繼資料。前兩行使用 jsonData,後兩行使用 structData。使用 structData 時,您不需要逸出引號內的引號。

{"id":"doc-0","jsonData":"{\"title\":\"test_doc_0\",\"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\",\"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","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","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"}}

如要建立資料儲存庫,請參閱「連結 Google 資料來源」。

BigQuery

如要從 BigQuery 匯入中繼資料,請按照下列步驟操作:

  1. 建立包含中繼資料的 BigQuery 資料表。 文件 ID 是中繼資料的例子。

  2. 將非結構化文件放入 Cloud Storage bucket。

    您可以透過 Google Cloud consoleImportDocuments 方法匯入,或透過 CRUD 方法串流擷取。如需 API 參考資料,請參閱 DocumentServicedocuments

請使用下列 BigQuery 結構定義。使用每筆記錄中的 uri 欄位,指向文件的 Cloud Storage 位置。

[
  {
    "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"
      }
    ]
  }
]

詳情請參閱 BigQuery 說明文件中的「建立及使用資料表」。

如要建立資料儲存庫,請參閱「連結 Google 資料來源」。

Google 雲端硬碟

搜尋功能支援同步處理 Google 雲端硬碟中的資料。

如要從 Google 雲端硬碟匯入資料,必須在 Gemini Enterprise 中將 Google Identity 設為識別資訊提供者。如要瞭解如何設定存取控管機制,請參閱「身分和權限」。

如要建立資料儲存庫,請參閱「連結 Google 資料來源」。

結構化資料

根據您打算使用的匯入方法準備資料。

您可以從下列來源匯入結構化資料:

從 BigQuery 或 Cloud Storage 匯入結構化資料時,您可以選擇匯入資料和中繼資料。(含有中繼資料的結構化資料也稱為強化結構化資料)。

BigQuery

您可以從 BigQuery 資料集匯入結構化資料。

系統會自動偵測結構定義。匯入後,Google 建議您編輯自動偵測到的結構定義,以便對應重要屬性,例如名稱。如果您使用 API (而非 Google Cloud 主控台) 匯入,可以選擇以 JSON 物件的形式提供自己的結構定義。詳情請參閱「提供或自動偵測結構定義」。

如需可公開取得的結構化資料範例,請參閱 BigQuery 公開資料集

如要在結構化資料中加入嵌入,請參閱「使用自訂嵌入」。

如果選取匯入含中繼資料的結構化資料,請在 BigQuery 資料表中加入兩個欄位:

  • id 欄位,用於識別文件。如果匯入結構化資料時沒有中繼資料,系統會為您產生 id。加入中繼資料可讓您指定 id 的值。

  • 包含資料的 jsonData 欄位。如需 jsonData 字串的範例,請參閱前一節「Cloud Storage」。

如要匯入含有中繼資料的結構化資料,請使用下列 BigQuery 結構定義:

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

如要建立資料儲存庫,請參閱「連結 Google 資料來源」。

Cloud Storage

Cloud Storage 中的結構化資料必須採用 JSON Lines 或 NDJSON 格式。每個檔案的大小不得超過 2 GB,單一匯入要求最多可匯入 1,000 個檔案。

如需公開提供的結構化資料範例,請參閱 Cloud Storage 中的下列資料夾,其中包含 NDJSON 檔案:

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

如要在結構化資料中加入嵌入,請參閱「使用自訂嵌入」。

以下是結構化資料的 NDJSON 中繼資料檔案範例。檔案中的每一行代表一個文件,並由一組欄位組成。

{"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"]}

如要建立資料儲存庫,請參閱「連結 Google 資料來源」。

本機 JSON 資料

您可以使用 API 直接上傳 JSON 文件或物件。

Google 建議您以 JSON 物件的形式提供自己的結構定義,以獲得更出色的結果。如果您未提供自己的結構定義,系統會自動偵測結構定義。匯入後,建議您編輯自動偵測到的結構定義,以便對應重要屬性,例如標題。詳情請參閱「提供或自動偵測結構定義」。

如要在結構化資料中加入嵌入,請參閱「使用自訂嵌入」。

如要建立資料儲存庫,請參閱「連結 Google 資料來源」。