本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
透過連線至 Amazon Bedrock 知識庫中的資料來源來建立知識庫
當您透過連線至資料來源來建立知識庫時,您可以設定或指定下列項目:
-
定義和識別知識庫的一般資訊
-
具有知識庫許可的服務角色。
-
知識庫的組態,包括從資料來源轉換資料時使用的內嵌模型、存放內嵌之服務的儲存組態,以及選擇性存放多模型資料的 S3 位置。
注意
您無法使用根使用者建立知識庫。請先使用 IAM 使用者登入,再開始這些步驟。
展開與您的使用案例對應的區段:
設定知識庫
-
AWS Management Console 使用具有 Amazon Bedrock 許可的 IAM 角色登入 ,然後開啟 Amazon Bedrock 主控台,網址為 https://https://console.aws.amazon.com/bedrock/
。 -
在左側導覽窗格中,選擇知識庫。
-
在知識庫區段中,選擇建立按鈕,然後選取 以使用向量存放區建立知識庫。
-
(選用) 變更預設名稱並提供知識庫的描述。
-
選擇 AWS Identity and Access Management (IAM) 角色,提供 Amazon Bedrock 存取其他必要 AWS 服務的許可。您可以讓 Amazon Bedrock 建立服務角色,或選擇您已建立的自訂角色。
-
選擇資料來源以連接至您的知識庫。
-
(選用) 將標籤新增至您的知識庫。如需詳細資訊,請參閱標記 Amazon Bedrock 資源。
-
(選用) 設定 服務,為您的知識庫交付活動日誌。
-
前往下一節,並遵循 中的步驟將資料來源連接至您的知識庫來設定資料來源。
-
在內嵌模型區段中,執行下列動作:
-
選擇內嵌模型,將您的資料轉換為向量內嵌。
-
(選用) 展開其他組態區段以查看下列組態選項 (並非所有模型都支援所有組態):
-
內嵌類型 – 是否要將資料轉換為浮點 (float32) 向量內嵌 (更精確但更昂貴) 或二進位向量內嵌 (更不精確但成本更低)。若要了解哪些內嵌模型支援二進位向量,請參閱支援的內嵌模型。
-
向量維度 – 較高的值可提高準確度,但會增加成本和延遲。
-
-
-
在向量資料庫區段中,執行下列動作:
-
選擇向量存放區,以存放將用於查詢的向量內嵌。您有下列選項:
-
快速建立新的向量存放區 – 選擇其中一個可用的向量存放區,供 Amazon Bedrock 建立。
-
Amazon OpenSearch Serverless – Amazon Bedrock 知識庫會建立 Amazon OpenSearch Serverless 向量搜尋集合和索引,並使用您所需的欄位進行設定。
-
Amazon Aurora PostgreSQL Serverless – Amazon Bedrock 會設定 Amazon Aurora PostgreSQL Serverless 向量存放區。此程序會從 Amazon S3 儲存貯體取得非結構化文字資料,將其轉換為文字區塊和向量,然後將它們存放在 PostgreSQL 資料庫中。如需詳細資訊,請參閱快速建立 Amazon Bedrock 的 Aurora PostgreSQL 知識庫。
-
Amazon Neptune Analytics – Amazon Bedrock 使用 Retrieval Augmented Generation (RAG) 技術與圖形結合,以增強生成式 AI 應用程式,讓使用者可以獲得更準確和全面的回應。
-
-
選擇您建立的向量存放區 – 選取支援的向量存放區,並在向量索引中識別向量欄位名稱和中繼資料欄位名稱。如需詳細資訊,請參閱適用於知識庫之自有向量存放區的先決條件。
注意
如果您的資料來源是 Confluence、Microsoft SharePoint 或 Salesforce 執行個體,則唯一支援的向量儲存服務是 Amazon OpenSearch Serverless。
-
-
(選用) 展開其他組態區段,並修改任何相關的組態。
-
-
如果您的資料來源包含映像,請指定 Amazon S3 URI,以將剖析器從多模式儲存目的地中擷取的映像存放在其中。您可以在查詢期間傳回映像。您也可以選擇性地選擇客戶受管金鑰,而非預設金鑰 AWS 受管金鑰 來加密您的資料。
注意
只有 Amazon S3 和自訂資料來源支援多模態資料。
-
選擇下一步並檢閱知識庫的詳細資訊。您可以在繼續和建立知識庫之前編輯任何區段。
注意
建立知識庫所需的時間取決於您的特定組態。當知識庫的建立完成時,知識庫的狀態會變更為就緒或可用狀態。
一旦知識庫準備就緒且可用,請第一次同步您的資料來源,並隨時將內容保持在最新狀態。在主控台中選取您的知識庫,然後在資料來源概觀區段中選取同步。
若要建立知識庫,請使用 Amazon Bedrock 建置時間端點的代理程式傳送 CreateKnowledgeBase 請求。
注意
如果您想要讓 Amazon Bedrock 為您建立和管理向量存放區,請使用 主控台。如需詳細資訊,請展開本主題中的使用主控台區段。
下列是必要欄位:
欄位 | 基本描述 |
---|---|
name | 知識庫的名稱 |
roleArn | Amazon Bedrock Knowledge Bases 服務角色的 ARN。 |
knowledgeBaseConfiguration | 包含知識庫的組態。請參閱下列詳細資訊。 |
storageConfiguration | (只有在您連線到非結構化資料來源時才需要)。 包含您選擇的資料來源服務的組態。 |
下列欄位為選用欄位:
欄位 | 使用案例 |
---|---|
description | 知識庫的說明。 |
clientToken | 為確保 API 請求僅完成一次。如需詳細資訊,請參閱確保等冪。 |
標籤 | 將標籤與流程建立關聯。如需詳細資訊,請參閱標記 Amazon Bedrock 資源。 |
在對應至 KnowledgeBaseConfiguration 物件的 knowledgeBaseConfiguration
欄位中,在 type
VECTOR
欄位中指定 ,並包含 VectorKnowledgeBaseConfiguration 物件。在 物件中,包含下列欄位:
-
embeddingModelArn
– 要使用的內嵌模型 ARN。 -
embeddingModelConfiguration
– 內嵌模型的組態。若要查看您可以為每個支援的模型指定的可能值,請參閱 Amazon Bedrock 知識庫支援的模型和區域。 -
(如果您計劃在知識庫中包含包含影像、圖形、圖表或資料表的多模態資料)
supplementalDataStorageConfiguration
– 映射到 SupplementalDataStorageLocation 物件,您可以在其中指定要存放擷取資料的 S3 位置。如需詳細資訊,請參閱資料來源的剖析選項。
在對應至 StorageConfiguration 物件的 storageConfiguration
欄位中,指定您計劃在 type
欄位中連接的向量存放區,並包含對應至該向量存放區的欄位。如需您需要提供的資訊詳細資訊,請參閱 StorageConfiguration 中的每個向量存放區組態類型。
以下顯示建立連線至 Amazon OpenSearch Serverless 集合之知識庫的範例請求。來自已連線資料來源的資料將轉換為使用 Amazon 的二進位向量內嵌,Titan Text Embeddings V2且剖析器擷取的多模態資料會設定為存放在名為 MyBucket
的儲存貯體中。
PUT /knowledgebases/ HTTP/1.1 Content-type: application/json { "name": "MyKB", "description": "My knowledge base", "roleArn": "arn:aws:iam::111122223333:role/service-role/AmazonBedrockExecutionRoleForKnowledgeBase_123", "knowledgeBaseConfiguration": { "type": "VECTOR", "vectorKnowledgeBaseConfiguration": { "embeddingModelArn": "arn:aws:bedrock:us-east-1::foundation-model/amazon.titan-embed-text-v2:0", "embeddingModelConfiguration": { "bedrockEmbeddingModelConfiguration": { "dimensions": 1024, "embeddingDataType": "BINARY" } }, "supplementalDataStorageConfiguration": { "storageLocations": [ { "s3Location": { "uri": "arn:aws:s3:::MyBucket" }, "type": "S3" } ] } } }, "storageConfiguration": { "opensearchServerlessConfiguration": { "collectionArn": "arn:aws:aoss:us-east-1:111122223333:collection/abcdefghij1234567890", "fieldMapping": { "metadataField": "metadata", "textField": "text", "vectorField": "vector" }, "vectorIndexName": "MyVectorIndex" } } }