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.
Amazon S3
Amazon S3 est un service de stockage d’objets qui stocke les données en tant qu’objets dans des compartiments. Vous pouvez connecter un compartiment Amazon S3 en tant que source de données pour votre base de connaissances gérée afin d'ingérer les objets que vous y stockez.
Fonctionnalités prises en charge
-
Documentez les champs de métadonnées via des fichiers de métadonnées distincts
-
Filtres de contenu d'inclusion et d'exclusion utilisant des modèles de fichiers et des préfixes de clé S3
-
Synchronisation incrémentielle du contenu ajouté, mis à jour et supprimé
-
Cross-account Accès au compartiment Amazon S3
-
Document-level contrôle d'accès (ACL), avec les fichiers ACL fournis par le client
Conditions préalables
Dans Amazon S3 :
-
Notez le nom du compartiment Amazon S3 et l'ID de AWS compte du propriétaire du compartiment. Le compartiment doit être un compartiment à usage général situé dans la même AWS région que votre base de connaissances, et vous devez être autorisé à y accéder.
-
Si le compartiment se trouve dans un AWS compte différent de celui de la base de connaissances, ou s'il est chiffré avec une clé KMS gérée par le client, configurez la politique du compartiment et (le cas échéant) la politique de clé KMS pour autoriser l'accès depuis votre rôle de service de base de connaissances. Consultez Politiques relatives aux compartiments pour les comptes et les accès KMS-encrypted.
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, consultezAutorisations d’accès aux sources de données.
Politiques relatives aux compartiments pour les comptes et les accès KMS-encrypted
Si votre compartiment Amazon S3 se trouve dans un AWS compte différent de celui de votre base de connaissances, ou s'il est chiffré à l'aide d'une clé KMS gérée par le client, ajoutez une politique basée sur les ressources pour accorder à votre rôle de service de base de connaissances l'accès au rôle de service. Les exemples suivants indiquent les instructions minimales requises.
Cross-account politique des compartiments
Dans le compte propriétaire du compartiment Amazon S3, ajoutez l'instruction suivante à la politique du compartiment. Remplacez-le kb-account-id par l'ID de compte sur lequel votre base de connaissances est créée, kb-service-role par le nom de votre rôle dans le service de base de connaissances et bucket-name par le nom de votre compartiment.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowBedrockKnowledgeBaseAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::kb-account-id:role/kb-service-role" }, "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::bucket-name", "arn:aws:s3:::bucket-name/*" ] } ] }
Pour des instructions plus générales, consultez la section Configuration de l'accès aux compartiments Amazon S3.
Politique de clé KMS pour les compartiments chiffrés
Si votre compartiment Amazon S3 est chiffré à l'aide d'une clé KMS gérée par le client, ajoutez l'instruction suivante à la politique de clé. Utilisez les mêmes espaces réservés que dans la politique relative aux compartiments entre comptes. Attendez quelques minutes pour que les principaux changements de politique se propagent.
{ "Sid": "AllowBedrockKnowledgeBaseKmsAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::kb-account-id:role/kb-service-role" }, "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Resource": "*" }
Ce "Resource": "*" champ s'applique à la clé à laquelle la politique est attachée.
Comment configurer une source de données Amazon S3
La configuration d'une source de données Amazon S3 implique les étapes suivantes :
-
Préparez votre seau. Confirmez le nom du compartiment, l'identifiant du compte et (pour l'accès entre comptes) la politique du compartiment. Si vous envisagez d'utiliser les métadonnées des documents, choisissez le préfixe Amazon S3 dans lequel se trouvent vos
.metadata.jsonfichiers. -
Connectez la source de données. Créez la source de données Amazon S3 dans la base de connaissances à l'aide de l'API Console de gestion AWS ou de l'API. Consultez Création de la source de données.
-
(Facultatif) Activez le contrôle d'accès au niveau du document. Filtrez les résultats des requêtes en fonction des autorisations utilisateur définies dans les fichiers ACL fournis par le client. Consultez Document-level contrôles d'accès.
Création de la source de données
Paramètres du connecteur
La configuration de la source de données utilise les paramètres de connecteur suivants. Pour vous connecter à Amazon S3, spécifiez S3 le type de connecteur dansconnectorParameters. Pour les champs encapsulés connectorParameters (tels que deletionProtectionConfiguration etmediaExtractionConfiguration), consultezConnexion d’une sources de données.
| Champ | Obligatoire | Description |
|---|---|---|
bucketName |
Oui | Le nom du compartiment Amazon S3. |
bucketOwnerAccountId |
Conditionnel | L'ID de AWS compte du propriétaire du bucket. Nécessaire pour l'accès entre comptes. |
| Champ | Obligatoire | Description |
|---|---|---|
inclusionPrefixes |
Non | Liste des préfixes de clé Amazon S3 à inclure (par exemple,documents/). |
exclusionPrefixes |
Non | Liste des préfixes de clé Amazon S3 à exclure (par exemple,archive/). |
inclusionPatterns |
Non | Liste d'expressions régulières. Seuls les objets dont les clés correspondent à au moins un schéma sont ingérés. |
exclusionPatterns |
Non | Liste d'expressions régulières. Les objets dont les clés correspondent à un modèle quelconque ne sont pas ingérés. |
maxFileSizeInMegaBytes |
Non | Taille maximale, en mégaoctets, de tout fichier ingéré par le connecteur. Fournissez-la sous forme de chaîne numérique (par exemple,"500"). La valeur par défaut est "500" . |
| Champ | Obligatoire | Description |
|---|---|---|
metadataFilesPrefix |
Non | Le préfixe Amazon S3 dans lequel les fichiers de métadonnées des documents (.metadata.json) sont stockés. |
aclEnabled |
Non | Réglez sur pour true activer le contrôle d'accès au niveau du document. Vous ne pouvez pas modifier ce paramètre après avoir créé la source de données. Pour en savoir plus, consultez Document-level contrôles d'accès. |
aclConfiguration |
Conditionnel | Contient globalAccessControlListS3Uri : l'URI Amazon S3 d'un fichier JSON qui associe les préfixes clés aux entrées de contrôle d'accès. Obligatoire quand aclEnabled c'est true ; ignoré quand aclEnabled c'estfalse. Consultez Document-level contrôles d'accès. |
Fichiers de métadonnées des documents
Vous pouvez joindre des métadonnées à chaque document en chargeant un fichier annexe à côté de celui-ci. Pour chaque document, créez un fichier nommé dans le même chemin Amazon S3. Le fichier de métadonnées ne doit pas dépasser 10 Ko. Par exemple, à côtéfilename.extension.metadata.jsonreport.pdf, téléchargez report.pdf.metadata.json avec le contenu suivant :
{ "metadataAttributes": { "company": { "value": { "type": "STRING", "stringValue": "BioPharm Innovations" } }, "created_date": { "value": { "type": "NUMBER", "numberValue": 20221205 } }, "author": { "value": { "type": "STRING", "stringValue": "Lisa Thompson" } } } }
Pour plus d'informations sur les types de données attributaires pris en charge et les opérateurs de filtrage que vous pouvez appliquer au moment de la requête, consultez la section Métadonnées et filtrage.