為您的 Amazon 基岩知識庫抓取網頁 - Amazon Bedrock

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

為您的 Amazon 基岩知識庫抓取網頁

Amazon 基岩提供的網絡爬蟲可以連接到您選擇用於 Amazon 基岩URLs知識庫的網絡爬蟲並進行爬網。您可以根據您選擇的範圍或限制來檢索網站頁面URLs。您可以使用以下方式抓取網站頁面 AWS 適用於 Amazon 基岩或亞馬遜基岩的管理主控台 CreateDataSourceAPI(請參閱支援的 Amazon 基岩和 SDKs AWS CLI).

注意

檢索網頁URLs作為您的資料來源已處於預覽版本中,且可能會有所變更。

選擇要抓取的網站時,您必須遵守 Amazon 可接受使用政策和所有其他 Amazon 條款。請記住,您只能使用 Web 爬蟲來索引您自己的網頁或您有權抓取的網頁。

網絡爬蟲尊重 robots.txt 按照 9309 RFC

每個內容項目可以檢索的網頁內容項目和 MB 數有限制。如需知識庫,請參閱配額

支援的功能

Web 爬行者程式 (Web Crawler) 會從種子開始連線並檢索HTML頁面URL,遍歷相同頂層主要網域和路徑下的所有子連結。如果有任何HTML頁面參照支援的文件,Web 爬行者程式 (Web Crawler) 將會擷取這些文件,不論它們是否位於相同的頂層主要網域內。您可以通過更改編目配置來修改爬網行為-請參閱。連接配置

您可以使用以下內容:

  • 選擇多個URLs進行爬網

  • 尊重標準的 robots.txt 指令,如「允許」和「不允許」

  • 限制編目的範圍,並選擇性地排除符URLs合篩選器模式的範圍 URLs

  • 限制爬網速率 URLs

  • 查看在 Amazon 爬行時URLs訪問的狀態 CloudWatch

必要條件

要使用網絡爬蟲,請確保:

  • 檢查您是否有權抓取您的來源URLs。

  • 檢查與您的源相對應的 robots.txt 路徑URLs不會阻URLs止被抓取。如果網站找不到 robots.txt,則網路爬蟲會遵循 robots.txt 的標準:disallow預設情況下。網絡爬蟲尊重 robots.txt 按照 RFC9 309 的規定。

  • 檢查您的源URL頁面是否是 JavaScript 動態生成的,因為目前不支持抓取動態生成的內容。您可以通過在瀏覽器中輸入以下內容來檢查:view-source:https://examplesite.com/site/。 如果body元素只包含一個div元素和少數或沒有元a href素,則頁面可能是動態生成的。您可以 JavaScript 在瀏覽器中禁用,重新加載網頁,並觀察內容是否正確呈現並包含指向您感興趣的網頁的鏈接。

  • 啟用 CloudWatch 記錄傳送以檢視擷取網頁內容的資料擷取工作狀態,以及URLs無法擷取某些內容時的狀態。

注意

選擇要抓取的網站時,您必須遵守 Amazon 可接受使用政策和所有其他 Amazon 條款。請記住,您只能使用 Web 爬蟲來索引您自己的網頁或您有權抓取的網頁。

連接配置

如需有關編目URLs、包含/排除篩選器、存取、增量同步以及其運作方式的同步處理範圍的詳細資訊,請選URL取下列選項:

您可以根據每個頁面URL與種子的特定關係,限制編目的範圍URLs。URLs為了加快搜索速度,您可以限制URLs使用具有相同主機和種子URL初始URL路徑的編目。如需更廣泛的編目,您可以選擇URLs使用相同主機或在種子的任何子網域內進行編目。URL

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

  • 預設值:限制探索屬於相同主機且具有相同初始URL路徑的網頁。例如,如果URL種子為 "https://aws.amazon.com/bedrock/",則只會檢索從此路徑延伸的此路徑和網頁,例如「https://aws.amazon.com/bedrock/agents/」。例如,URLs像 "https://aws.amazon.com/ec2/" 這樣的兄弟姐妹不會被爬網。

  • 僅限主機:限制探索屬於相同主機的網頁。例如,如果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 之類的大型網站。爬網大型網站將需要很長時間才能抓取。

