Création d’une 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.

Création d’une base de connaissances

Note

Vous ne pouvez pas créer une base de connaissances avec un utilisateur root. Connectez-vous avec un utilisateur IAM avant de commencer ces étapes.

Après avoir configuré votre source de données dans Amazon S3 et le magasin vectoriel de votre choix, vous pouvez créer une base de connaissances. Sélectionnez l'onglet correspondant à la méthode de votre choix et suivez les étapes.

Console
Pour créer une base de connaissances
  1. Connectez-vous à la AWS Management Console console Amazon Bedrock et ouvrez-la à l'adresse https://console.aws.amazon.com/bedrock/.

  2. Dans le volet de navigation de gauche, sélectionnez Base de connaissances.

  3. Dans la section Bases de connaissances, sélectionnez Créer une base de connaissances.

  4. Sur la page de détails de la base de connaissances Provide, configurez les configurations suivantes :

    1. (Facultatif) Dans la section Détails de la base de connaissances, modifiez le nom par défaut et fournissez une description de votre base de connaissances.

    2. Dans la section Autorisations IAM, choisissez un rôle AWS Identity and Access Management (IAM) qui autorise Amazon Bedrock à accéder à d'autres services. AWS Vous pouvez laisser Amazon Bedrock créer le rôle de service ou choisir un rôle personnalisé que vous avez créé.

    3. (Facultatif) Ajoutez des balises à votre base de connaissances. Pour plus d’informations, consultez Balisage des ressources.

    4. Sélectionnez Suivant.

  5. Sur la page Configurer la source de données, fournissez les informations relatives à la source de données à utiliser pour la base de connaissances :

    1. (Facultatif) Modifiez le nom de la source de données par défaut.

    2. Sélectionnez Compte courant ou Autre compte pour l'emplacement de la source de données

    3. Indiquez l'URI S3 de l'objet contenant les fichiers de la source de données que vous avez préparée. Si vous sélectionnez Autre compte, vous devrez peut-être mettre à jour la politique de compartiment Amazon S3 de l'autre compte, la politique clé d'AWS KMS et le rôle de base de connaissances du compte actuel.

      Note

      Choisissez un compartiment Amazon S3 situé dans la même région que la base de connaissances que vous créez. Dans le cas contraire, votre source de données ne sera pas synchronisée.

    4. Si vous avez chiffré vos données Amazon S3 avec une clé gérée par le client, sélectionnez Ajouter une AWS KMS clé gérée par le client pour les données Amazon S3 et choisissez une clé KMS pour permettre à Amazon Bedrock de les déchiffrer. Pour plus d’informations, consultez Chiffrement des informations transmises à Amazon OpenSearch Service.

    5. (Facultatif) Pour configurer les paramètres avancés suivants, développez la section Paramètres avancés - facultatif.

      1. Lors de la conversion de vos données en éléments intégrés, Amazon Bedrock chiffre vos données à l'aide d'une clé qui les AWS possède et les gère par défaut. Pour utiliser votre propre clé KMS, développez les paramètres avancés, sélectionnez Personnaliser les paramètres de chiffrement (avancés) et choisissez une clé. Pour plus d’informations, consultez Chiffrement du stockage des données transitoires lors de l’ingestion de données.

      2. Choisissez l'une des options suivantes pour la stratégie de segmentation de votre source de données :

        • Segmentation par défaut : par défaut, Amazon Bedrock divise automatiquement vos données sources en segments, de sorte que chaque bloc contienne au maximum 300 jetons. Si un document contient moins de 300 jetons, il n’est pas segmenté davantage.

        • Segmentation à taille fixe : Amazon Bedrock divise vos données sources en segments de la taille approximative que vous avez définie. Configurez les options suivantes.

          • Nombre maximum de jetons : Amazon Bedrock crée des segments dont le nombre ne dépasse pas le nombre de jetons que vous avez choisi.

          • Pourcentage de chevauchement entre les segments : chaque segment se chevauche à des segments consécutifs selon le pourcentage que vous choisissez.

        • Pas de segmentation : Amazon Bedrock traite chaque fichier comme un seul segment. Si vous choisissez cette option, vous souhaiterez peut-être prétraiter vos documents en les divisant en fichiers distincts.

        Note

        Vous ne pourrez pas modifier la stratégie de segmentation une fois que vous aurez créé la source de données.

      3. Choisissez l'une des options suivantes pour la politique de suppression des données de votre source de données :

        • Supprimer : Supprime toutes les données sous-jacentes appartenant à la source de données du magasin vectoriel lors de la suppression d'une base de connaissances ou d'une ressource de source de données. Notez que le magasin vectoriel lui-même n'est pas supprimé, seules les données sous-jacentes sont supprimées. Ce drapeau est ignoré si un AWS compte est supprimé.

        • Conserver : conserve toutes les données sous-jacentes dans votre magasin vectoriel lors de la suppression d'une base de connaissances ou d'une ressource de source de données.

    6. Sélectionnez Suivant.

  6. Dans la section Modèle d'intégration, choisissez un modèle d'intégration pris en charge pour convertir vos données en intégrations vectorielles pour la base de connaissances.

  7. Dans la section Base de données vectorielle, choisissez l'une des options suivantes pour stocker les intégrations vectorielles pour votre base de connaissances :

    • Créez rapidement une nouvelle boutique vectorielle : Amazon Bedrock crée pour vous une collection de recherche vectorielle Amazon OpenSearch Serverless. Avec cette option, une collection de recherche vectorielle publique et un index vectoriel sont mis en place pour vous avec les champs obligatoires et les configurations nécessaires. Une fois la collection créée, vous pouvez la gérer dans la console Amazon OpenSearch Serverless ou via l' AWS API. Pour plus d'informations, consultez la section Utilisation des collections de recherche vectorielle dans le manuel Amazon OpenSearch Service Developer Guide. Si vous sélectionnez cette option, vous pouvez éventuellement activer les paramètres suivants :

      1. Pour activer les répliques actives redondantes, afin que la disponibilité de votre magasin vectoriel ne soit pas compromise en cas de défaillance de l'infrastructure, sélectionnez Activer la redondance (répliques actives).

        Note

        Nous vous recommandons de laisser cette option désactivée pendant que vous testez votre base de connaissances. Lorsque vous êtes prêt à passer en production, nous vous recommandons d'activer les répliques actives redondantes. Pour plus d'informations sur la tarification, voir Tarification pour les applications OpenSearch sans serveur

      2. Pour chiffrer le magasin vectoriel automatisé à l'aide d'une clé gérée par le client, sélectionnez Ajouter une clé KMS gérée par le client pour le vecteur Amazon OpenSearch Serverless — facultatif, puis choisissez la clé. Pour plus d’informations, consultez Chiffrement des informations transmises à Amazon OpenSearch Service.

    • Sélectionnez un magasin de vecteurs que vous avez créé : sélectionnez le service qui contient une base de données vectorielle que vous avez déjà créée. Remplissez les champs pour permettre à Amazon Bedrock de mapper les informations de la base de connaissances avec votre base de données, afin qu'il puisse stocker, mettre à jour et gérer les intégrations. Pour plus d'informations sur la façon dont ces champs sont mappés aux champs que vous avez créés, consultezConfigurez un index vectoriel pour votre base de connaissances dans un magasin de vecteurs compatible.

      Note

      Si vous utilisez une base de données dans Amazon OpenSearch Serverless, Amazon Aurora ou MongoDB Atlas, vous devez au préalable configurer les champs sous Field mapping. Si vous utilisez une base de données dans Pinecone ouRedis Enterprise Cloud, vous pouvez fournir des noms pour ces champs ici et Amazon Bedrock les créera dynamiquement dans la boutique vectorielle pour vous.

  8. Sélectionnez Suivant.

  9. Sur la page Vérifier et créer, vérifiez la configuration et les détails de la base de connaissances. Choisissez Modifier dans la section que vous souhaitez modifier. Lorsque vous êtes satisfait, sélectionnez Créer la base de connaissances.

  10. Le temps nécessaire pour créer la base de connaissances dépend de la quantité de données que vous avez fournies. Lorsque la création de la base de connaissances est terminée, le statut de la base de connaissances passe à Prêt.

