準備自訂資料來源的資料

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

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

非結構化資料

Gemini Enterprise 支援搜尋 TXT、PDF、HTML、DOCX、PPTX、XLSX 和 XLSM 格式的文件。

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

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

如果您打算在非結構化資料中加入嵌入,請參閱 Vertex AI Search 說明文件中的「使用自訂嵌入」。

如果 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 控制台ImportDocuments 方法或 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 公開資料集

如果您打算在結構化資料中加入嵌入,請參閱 Vertex AI Search 說明文件中的「使用自訂嵌入」。

如果選擇匯入含中繼資料的結構化資料,請在 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 行或 NDJSON 格式。每個檔案的大小不得超過 2 GB,且檔案的每一列不得超過 1 MB。單一匯入要求最多可匯入 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

如果您打算在結構化資料中加入嵌入,請參閱 Vertex AI Search 說明文件中的「使用自訂嵌入」。

以下是結構化資料的 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 物件的形式提供自己的結構定義,以獲得更佳成效。如果您未提供自己的結構定義,系統會自動偵測結構定義。匯入後,建議您編輯自動偵測到的結構定義,以便對應重要屬性,例如標題。詳情請參閱「提供或自動偵測結構定義」。

如果您打算在結構化資料中加入嵌入,請參閱 Vertex AI Search 說明文件中的「使用自訂嵌入」。

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