為您的知識庫網路爬取網頁 - Amazon Bedrock

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

為您的知識庫網路爬取網頁

Amazon Bedrock 提供的 Web 編目程式會連線至您選取的 URL 並進行網路爬取,以用於 Amazon Bedrock 知識庫中。您可以根據設定的範圍或限制,為所選的 URL 網路爬取網站頁面。您可以使用 Amazon Bedrock 的 AWS 管理主控台CreateDataSource API 來網路爬取網站頁面 (請參閱 Amazon Bedrock 支援的 SDK 和 AWS CLI)。目前,只有 Amazon OpenSearch Serverless 向量存放區可搭配此資料來源使用。

注意

Web 編目程式資料來源連接器為預覽版本,可能會有所變更。

選取要網路爬取的網站時,您必須遵守 Amazon 可接受的使用政策以及 Amazon 所有其他條款。請記住,您只能使用 Web 編目程式為自己的網頁或您具有授權可網路爬取的網頁建立索引,且必須符合 robots.txt 組態。

Web 編目程式遵守 RFC 9309 符合 robots.txt 的規定。

可以網路爬取的網頁內容項目數量及各內容項目的大小 (單位 MB) 都有限制。請參閱知識庫的配額

支援的功能

Web 編目程式從種子 URL 開始連線到 HTML 頁面並網路爬取 HTML 頁面,周遊相同頂層主要網域和路徑下的所有子連結。如果有任何 HTML 頁面參考支援的文件,Web 編目程式將擷取這些文件,無論其是否位於相同的頂層主要網域中。您可以變更網路爬取組態來修改網路爬取行為 - 請參閱連線組態

支援您執行下列動作:

  • 選取多個來源 URL 進行網路爬取,並將 URL 的範圍設定為僅網路爬取主機或亦包含子網域。

  • 網路爬取屬於來源 URL 一部分的靜態網頁。

  • 指定自訂使用者代理程式字尾,為您自己的編目程式設定規則。

  • 包含或排除符合篩選條件模式的特定 URL。

  • 遵守標準 robots.txt 指令,例如「Allow」和「Disallow」。

  • 限制要網路爬取的 URL 範圍,並選擇性地排除符合篩選條件模式的 URL。

  • 限制網路爬取 URL 的速率和要網路爬取的頁面數目上限。

  • 在 Amazon CloudWatch 中檢視已網路爬取 URL 的狀態

必要條件

若要使用 Web 編目程式,請確定:

  • 檢查您是否獲得網路爬取來源 URL 的授權。

  • 檢查對應至來源 URL 的 robots.txt 路徑,並不會阻止網路爬取 URL。Web 編目程式遵循 robots.txt 的標準:如果網站找不到 robots.txt,則預設為 disallow。Web 編目程式遵守 RFC 9309 符合 robots.txt 的規定。您也可以指定自訂使用者代理程式標頭字尾,為您自己的編目程式設定規則。如需詳細資訊,請參閱此頁面上 連線組態 指示中的 Web 編目程式 URL 存取。

  • 啟用 CloudWatch Logs 交付,並遵循 Web 編目程式日誌的範例,以檢視用於擷取 Web 內容的資料擷取任務狀態,以及是否無法擷取特定 URL。

注意

選取要網路爬取的網站時,您必須遵守 Amazon 可接受的使用政策以及 Amazon 所有其他條款。請記住,您只能使用 Web 編目程式為自己的網頁或您具有授權可網路爬取的網頁建立索引。

連線組態

如需網路爬取 URL、包含/排除篩選條件、URL 存取、增量同步及這些運作方式的同步範圍詳細資訊,請選取下列項目:

您可以根據每個頁面 URL 與種子 URL 間的特定關係,來限制可網路爬取 URL 的範圍。若要加速網路爬取,您可以將 URL 限制為具有相同主機及種子 URL 其初始 URL 路徑的 URL。如需更廣泛的網路爬取,您可以選擇網路爬取具有相同主機或在種子 URL 其任何子網域內的 URL。