API

Pour créer une base de connaissances, envoyez une CreateKnowledgeBasedemande à un point de terminaison Agents for Amazon Bedrock au moment de la création et fournissez le nom, la description, les instructions indiquant ce qu'il doit faire et le modèle de base avec lequel il doit être orchestré.

Note

Si vous préférez laisser Amazon Bedrock créer et gérer une boutique vectorielle pour vous dans Amazon OpenSearch Service, utilisez la console. Pour plus d’informations, consultez Création d’une base de connaissances.

  • Donnez à l’ARN les autorisations nécessaires pour créer une base de connaissances dans le champ roleArn.

  • Indiquez le modèle d’intégration à utiliser dans le champ embeddingModelArn de l’objet knowledgeBaseConfiguration.

  • Fournissez la configuration du stockage vectoriel dans l’objet storageConfiguration. Pour plus d’informations, consultez Configurez un index vectoriel pour votre base de connaissances dans un magasin de vecteurs compatible.

    • Pour une base OpenSearch de données Amazon Service, utilisez l'opensearchServerlessConfigurationobjet.

    • Pour une Pinecone base de données, utilisez l'pineconeConfigurationobjet.

    • Pour une Redis Enterprise Cloud base de données, utilisez l'redisEnterpriseCloudConfigurationobjet.

    • Pour une base de données Amazon Aurora, utilisez l'rdsConfigurationobjet.

    • Pour une base de données MongoDB Atlas, utilisez l'mongodbConfigurationobjet.