無論範圍如何,以及是否沒有該檔案類型的排除模式,都會檢索支援的檔案類型。

您可以根據自己的範圍包括或排除某些URLs內容。無論範圍如何,以及是否沒有該檔案類型的排除模式,都會檢索支援的檔案類型。如果您指定包含和排除篩選器,且兩者都符合一個URL,則排除篩選器優先順序,且不會編目網頁內容。

重要

有問題的正則表達式模式過濾器導致災難性的回溯和向前看被拒絕。

一個正則表達式過濾器模式的例子,用於排除URLs以「.pdf」或PDF網頁附件結尾的結尾:「.*\. pdf$」

您可以使用「網路爬蟲」來檢索您授權可檢索的網站頁面。

選擇要抓取的網站時,您必須遵守 Amazon 可接受使用政策和所有其他 Amazon 條款。請記住,您只能使用 Web 爬蟲來索引您自己的網頁或您有權抓取的網頁。

網絡爬蟲尊重 robots.txt 按照 9309 RFC

每次 Web 爬行者程式執行時,都會擷取所有URLs可從來源存取且符合範圍URLs和篩選器的內容。對於首次同步所有內容之後的增量同步,Amazon Bedrock 會使用新內容和已修改內容更新您的知識庫,並移除不再存在的舊內容。有時,爬蟲可能無法判斷內容是否已從網站中刪除;在這種情況下,在這種情況下,在您的知識庫中保留舊內容時會出錯。

若要將資料來源與知識庫同步,請在主控台中使用StartIngestionJobAPI或選取您的知識庫,然後在資料來源概觀區段中選取 [同步]。

重要

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

Console