您可以從下列選項來選擇。

  • 預設:將網路爬取限制在屬於相同主機且具有相同初始 URL 路徑的網頁。例如,如果種子 URL 為「https://aws.amazon.com/bedrock/」,則將僅網路爬取此路徑與從此路徑延伸的網頁,例如「https://aws.amazon.com/bedrock/agents/」。例如,不會網路爬取像是「https://aws.amazon.com/ec2/」的同級 URL。

  • 僅限主機:將網路爬取限制在屬於相同主機的網頁。例如,如果種子 URL 為「https://aws.amazon.com/bedrock/」,則也將網路爬取具有「https://aws.amazon.com」的網頁,例如「https://aws.amazon.com/ec2」。

  • 子網域:包含網路爬取與種子 URL 具有相同主要網域的任何網頁。例如,如果種子 URL 為「https://aws.amazon.com/bedrock/」,則也將網路爬取包含「amazon.com」(子網域) 的任何網頁,例如「https://www.amazon.com」。

注意

請確定您未網路爬取過多的網頁。不建議在沒有篩選條件或範圍限制的情況下網路爬取大型網站,例如 wikipedia.org。網路爬取大型網站需花費很長的時間進行網路爬取。

無論範圍為何,且如果該檔案類型沒有排除模式,都會網路爬取支援的檔案類型

Web 編目程式支援靜態網站。

您也可以限制網路爬取 URL 的速率,以控制網路爬取速度的限流。您可以設定每分鐘網路爬取每個主機的 URL 數目上限。此外,您也可以設定要網路爬取的網頁總數上限 (最多 25,000 個)。請注意,如果來源 URL 的網頁總數超過設定上限,則資料來源同步/擷取任務將會失敗。

您可以根據範圍包含或排除特定 URL。無論範圍為何,且如果該檔案類型沒有排除模式,都會網路爬取支援的檔案類型。如果您指定包含篩選條件和排除篩選條件,且兩者皆與文件相符,則排除篩選條件會優先,且不會網路爬取 Web 內容。

重要

導致災難性回溯和前瞻的有問題規則運算式模式篩選條件會遭到拒絕。

例如,會排除結尾為「.pdf」的 URL 或 PDF 網頁附件的規則運算式篩選條件模式:".*\.pdf$"

您可以使用 Web 編目程式來編目您獲授權網路爬取的網站頁面。

選取要網路爬取的網站時,您必須遵守 Amazon 可接受的使用政策以及 Amazon 所有其他條款。請記住,您只能使用 Web 編目程式為自己的網頁或您具有授權可網路爬取的網頁建立索引。

Web 編目程式遵守 RFC 9309 符合 robots.txt 的規定。

您可以將特定使用者代理程式機器人指定為「允許」或「不允許」使用者代理程式來網路爬取來源 URL。您可以修改網站的 robots.txt 檔案,以控制 Web 編目程式如何網路爬取來源 URL 的方式。編目程式會先尋找 bedrockbot-UUID 規則,然後在 robots.txt 檔案中尋找一般 bedrockbot 規則。

您也可以新增 User-Agent 字尾,用於在機器人保護系統中將您的編目程式加入允許清單。請注意,此字尾不需要新增至 robots.txt 檔案,以確保沒有一切可以模擬使用者代理程式字串。例如,若要允許 Web 編目程式網路爬取所有網站內容,且不允許任何其他機器人的網路爬取,請使用下列指令:

User-agent: bedrockbot-UUID # Amazon Bedrock Web Crawler Allow: / # allow access to all pages User-agent: * # any (other) robot Disallow: / # disallow access to any pages

每次 Web 編目程式執行時,都會擷取可從來源 URL 連線且符合範圍和篩選條件的所有 URL 內容。對於在所有內容第一次同步後的增量同步,Amazon Bedrock 將使用新的和修改後的內容更新您的知識庫,並移除不再存在的舊內容。有時,編目程式可能無法判斷內容是否已從網站中移除;在這種情況下,它會傾向在知識庫中保留舊內容。

若要將資料來源與知識庫同步,請使用 StartIngestionJob API,或在主控台中選取知識庫,然後在資料來源概觀區段中選取同步

重要

您從資料來源同步的所有資料可供具有 bedrock:Retrieve 許可能擷取資料的任何人使用。這也可以包含具有受控資料來源許可的任何資料。如需詳細資訊,請參閱知識庫許可