Après avoir créé une base de connaissances, créez une source de données à partir du compartiment S3 contenant les fichiers de votre base de connaissances. Pour créer la source de données, envoyez une CreateDataSourcedemande.

  • Fournissez les informations relatives au compartiment S3 contenant les fichiers de source de données dataSourceConfiguration sur le terrain.

  • Spécifiez comment segmenter les sources de données vectorIngestionConfiguration sur le terrain. Pour plus d’informations, consultez Configuration d'une source de données pour votre base de connaissances.

    Note

    Vous ne pouvez pas modifier la configuration du découpage après avoir créé la source de données.

  • Indiquez le dataDeletionPolicy pour votre source de données. Vous pouvez accéder à DELETE toutes les données sous-jacentes appartenant à la source de données depuis le magasin vectoriel lors de la suppression d'une base de connaissances ou d'une ressource de source de données. Notez que le magasin vectoriel lui-même n'est pas supprimé, seules les données sous-jacentes sont supprimées. Ce drapeau est ignoré si un AWS compte est supprimé. Vous pouvez accéder à RETAIN toutes les données sous-jacentes de votre magasin vectoriel lors de la suppression d'une base de connaissances ou d'une ressource de source de données.

  • (Facultatif) Lors de la conversion de vos données en éléments intégrés, Amazon Bedrock chiffre vos données à l'aide d'une clé qui les AWS possède et les gère par défaut. Pour utiliser votre propre clé KMS, incluez-la dans l'serverSideEncryptionConfigurationobjet. Pour plus d’informations, consultez Chiffrement des ressources des bases de connaissances.

Configurez des configurations de sécurité pour votre base de connaissances

Après avoir créé une base de connaissances, vous devrez peut-être configurer les configurations de sécurité suivantes :

Définissez des politiques d'accès aux données pour votre base de connaissances

Si vous utilisez un rôle personnalisé, configurez des configurations de sécurité pour votre nouvelle base de connaissances. Si vous laissez Amazon Bedrock créer un rôle de service pour vous, vous pouvez ignorer cette étape. Suivez les étapes indiquées dans l’onglet correspondant à la base de données que vous avez configurée.

Amazon OpenSearch Serverless

Pour restreindre l'accès à la collection Amazon OpenSearch Serverless au rôle de service de base de connaissances, créez une politique d'accès aux données. Vous pouvez le faire de différentes manières :

Appliquez la politique d'accès aux données suivante, en spécifiant la collection Amazon OpenSearch Serverless et votre rôle de service :

[ { "Description": "${data access policy description}", "Rules": [ { "Resource": [ "index/${collection_name}/*" ], "Permission": [ "aoss:DescribeIndex", "aoss:ReadDocument", "aoss:WriteDocument" ], "ResourceType": "index" } ], "Principal": [ "arn:aws:iam::${account-id}:role/${kb-service-role}" ] } ]
Pinecone, Redis Enterprise Cloud or MongoDB Atlas