以下步驟為您的 Amazon 基岩知識庫設定網路爬蟲程式。您可以將 Web 爬行者程式設定為主控台中知識庫建立步驟的一部分。

  1. 登入 AWS Management Console 使用具有 Amazon 基岩許可的IAM角色,並在以下位置打開 Amazon 基岩控制台。https://console.aws.amazon.com/bedrock/

  2. 在左側導覽窗格中,選取 [知識庫]。

  3. 在 [知識庫] 區段中,選取 [建立知識庫]。

  4. 提供知識庫詳細資料。

    1. 提供知識庫名稱和可選描述。

    2. 提供 AWS Identity and Access Management 角色,用於建立知識庫所需的必要存取權限。

      注意

      所以此 IAM 可以為您建立具有所有必要權限的角色,作為建立知識庫的主控台步驟的一部分。完成建立知識庫的步驟之後, IAM 具有所有必需權限的角色會套用至您的特定知識庫。

    3. 建立您要指派給知識庫的任何標籤。

    轉到下一節以配置您的數據源。

  5. 選擇「Web 爬行者程式」作為您的資料來源,並提供組態詳細資訊。

    (選擇性) 變更預設資料來源名稱並輸入「說明」。

  6. 提供URLs您要抓取URLs的來源。您可以選取「新增來源」,最多新增 9 個額外URLs的項目URLs。透過提供來源URL,即表示您確認您已獲得編目其網域的授權。

  7. 檢查進階設定。您可以選擇性地變更預設選取的設定。

    用於 KMS key 設定時,您可以選擇自訂金鑰或使用預設提供的資料加密金鑰。

    將數據轉換為嵌入時, Amazon Bedrock 使用密鑰加密您的臨時數據 AWS 擁有和管理,默認情況下。您可以使用自己的KMS密鑰。如需詳細資訊,請參閱資料擷取期間的暫時性資料儲存加密

    對於資料刪除原則設定,您可以選擇下列其中一項:

    • 刪除:刪除知識庫或資料來源資源時,刪除資料來源中轉換為向量嵌入的所有資料。請注意,矢量存儲本身不會被刪除,只有數據。這個標誌被忽略如果 AWS 帳號已刪除。

    • 保留:在刪除知識庫或資料來源資源時,保留資料來源中轉換為向量嵌入的所有資料。請注意,如果刪除知識庫或資料來源資源,則不會刪除向量存放區本身

  8. 選取編目來源URLs範圍的選項。

    • 預設值:限制探索屬於相同主機且具有相同初始URL路徑的網頁。例如,如果URL種子為 "https://aws.amazon.com/bedrock/",則只會檢索從此路徑延伸的此路徑和網頁,例如「https://aws.amazon.com/bedrock/agents/」。例如,URLs像 "https://aws.amazon.com/ec2/" 這樣的兄弟姐妹不會被爬網。

    • 僅限主機:限制探索屬於相同主機的網頁。例如,如果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 之類的大型網站。爬網大型網站將需要很長時間才能抓取。

    無論範圍如何,以及是否沒有該檔案類型的排除模式,都會檢索支援的檔案類型。

  9. 輸入編目速度的最大節流。URLs每台主機每分鐘內擷取 1 到 300 URLs 之間。較高的爬網速度會增加負載,但所花費的時間更少。

  10. 對於URL正則表達式模式(可選),您可以通過在框中輸入正則表達式模式來添加包含模式或排除模式。您最多可以新增 25 個包含和 25 個排除濾鏡模式,方法是選取 [新增模式]。包含和排除模式會根據您的範圍進行編目。如果發生衝突,排除模式優先。

  11. 選擇預設或自訂的區塊和剖析組態。

    1. 如果您選擇自訂設定,請選取下列其中一個區塊選項:

      • 固定大小的塊:內容拆分為您設置的近似令牌大小的文本塊。您可以設定不得超過區塊的記號數目上限,以及連續區塊之間的重疊百分比。

      • 默認塊:內容分割成多達 300 個令牌的文本塊。如果單一文件或內容片段包含少於 300 個標記,則不會進一步分割文件。

      • 分層塊:內容組織成父子塊的嵌套結構。您可以設置最大父塊令牌大小和最大子塊令牌大小。您也可以設定連續父區塊與連續子區塊之間重疊 Token 的絕對數目。

      • 語義塊:內容組織成語義相似的文本塊或句子組。您可以將目標/當前句子周圍的最大句子數設置為組合在一起(緩衝區大小)。您也可以設定中斷點百分位數閾值,以將文字分割成有意義的區塊。語義塊使用基礎模型。檢視 Amazon Bedrock 定價基礎模型的成本信息。

      • 沒有區塊:每個文檔被視為一個單一的文本塊。您可能希望通過將文檔拆分為單獨的文件來預處理它們。

      注意

      建立資料來源之後,就無法變更資料塊化策略。

    2. 您可以選擇使用 Amazon Bedrock解析文檔以解析比標準文本更多的基礎模型。例如,您可以在文件中剖析表格式資料,但其結構完整無缺。檢視 Amazon Bedrock 定價基礎模型的成本信息。

    3. 您可以選擇使用 AWS Lambda 用於自定義分塊策略以及如何處理和攝取文檔元數據屬性/字段的功能。提供 Amazon S3 Lambda 函數輸入和輸出的值區位置。

    轉到下一節以配置向量存儲。

  12. 選擇將資料轉換為向量嵌入的模型。

    建立向量存放區以允許 Amazon 基岩存放、更新和管理嵌入。您可以快速建立新的向量存放區,或從已建立的支援向量存放區中進行選取。如果您建立新的向量存放區,系統會為您設定 Amazon OpenSearch 無伺服器向量搜尋集合和索引,其中包含必要欄位。如果您從支援的向量存放區中選取,則必須對應向量欄位名稱和中繼資料欄位名稱。

    移至下一節以檢閱您的知識庫組態。

  13. 檢查您的知識庫的詳細信息。您可以在繼續前進並創建知識庫之前編輯任何部分。

    注意

    建立知識庫所需的時間取決於您的特定組態。知識庫的建立完成後,知識庫的狀態會變更為其已就緒或可用的狀態。

    知識庫準備就緒且可用之後,請在您想要保持內容保持最新狀態時,首次同步資料來源。在主控台中選取您的知識庫,然後在資料來源概觀區段中選取 [同步]。

CLI

以下是您 Amazon 基岩知識庫的網路爬蟲組態範例。

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