Console
將 Web 編目程式資料來源連接到知識庫
  1. 遵循 透過連線至 Amazon Bedrock 知識庫中的資料來源來建立知識庫 的步驟,然後選擇 Web 編目程式做為資料來源。

  2. 提供資料來源的名稱和選用的描述。

  3. 提供所要網路爬取 URL 的來源 URL。您最多可以新增 9 個額外的 URL,方法是選取新增來源 URL。透過提供來源 URL,即表示您確認已獲授權可網路爬取其網域。

  4. 進階設定區段中,您可以選擇設定下列項目:

    • 用於暫時性資料儲存的 KMS 金鑰。– 您可以使用預設 AWS 受管金鑰 或您自己的 KMS 金鑰,在將資料轉換為嵌入時加密暫時性資料。如需詳細資訊,請參閱 資料擷取期間的暫時性資料儲存加密

    • 資料刪除政策 – 您可以刪除預設存放在向量存放區中資料來源的向量嵌入,或選擇保留向量存放區資料。

  5. (選用) 為 bedrock-UUID- 提供使用者代理程式字尾,用於在存取 Web 伺服器時識別編目程式或機器人。

  6. 同步範圍區段中設定下列項目:

    1. 選取用於網路爬取您來源 URL 的網站網域範圍

      • 預設:將網路爬取限制在屬於相同主機且具有相同初始 URL 路徑的網頁。例如,如果種子 URL 為「https://aws.amazon.com/bedrock/」,則將僅網路爬取此路徑與從此路徑延伸的網頁,例如「https://aws.amazon.com/bedrock/agents/」。例如,不會網路爬取像是「https://aws.amazon.com/ec2/」的同級 URL。

      • 僅限主機:將網路爬取限制在屬於相同主機的網頁。例如,如果種子 URL 為「https://aws.amazon.com/bedrock/」,則也將網路爬取具有「https://aws.amazon.com」的網頁,例如「https://aws.amazon.com/ec2」。

      • 子網域:包含網路爬取與種子 URL 具有相同主要網域的任何網頁。例如,如果種子 URL 為「https://aws.amazon.com/bedrock/」,則也將網路爬取包含「amazon.com」(子網域) 的任何網頁,例如「https://www.amazon.com」。

      注意

      請確定您未網路爬取過多的網頁。不建議在沒有篩選條件或範圍限制的情況下網路爬取大型網站,例如 wikipedia.org。網路爬取大型網站需花費很長的時間進行網路爬取。

      無論範圍為何,且如果該檔案類型沒有排除模式,都會網路爬取支援的檔案類型

    2. 輸入網路爬取速度最大限流。每分鐘擷取每部主機 1 到 300 個之間的 URL。網路爬取速度越快,負載會增加,但花費的時間較少。

    3. 輸入 1 到 25000 之間的資料來源同步的頁數上限。限制從來源 URL 網路爬取的網頁數量上限。如果網頁超過此數字,則資料來源同步將會失敗,而且不會擷取任何網頁。

    4. 對於 URL 規則運算式模式 (選用),您可以在方塊中輸入規則運算式模式來新增包含模式排除模式。您可以選取新增模式來新增最多 25 個包含和 25 個排除篩選條件模式。其會根據您的範圍來網路爬取包含和排除模式。如有衝突,則以排除模式為優先。

  7. (選用) 在內容剖析和分塊區段中,您可以自訂如何將資料剖析和分塊。請參閱下列資源進一步了解這些自訂項目:

  8. 繼續選擇嵌入模型和向量存放區。若要查看剩餘的步驟,請返回透過連線至 Amazon Bedrock 知識庫中的資料來源來建立知識庫,並在連接資料來源後繼續進行該步驟。

API

若要使用 Web 編目程式將知識庫連接至資料來源,請使用 Amazon Bedrock 代理程式建置時期端點傳送 CreateDataSource 請求,在 DataSourceConfigurationtype 欄位中指定 WEB,並包含 webConfiguration 欄位。以下是 Amazon Bedrock 知識庫的 Web 編目程式組態範例。

{ "webConfiguration": { "sourceConfiguration": { "urlConfiguration": { "seedUrls": [{ "url": "https://www.examplesite.com" }] } }, "crawlerConfiguration": { "crawlerLimits": { "rateLimit": 50, "maxPages": 100 }, "scope": "HOST_ONLY", "inclusionFilters": [ "https://www\.examplesite\.com/.*\.html" ], "exclusionFilters": [ "https://www\.examplesite\.com/contact-us\.html" ], "userAgent": "CustomUserAgent" } }, "type": "WEB" }

若要了解您可以透過包含選用 vectorIngestionConfiguration 欄位套用至擷取的自訂項目,請參閱自訂資料來源的擷取