Pour intégrer un index vectoriel MongoDB Atlas PineconeRedis Enterprise Cloud, associez la politique basée sur l'identité suivante à votre rôle de service de base de connaissances afin de lui permettre d'accéder au AWS Secrets Manager secret de l'index vectoriel.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "bedrock:AssociateThirdPartyKnowledgeBase" ], "Resource": "*", "Condition": { "StringEquals": { "bedrock:ThirdPartyKnowledgeBaseCredentialsSecretArn": "arn:aws:iam::${region}:${account-id}:secret:${secret-id}" } } }] }

Configurez des politiques d'accès réseau pour votre base de connaissances Amazon OpenSearch Serverless

Si vous utilisez une collection Amazon OpenSearch Serverless privée pour votre base de connaissances, elle n'est accessible que via un point de terminaison AWS PrivateLink VPC. Vous pouvez créer une collection Amazon OpenSearch Serverless privée lorsque vous configurez votre collection vectorielle Amazon OpenSearch Serverless ou vous pouvez rendre privée une collection Amazon OpenSearch Serverless existante (y compris une collection créée pour vous par la console Amazon Bedrock) lorsque vous configurez sa politique d'accès au réseau.

Les ressources suivantes du manuel Amazon OpenSearch Service Developer Guide vous aideront à comprendre la configuration requise pour une collection Amazon OpenSearch Serverless privée :

Pour permettre à une base de connaissances Amazon Bedrock d'accéder à une collection privée Amazon OpenSearch Serverless, vous devez modifier la politique d'accès réseau de la collection Amazon OpenSearch Serverless afin d'autoriser Amazon Bedrock en tant que service source. Sélectionnez l'onglet correspondant à la méthode de votre choix et suivez les étapes.

Console
  1. Ouvrez la console Amazon OpenSearch Service à l'adresse https://console.aws.amazon.com/aos/.

  2. Dans le volet de navigation de gauche, sélectionnez Collections. Choisissez ensuite votre collection.

  3. Dans la section Réseau, sélectionnez la politique associée.

  4. Choisissez Modifier.

  5. Pour Sélectionner la méthode de définition des politiques, effectuez l'une des opérations suivantes :

    • Laissez Select policy definition method comme éditeur visuel et configurez les paramètres suivants dans la section Règle 1 :

      1. (Facultatif) Dans le champ Nom de la règle, entrez le nom de la règle d'accès au réseau.

      2. Sous Accéder aux collections depuis, sélectionnez Privé (recommandé).

      3. Sélectionnez l'accès privé au AWS service. Dans la zone de texte, entrezbedrock.amazonaws.com.

      4. Désélectionnez Activer l'accès aux OpenSearch tableaux de bord.

    • Choisissez JSON et collez la politique suivante dans l'éditeur JSON.

      [ { "AllowFromPublic": false, "Description":"${network access policy description}", "Rules":[ { "ResourceType": "collection", "Resource":[ "collection/${collection-id}" ] }, ], "SourceServices":[ "bedrock.amazonaws.com" ] } ]
  6. Choisissez Mettre à jour.

API

Pour modifier la politique d'accès au réseau de votre collection Amazon OpenSearch Serverless, procédez comme suit :

  1. Envoyez une GetSecurityPolicydemande avec un point de terminaison OpenSearch sans serveur. Spécifiez name la politique et spécifiez le type commenetwork. Notez le policyVersion dans la réponse.

  2. Envoyez une UpdateSecurityPolicydemande avec un point de terminaison OpenSearch sans serveur. Spécifiez au minimum les champs suivants :

    Champ Description
    name Nom de la politique.
    Version de la politique Ils vous ont été policyVersion renvoyés suite à la GetSecurityPolicy réponse.
    type Type de stratégie de sécurité. Spécifiez network.
    politique La politique à utiliser. Spécifiez l'objet JSON suivant
    [ { "AllowFromPublic": false, "Description":"${network access policy description}", "Rules":[ { "ResourceType": "collection", "Resource":[ "collection/${collection-id}" ] }, ], "SourceServices":[ "bedrock.amazonaws.com" ] } ]

Pour un AWS CLI exemple, voir Création de politiques d'accès aux données (AWS CLI).

  • Utilisez la console Amazon OpenSearch Service en suivant les étapes de la section Création de politiques réseau (console). Au lieu de créer une politique réseau, notez la politique associée dans la sous-section Réseau des détails de la collecte.