Connexion à Amazon S3 pour votre base de connaissances - Amazon Bedrock

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Connexion à Amazon S3 pour votre base de connaissances

Amazon S3 est un service de stockage d’objets qui stocke les données en tant qu’objets dans des compartiments. Vous pouvez vous connecter à votre compartiment Amazon S3 pour accéder à votre base de connaissances Amazon Bedrock en utilisant la console de AWS gestion d'Amazon Bedrock ou l'CreateDataSourceAPI (voir Amazon Bedrock pris en charge SDKs et). AWS CLI

Support de contenu multimodal

Les sources de données Amazon S3 prennent en charge le contenu multimodal, notamment les images, les fichiers audio et vidéo. Pour des conseils complets sur l'utilisation de contenus multimodaux, voirCréation d'une base de connaissances pour le contenu multimodal.

Vous pouvez charger un petit lot de fichiers dans un compartiment Amazon S3 via l’API ou la console Amazon S3. Vous pouvez également l'utiliser AWS DataSyncpour télécharger plusieurs fichiers sur S3 en continu et transférer des fichiers selon un calendrier depuis un site, un périphérique, un autre cloud ou un système AWS de stockage.

Actuellement, seuls les compartiments S3 à usage général sont pris en charge.

Il existe des limites au nombre de fichiers et de Mo par fichier pouvant être indexés. Consultez Quotas pour les bases de connaissances.

Fonctionnalités prises en charge

  • Champs de métadonnées des documents

  • Préfixes d’inclusion

  • Synchronisation incrémentielle du contenu ajouté, mis à jour et supprimé

Conditions préalables

Dans Amazon S3 :

  • Assurez-vous de noter l’URI du compartiment Amazon S3, l’Amazon Resource Name (ARN) et l’ID du compte AWS du propriétaire du compartiment. Vous trouverez l’URI et l’ARN dans la section des propriétés de la console Amazon S3. Votre compartiment doit se trouver dans la même région que votre base de connaissances Amazon Bedrock. Vous devez avoir l’autorisation d’accéder au compartiment.

Dans votre AWS compte, assurez-vous de :

  • Incluez les autorisations nécessaires pour vous connecter à votre source de données dans votre role/permissions politique Gestion des identités et des accès AWS (IAM) pour votre base de connaissances. Pour plus d'informations sur les autorisations requises pour que cette source de données soit ajoutée à votre IAM rôle dans la base de connaissances, consultez la section Autorisations d'accès aux sources de données.

Note

Si vous utilisez la console, le IAM rôle doté de toutes les autorisations requises peut être créé pour vous dans le cadre des étapes de création d'une base de connaissances. Une fois votre source de données configurée et les autres configurations effectuées, le rôle IAM possédant toutes les autorisations requises est appliqué à votre base de connaissances spécifique.

Configuration de la connexion

Afin de vous connecter à votre compartiment Amazon S3, vous devez fournir les informations de configuration nécessaires pour qu’Amazon Bedrock puisse accéder à vos données et les indexer. Vous devez également respecter les Conditions préalables.

Un exemple de configuration pour cette source de données est inclus dans cette section.

Pour plus d’informations sur les filtres d’inclusion, les champs de métadonnées des documents, la synchronisation incrémentielle et leur fonctionnement, développez les sections suivantes :

Vous pouvez inclure un fichier distinct qui spécifie les métadonnées du document fields/attributes pour chaque fichier de votre source de données Amazon S3 et indique s'il convient de les inclure dans les intégrations lors de l'indexation de la source de données dans le magasin vectoriel. Par exemple, vous pouvez créer un fichier au format suivant, le nommer fileName.extension.metadata.json et le télécharger dans votre compartiment S3.

{ "metadataAttributes": { "company": { "value": { "type": "STRING", "stringValue": "BioPharm Innovations" }, "includeForEmbedding": true }, "created_date": { "value": { "type": "NUMBER", "numberValue": 20221205 }, "includeForEmbedding": true }, "author": { "value": { "type": "STRING", "stringValue": "Lisa Thompson" }, "includeForEmbedding": true }, "origin": { "value": { "type": "STRING", "stringValue": "Overview" }, "includeForEmbedding": true } } }

Le fichier de métadonnées doit porter le même nom que le fichier du document source associé, avec .metadata.json ajouté à la fin du nom du fichier. Il doit être stocké dans la même dossier ou au même emplacement que le fichier source dans votre compartiment Amazon S3. Sa taille ne doit pas dépasser la limite de 10 Ko. Pour plus d'informations sur les types de attribute/field données pris en charge et les opérateurs de filtrage que vous pouvez appliquer à vos champs de métadonnées, voir Métadonnées et filtrage.

