準備要擷取的資料

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

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

網站資料

建立網站資料儲存庫時,您會提供網頁網址,供 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 < 200 MB < 10 MB < 10 MB
PPTX、DOCX 和 XLSX < 200 MB < 200 MB < 200 MB
PDF < 200 MB < 200 MB < 40 MB

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

如果 PDF 無法搜尋 (掃描的 PDF 或內含圖片文字的 PDF,例如資訊圖表),建議在建立資料儲存庫時開啟版面配置剖析器。這項功能可讓 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 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"}}

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

BigQuery

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

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

請使用下列 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 Applications 中將 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 或圖片檔案。參照檔案的連結必須位於資源的 content[].attachment.url 欄位中,且格式為標準 Cloud Storage 路徑:gs://BUCKET_NAME/PATH_TO_REFERENCED_FILE
  • 查看 Vertex AI Search 支援的 FHIR R4 資源清單。詳情請參閱「Healthcare FHIR R4 資料結構定義參考資料」。
  • 資源參照:請確保相對資源參照採用 Resource/resourceId 格式。舉例來說,subject.reference 的值必須是 Patient/034AB16。如要進一步瞭解 Cloud Healthcare API 如何支援 FHIR 資源參照,請參閱「FHIR 資源參照」。