View a markdown version of this page

Creare una knowledge base gestita - Amazon Bedrock

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Creare una knowledge base gestita

Quando crei una knowledge base gestita, Amazon Bedrock AgentCore gestisce l'infrastruttura di archiviazione, indicizzazione e recupero per te. Per impostazione predefinita, viene utilizzato un modello di incorporamento gestito dal servizio e non è richiesta alcuna selezione o configurazione del modello. È invece possibile fornire facoltativamente il proprio modello di incorporamento Bedrock. È inoltre possibile fornire facoltativamente una chiave KMS per la crittografia dell'archivio vettoriale gestito.

Dopo aver creato la knowledge base, connettila a una fonte di dati e avvia l'inserimento. Per informazioni dettagliate sulla connessione di un'origine dati, consulta Connettere un'origine dati. Per sincronizzare un'origine dati, utilizza l'StartIngestionJobAPI. Per informazioni dettagliate, vedi Sincronizzare i dati con Knowledge Base per Amazon Bedrock.

Nota

Dopo aver creato e sincronizzato una knowledge base gestita, utilizza l'RetrieveAPI per interrogarla. Nel retrievalConfiguration campo, specificamanagedSearchConfiguration. Il vectorSearchConfiguration campo si applica solo alle knowledge base personalizzate. Per esempi di richieste e considerazioni aggiuntive, vedereInterrogare una knowledge base e recuperare dei dati.

Per scoprire come creare una knowledge base gestita, scegli la scheda corrispondente al tuo metodo preferito:

Console
Per creare una knowledge base gestita
  1. Accedi Console di gestione AWS e vai ad Amazon Bedrock AgentCore > Built-in strumenti > Knowledge Base.

  2. Scegli Crea una Knowledge Base gestita.

  3. (Facoltativo) Espandi la sezione relativa alle configurazioni aggiuntive della Knowledge Base per configurare quanto segue:

    • Aggiungere una descrizione.

    • Scegli un tipo di modello di incorporamento:

      • Gestito (impostazione predefinita): viene utilizzato un modello di incorporamento gestito dal servizio. Non è richiesta alcuna selezione o configurazione del modello.

      • Personalizzato: seleziona un modello di incorporamento Bedrock. Scegli il modello per aprire il selettore del modello, che mostra i fornitori e i modelli disponibili (Amazon, Cohere).

      • Modello di incorporamento multimodale personalizzato: seleziona un modello di incorporamento multimodale. Attualmente è supportato solo TwelveLabs Marengo Embed 3.0. Questo modello elabora in modo nativo file di immagini, audio e video. Quando scegli questo modello, devi fornire anche una destinazione di archiviazione multimodale, il bucket Amazon S3 utilizzato per l'elaborazione e l'acquisizione dei contenuti multimodali. Amazon Bedrock Knowledge Bases crea una cartella con prefisso all'interno del bucket per un facile accessoaws/. Per ulteriori informazioni, consulta Elaborazione multimodale nativa.

    • Configura le autorizzazioni IAM: scegli Crea e utilizza un nuovo ruolo di servizio (consigliato) o seleziona un ruolo esistente.

    • Configura la AWS KMS crittografia per l'archivio vettoriale AWS gestito (chiave gestita per impostazione predefinita o seleziona una chiave KMS personalizzata).

  4. In Fonte dati, fornisci un nome per l'origine dati.

  5. Seleziona il tipo di origine dati dal menu a discesa: Amazon S3, Confluence, Custom, Google Drive o Web OneDrive Crawler SharePoint.

  6. Configura le impostazioni di connessione all'origine dati per il tipo di origine dati selezionato.

  7. (Facoltativo) Espandi l'analisi e la suddivisione dei contenuti per configurare quanto segue:

    • La strategia di analisi è impostata su Managed parser per impostazione predefinita.

    • Seleziona una strategia di suddivisione del testo dal menu a discesa:

      • Suddivisione in blocchi predefinita (consigliata): divide il testo in blocchi di dimensioni fisse.

      • Fixed-size suddivisione in blocchi: divide il testo nella dimensione approssimativa del token impostata.

      • Nessuna suddivisione in blocchi: per documenti preelaborati o presuddivisi.

  8. (Facoltativo) Espandi le configurazioni avanzate per configurare l'indicizzazione avanzata. In Indicizzazione dei contenuti, l'impostazione predefinita indicizza i contenuti testuali provenienti da documenti comuni. Abilita l'indicizzazione avanzata per modalità aggiuntive:

    • Contenuto visivo nei documenti: elabora file di immagine autonomi (.png, .jpg, .jpeg, .jpe, .tif, .tiff, .gif, .bmp, .webp, .svg, .jp2, .heic) e immagini incorporate nei file .pdf, .docx, .ppt, .pptx.

    • File audio: elabora file .mp3, .wav, .m4a, .flac, .ogg.

    • File video: elabora file .mp4, .mov, .m4v.

    Facoltativamente, imposta una dimensione massima del file (MB) e configura la protezione dall'eliminazione dei documenti.

  9. (Facoltativo) Configura la distribuzione dei log per inviare i log di ingestione della knowledge base a una destinazione come CloudWatch Logs, Amazon S3 o Firehose.

  10. Scegli Crea Knowledge Base.

  11. Attendi la creazione della knowledge base e dell'origine dati (2—5 minuti). Se crei una knowledge base gestita con una chiave gestita dal cliente, la creazione potrebbe richiedere più tempo.

API

