準備要擷取的資料

資料的準備方式取決於匯入的資料類型,以及您選擇的匯入方式。請先決定要匯入哪些資料類型:

如要瞭解混合搜尋 (可將多個資料儲存庫連結至單一自訂搜尋應用程式) 的相關資訊,請參閱「關於連結多個資料儲存庫」一節。

網站資料

建立網站資料的資料儲存庫時,您必須提供網頁網址,Google 會檢索這些網址並建立索引,以便進行搜尋或推薦。

為網站資料建立索引前:

  • 決定要納入或排除哪些網址模式。

    • 排除動態網址的模式:動態網址會在服務時根據要求進行變更。

      舉例來說,提供搜尋結果的網頁網址模式,例如 www.example.com/search/*。假設使用者搜尋字詞 Nobel prize,動態搜尋網址可能會是以下不重複的網址:www.example.com/search?q=nobel%20prize/UNIQUE_STRING。如果沒有排除網址模式 www.example.com/search/*,系統就會為所有符合此模式的動態搜尋網址建立索引。這會導致索引膨脹,並降低搜尋品質。

    • 使用標準網址模式來排除重複的網址。這樣一來,Google 搜尋在檢索網站時,就能提供單一標準網址,並消除模糊不清的情況。如需標準化示例和更多資訊,請參閱「什麼是網址標準化」和「如何使用 rel="canonical" 和其他方法指定標準網址」。

  • 您可以加入需要建立索引的網域 (可為相同或不同網域) 的網址模式,並排除不應建立索引的模式。您可以加入和排除的網址格式數量如下:

    索引類型 已納入的網站 已排除的網站
    基本網站搜尋 最多 50 個網址模式 最多 50 個網址模式
    進階網站索引建立功能 最多 500 個網址模式 最多 500 個網址模式

  • 請確認你要提供的網頁並未使用 robots.txt 封鎖索引。詳情請參閱「robots.txt 簡介」。

  • 如果您打算使用進階網站索引建立功能,就必須驗證資料儲存庫中網址模式的網域

  • 使用結構化資料進行進階網站索引建立一文所述,請將 meta 標記和 PageMap 形式的結構化資料新增至資料儲存庫結構定義,以強化索引。

非結構化資料

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

您可以從 Cloud Storage 值區匯入文件。您可以使用 Google Cloud 主控台、ImportDocuments 方法或透過 CRUD 方法進行串流攝入。如需 API 參考資訊,請參閱 DocumentServicedocuments

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

檔案類型 預設匯入 匯入時使用版面配置感知文件區塊 使用版面配置剖析器匯入
文字檔案,例如 HTML、TXT、JSON、XHTML 和 XML < 2.5 MB < 10 MB < 10 MB
PPTX、DOCX 和 XLSX 小於 200 MB 小於 200 MB 小於 200 MB
PDF 小於 200 MB 小於 200 MB 小於 40 MB

如果您打算在非結構化資料中加入嵌入資料,請參閱「使用自訂嵌入資料」。

如果您有無法搜尋的 PDF (掃描的 PDF 或圖片內含文字的 PDF,例如資訊圖表),建議您在建立資料儲存庫時啟用光學字元辨識 (OCR) 處理功能。這樣 Vertex AI Search 就能擷取文字區塊和表格等元素。如果您有可搜尋的 PDF,且大部分內容都是機器可讀的文字,並包含許多表格,建議您開啟 OCR 處理功能,並啟用機器可讀文字選項,以便改善偵測和剖析作業。詳情請參閱「剖析及分割文件」。

如果您想使用 Vertex AI Search 進行檢索增強生成 (RAG),請在建立資料儲存庫時啟用文件分割功能。詳情請參閱「剖析及分割文件」。

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

Cloud Storage

您可以匯入含有或不含中繼資料的 Cloud Storage 資料。

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

如果您打算從 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 值區。

非結構化文件可以與中繼資料位於同一個 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"}}

如要建立資料儲存庫,請參閱「建立搜尋資料儲存庫」。

BigQuery

如果您打算從 BigQuery 匯入中繼資料,請建立包含中繼資料的 BigQuery 資料表。文件 ID 就是中繼資料的範例。

將非結構化文件放入 Cloud Storage 值區。

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

[
  {
    "name": "id",
    "mode": "REQUIRED",
    "type": "STRING",
    "fields": []
  },
  {
    "name": "jsonData",
    "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 雲端硬碟匯入資料,必須在 AI 應用程式中將 Google Identity 設為身分識別資訊提供者。如要瞭解如何設定存取權控管,請參閱「使用資料來源存取權控管」一文。

如要建立資料儲存庫,請參閱「建立搜尋資料儲存庫」。

結構化資料

請根據您要使用的匯入方法準備資料。如果您打算擷取媒體資料,請參閱「結構化媒體資料」。

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

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

如需建立資料儲存庫的操作說明,請參閱「建立搜尋資料儲存庫」或「建立推薦資料儲存庫」。

Cloud Storage

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

如需公開結構化資料的範例,請參閱 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"]}

如要建立資料儲存庫,請參閱「建立搜尋資料儲存庫」或「建立推薦資料儲存庫」。

本機 JSON 資料

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

Google 建議你以 JSON 物件的形式提供自訂結構定義,以便取得更好的結果。如果您沒有提供自己的結構定義,系統會自動偵測結構定義。匯入後,建議您編輯自動偵測的結構定義,以對應關鍵屬性,例如標題。詳情請參閱「提供或自動偵測結構定義」。

如要將嵌入資料納入結構化資料,請參閱使用自訂嵌入資料

如要建立資料儲存庫,請參閱「建立搜尋資料儲存庫」或「建立推薦資料儲存庫」。

結構化媒體資料

如要擷取結構化媒體資料 (例如影片、新聞或音樂),請詳閱下列說明:

醫療照護 FHIR 資料

如果您打算從 Cloud Healthcare API 擷取 FHIR 資料,請確認下列事項:

  • 位置:來源 FHIR 儲存庫必須位於 us-central1useu 位置的 Cloud Healthcare API 資料集中。詳情請參閱「在 Cloud Healthcare API 中建立及管理資料集」。
  • FHIR 儲存庫類型:來源 FHIR 儲存庫必須是 R4 資料儲存庫。您可以列出資料集中的 FHIR 儲存庫,檢查 FHIR 儲存庫的版本。如要建立 FHIR R4 儲存庫,請參閱「建立 FHIR 儲存庫」。
  • 匯入配額:來源 FHIR 儲存庫中的 FHIR 資源不得超過 100 萬個。如果 FHIR 資源超過 100 萬個,系統會在達到這個上限後停止匯入程序。詳情請參閱「配額與限制」。
  • DocumentReference 資源中參照的檔案必須是儲存在 Cloud Storage 中的 PDF、RTF 或圖片檔案。參照檔案的連結必須以標準 Cloud Storage 路徑格式 (gs://BUCKET_NAME/PATH_TO_REFERENCED_FILE) 放在資源的 content[].attachment.url 欄位中。
  • 請查看 Vertex AI Search 支援的 FHIR R4 資源清單。詳情請參閱 Healthcare FHIR R4 資料結構定義參考資料
  • 資源參照:請確認相對資源參照的格式為 Resource/resourceId。舉例來說,subject.reference 的值必須是 Patient/034AB16。如要進一步瞭解 Cloud Healthcare API 如何支援 FHIR 資源參照,請參閱「FHIR 資源參照」。