Vous pouvez spécifier un préfixe d’inclusion, qui est un préfixe de chemin Amazon S3, dans lequel vous pouvez utiliser un fichier ou un dossier S3 au lieu de l’intégralité du compartiment pour créer le connecteur de source de données S3.

Le connecteur de source de données analyse le contenu nouveau, modifié et supprimé chaque fois que votre source de données se synchronise avec votre base de connaissances. Amazon Bedrockpeut utiliser le mécanisme de votre source de données pour suivre les modifications de contenu et explorer le contenu modifié depuis la dernière synchronisation. Lorsque vous synchronisez votre source de données avec votre base de connaissances pour la première fois, l’ensemble du contenu est indexé par défaut.

Pour synchroniser votre source de données avec votre base de connaissances, utilisez l'StartIngestionJobAPI ou sélectionnez votre base de connaissances dans la console et sélectionnez Synchroniser dans la section de présentation de la source de données.

Important

Toutes les données que vous synchronisez à partir de votre source de données sont accessibles à toute personne disposant des autorisations bedrock:Retrieve pour récupérer les données. Cela peut également inclure toutes les données dont les autorisations de source de données sont contrôlées. Pour plus d’informations, consultez Autorisations de la base de connaissances.

Console
Pour connecter un compartiment Amazon S3 pour à base de connaissances
  1. Suivez les étapes décrites dans Création d’une base de connaissances en se connectant à une source de données dans Amazon Bedrock Knowledge Bases et choisissez Amazon S3 comme source de données.

  2. Indiquez un nom pour la source de données.

  3. Spécifiez si le compartiment Amazon S3 se trouve dans votre AWS compte actuel ou dans un autre AWS compte. Votre compartiment doit se trouver dans la même région que votre base de connaissances.

  4. (Facultatif) Si le compartiment Amazon S3 est chiffré avec une clé KMS, incluez la clé. Pour plus d’informations, consultez Autorisations pour déchiffrer votre AWS KMS clé pour vos sources de données dans Amazon S3.

  5. (Facultatif) Dans la section Analyse et découpage du contenu, vous pouvez personnaliser le mode d’analyse et de découpage de vos données. Consultez les ressources suivantes pour en savoir plus sur ces personnalisations :

  6. Dans la section Paramètres avancés, vous pouvez éventuellement configurer les éléments suivants :

    • Clé KMS pour le stockage de données transitoires — Vous pouvez chiffrer les données transitoires tout en les convertissant en données intégrées à l'aide de la clé KMS par défaut Clé gérée par AWS ou de votre propre clé. Pour de plus amples informations, veuillez consulter Chiffrement du stockage des données transitoires lors de l’ingestion de données.

    • Politique de suppression des données : vous pouvez supprimer les vectorisations de votre source de données qui sont stockées dans le magasin de vecteurs par défaut, ou choisir de conserver les données du magasin de vecteurs.

  7. Continuez en choisissant un modèle de vectorisation et un magasin de vecteurs. Pour voir les étapes restantes, revenez à Création d’une base de connaissances en se connectant à une source de données dans Amazon Bedrock Knowledge Bases et poursuivez après avoir connecté votre source de données.

API

Voici un exemple de configuration pour connecter votre base de connaissances Amazon Bedrock à Amazon S3. Vous configurez votre source de données à l'aide de l'API avec le SDK compatible AWS CLI ou compatible, tel que Python. Après avoir appelé CreateKnowledgeBase, vous appelez CreateDataSourcepour créer votre source de données avec vos informations de connexiondataSourceConfiguration.

Pour en savoir plus sur les personnalisations que vous pouvez appliquer à l’ingestion en incluant le champ facultatif vectorIngestionConfiguration, consultez Personnalisation de l’ingestion pour une source de données.

AWS Command Line Interface

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://s3-bedrock-connector-configuration.json \ --data-deletion-policy "DELETE" \ --vector-ingestion-configuration '{"chunkingConfiguration":{"chunkingStrategy":"FIXED_SIZE","fixedSizeChunkingConfiguration":{"maxTokens":100,"overlapPercentage":10}}}' s3-bedrock-connector-configuration.json { "s3Configuration": { "bucketArn": "arn:aws:s3:::bucket-name", "bucketOwnerAccountId": "000000000000", "inclusionPrefixes": [ "documents/" ] }, "type": "S3" }