本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立受管知識庫
當您建立受管知識庫時,Amazon Bedrock AgentCore 會為您管理儲存、索引和擷取基礎設施。根據預設,會使用服務管理的內嵌模型,不需要模型選擇或組態。您可以選擇性地提供自己的 Bedrock 內嵌模型。您也可以選擇性地提供 KMS 金鑰來加密受管向量存放區。
建立知識庫之後,請將其連接到資料來源並開始擷取。如需連接資料來源的詳細資訊,請參閱連接資料來源。若要同步資料來源,請使用 StartIngestionJob API。如需詳細資訊,請參閱將您的資料與您的 Amazon Bedrock 知識庫同步。
若要了解如何建立受管知識庫,請選擇您偏好方法的索引標籤:
- Console
-
建立受管知識庫
-
登入 AWS 管理主控台 並導覽至 Amazon Bedrock AgentCore > 內建工具 > 知識庫。
-
選擇建立受管知識庫。
-
(選用) 展開知識庫詳細資訊的其他組態區段,以設定下列項目:
-
在資料來源下,提供資料來源名稱。
-
從下拉式清單中選取您的資料來源類型:Amazon S3、Confluence、Custom、Google Drive、OneDrive、SharePoint 或 Web Crawler。
-
設定所選資料來源類型的資料來源連線設定。
-
(選用) 展開內容剖析和區塊,以設定下列項目:
-
剖析策略預設為受管剖析器。
-
從下拉式清單中選取文字區塊策略:
-
預設區塊 (建議):將文字分割為固定大小區塊。
-
固定大小區塊:將文字分割成您設定的近似字符大小。
-
無區塊:適用於預先處理或預先分割的文件。
-
(選用) 展開進階組態以設定進階索引。在內容索引下,預設 會從常見文件中為文字型內容編製索引。啟用其他模態的進階索引:
-
文件中的視覺內容:處理 .pdf、.docx、.ppt、.pptx 檔案中的內嵌視覺效果。
-
音訊檔案:處理 .mp3、.wav、.m4a、.flac、.ogg 檔案。
-
影片檔案:處理 .mp4、.mov、.m4v 檔案。
選擇性地設定檔案大小上限 (MB) 並設定文件刪除保護。
-
(選用) 設定日誌交付,將知識庫擷取日誌傳送至目的地,例如 CloudWatch Logs、Amazon S3 或 Firehose。
-
選擇建立知識庫。
-
等待知識庫和資料來源建立 (2-5 分鐘)。如果您使用客戶受管金鑰建立受管知識庫,則建立可能需要更長的時間。
- API
-
以下是使用 API 搭配 AWS CLI 或支援的 SDK 建立受管知識庫和設定資料來源的範例,例如 Python。呼叫 CreateKnowledgeBase 之後,您可以呼叫 CreateDataSource,在 dataSourceConfiguration 中使用連線資訊建立資料來源。
若要了解您可以透過包含選用 vectorIngestionConfiguration 欄位套用至擷取的自訂項目,請參閱自訂資料來源的擷取。
AWS Command Line Interface
步驟 1:建立知識庫
使用受管內嵌模型 (預設):
aws bedrock-agent create-knowledge-base \
--name "my-managed-kb" \
--role-arn "arn:aws:iam::123456789012:role/BedrockKBRole" \
--description "My managed knowledge base" \
--knowledge-base-configuration file://kb-config.json
kb-config.json
{
"type": "MANAGED",
"managedKnowledgeBaseConfiguration": {
"embeddingModelType": "MANAGED"
}
}
使用自訂內嵌模型 (客戶提供的 Bedrock 模型):
aws bedrock-agent create-knowledge-base \
--name "my-custom-embed-kb" \
--role-arn "arn:aws:iam::123456789012:role/BedrockKBRole" \
--description "My managed knowledge base with custom embedding" \
--knowledge-base-configuration file://kb-config.json
kb-config.json
{
"type": "MANAGED",
"managedKnowledgeBaseConfiguration": {
"embeddingModelType": "CUSTOM",
"embeddingModelArn": "arn:aws:bedrock:us-west-2::foundation-model/amazon.titan-embed-text-v2:0",
"embeddingModelConfiguration": {
"bedrockEmbeddingModelConfiguration": {
"dimensions": 1024
}
}
}
}
省略 embeddingModelType 時,預設為 MANAGED。使用 時MANAGED,您不得指定 embeddingModelArn或 embeddingModelConfiguration。使用 時CUSTOM,兩個欄位都是必要欄位。
步驟 2:建立資料來源
aws bedrock-agent create-data-source \
--name "S3-connector" \
--description "S3 data source connector for Amazon Bedrock to use content in S3" \
--knowledge-base-id "your-knowledge-base-id" \
--data-source-configuration file://bedrock-s3-managed-connector-configuration.json \
--data-deletion-policy "DELETE" \
--vector-ingestion-configuration '{"parsingConfiguration":{"parsingStrategy":"SMART_PARSING"}}'
bedrock-s3-managed-connector-configuration.json
{
"type": "MANAGED_KNOWLEDGE_BASE_CONNECTOR",
"managedKnowledgeBaseConnectorConfiguration": {
"mediaExtractionConfiguration": {
"imageExtractionConfiguration": {
"imageExtractionStatus": "ENABLED"
}
},
"connectorParameters": {
"type": "S3",
"version": "1",
"connectionConfiguration": {
"bucketName": "your-test-s3-bucket",
"bucketOwnerAccountId": "123456789012"
},
"deletionProtectionConfiguration": {
"enableDeletionProtection": false
}
}
}
}
內嵌模型選項
受管知識庫支援兩種內嵌模型類型:
您無法在建立知識庫後變更內嵌模型類型。若要在受管和自訂內嵌之間切換,您必須建立新的知識庫。
如果您使用自訂內嵌模型建立知識庫,則受管重新排名器不適用於該知識庫。若要使用 受管重新排名器,請使用預設受管內嵌模型建立您的知識庫。
支援的資料來源連接器
受管知識庫支援下列資料來源連接器:
-
Amazon S3
-
Confluence
-
Microsoft SharePoint
-
Google 雲端硬碟
-
Microsoft OneDrive
-
Web 編目程式
-
自訂連接器
如需設定資料來源連接器的資訊,請參閱連接資料來源。