Di seguito è riportato un esempio di creazione di una knowledge base gestita e configurazione dell'origine dati utilizzando l'API con l'SDK AWS CLI o supportato, come Python. Dopo la chiamata CreateKnowledgeBase, si chiama CreateDataSource per creare l'origine dati contenente le informazioni di connessione. dataSourceConfiguration

Per informazioni sulle personalizzazioni che è possibile applicare all’importazione includendo il campo vectorIngestionConfiguration opzionale, consulta Personalizzare l’importazione per un’origine dati.

AWS Command Line Interface

Fase 1: Creare la knowledge base

Con un modello di incorporamento gestito (predefinito):

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" } }

Con un modello di incorporamento personalizzato (modello Bedrock fornito dal cliente):

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 } } } }
Nota

Quando embeddingModelType viene omesso, il valore predefinito è. MANAGED Quando si utilizzaMANAGED, non è necessario specificare o. embeddingModelArn embeddingModelConfiguration Quando si utilizzaCUSTOM, entrambi i campi sono obbligatori.

Con un modello di incorporamento multimodale personalizzato (): TwelveLabs Marengo Embed 3.0

Un modello di incorporamento multimodale utilizza lo stesso CUSTOM embeddingModelType modello di incorporamento del testo. La differenza è che bedrockEmbeddingModelConfiguration accetta un modelConfiguration campo aggiuntivo, in cui si trasmettono le impostazioni specifiche del modello, e che è necessario specificare un supplementalDataStorageConfiguration campo per la destinazione di archiviazione multimodale.

aws bedrock-agent create-knowledge-base \ --name "my-multimodal-embed-kb" \ --role-arn "arn:aws:iam::123456789012:role/BedrockKBRole" \ --description "My managed knowledge base with multimodal embedding" \ --knowledge-base-configuration file://kb-config.json kb-config.json { "type": "MANAGED", "managedKnowledgeBaseConfiguration": { "embeddingModelType": "CUSTOM", "embeddingModelArn": "arn:aws:bedrock:us-east-1::foundation-model/twelvelabs.marengo-embed-3-0-v1:0", "embeddingModelConfiguration": { "bedrockEmbeddingModelConfiguration": { "embeddingDataType": "FLOAT", "modelConfiguration": { "version": "1", "audio": { "segmentation": { "method": "dynamic", "dynamic": { "minDurationSec": 4 } } }, "video": { "segmentation": { "method": "fixed", "fixed": { "durationSec": 6 } } } } } }, "supplementalDataStorageConfiguration": { "storageLocations": [ { "s3Location": { "uri": "s3://amzn-s3-demo-bucket" }, "type": "S3" } ] } } }

Il modelConfiguration campo è un oggetto JSON i cui contenuti sono specifici del modello di incorporamento scelto. Il version campo è obbligatorio e deve essere impostato su. 1 Per ciascuna delle audio video modalità, è possibile impostare una segmentation method delle due modalitàdynamic, che assume un minDurationSec valorefixed, oppure una modalità che assume un durationSec valore. Per le impostazioni che TwelveLabs Marengo Embed 3.0 accettano, vedereTwelveLabs Marengo Embed 3.0.

Nota

È necessario fornire un supplementalDataStorageConfiguration quando si utilizza il TwelveLabs Marengo Embed 3.0 modello.

Fase 2: Creare una fonte di dati

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 } } } }

Incorporamento delle opzioni del modello

Le knowledge base gestite supportano i seguenti tipi di modelli di incorporamento:

  • Incorporamento gestito (impostazione predefinita): viene utilizzato automaticamente un modello di incorporamento gestito dal servizio. Non è necessario selezionare un modello, configurare le dimensioni o gestire i limiti del servizio Bedrock per l'incorporamento. Il servizio gestisce la selezione, l'hosting e il ridimensionamento del modello in modo trasparente.

  • Incorporamento personalizzato: fornisci il tuo modello di incorporamento Bedrock ARN. Quando si utilizza un modello di incorporamento personalizzato, è necessario specificare le dimensioni del modello (1024) e il tipo di dati di incorporamento float32. Sono supportati i seguenti modelli di incorporamento Bedrock:

    • Embedding di testo Amazon Titan V2

    • Cohere Embed English v3

    • Cohere Embed multilingue v3

    • Cohere Embed v4

    • Incorporamenti multimodali Amazon Nova

  • Incorporamento multimodale personalizzato: fornisci l'ARN di un modello di incorporamento multimodale, che elabora in modo nativo file di immagini, audio e video oltre al testo. Attualmente, TwelveLabs Marengo Embed 3.0 (twelvelabs.marengo-embed-3-0-v1:0) è l'unico modello di incorporamento multimodale supportato. Questa opzione richiede una destinazione di archiviazione multimodale.

Nota

Non è possibile modificare il tipo di modello di incorporamento dopo aver creato la knowledge base. Per passare dall'incorporamento gestito a quello personalizzato e viceversa, è necessario creare una nuova knowledge base.

Importante

Se si crea una knowledge base con un modello di incorporamento personalizzato, il reranker gestito non è disponibile per tale knowledge base. Per utilizzare il reranker gestito, crea la tua knowledge base con il modello di incorporamento gestito predefinito.

Connettori di origine dati supportati

Le knowledge base gestite supportano i seguenti connettori di origine dati:

  • Simple Storage Service (Amazon S3)

  • Box

  • Confluence Cloud

  • Centro dati Confluence

  • Microsoft Online SharePoint

  • Google Drive

  • Microsoft OneDrive

  • ServiceNow

  • crawler web

  • Connettore personalizzato

Per informazioni sulla configurazione dei connettori delle origini dati, vedi Connettere un'origine dati.