Conditions préalables à l’utilisation d’un magasin de vecteurs que vous avez créé pour 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.

Conditions préalables à l’utilisation d’un magasin de vecteurs que vous avez créé pour une base de connaissances

Vous stockez les vectorisations dans lesquelles vos documents sont convertis à l’aide d’un magasin de vecteurs. Amazon Bedrock Knowledge Bases prend en charge un flux de création rapide pour certains magasin de vecteurs. Par conséquent, si vous préférez qu’Amazon Bedrock crée automatiquement un index vectoriel pour vous dans l’un de ces magasins de vecteurs, ignorez cette condition préalable et passez à Création d’une base de connaissances en se connectant à une source de données dans Amazon Bedrock Knowledge Bases.

Si vous souhaitez stocker des vectorisations binaires au lieu des vectorisations à virgule flottante standard (float32), vous devez utiliser un magasin de vecteurs qui prend en charge les vecteurs binaires.

Note

Les clusters Amazon OpenSearch Serverless et Amazon OpenSearch Managed sont les seuls magasins de vecteurs qui prennent en charge le stockage de vecteurs binaires.

Vous pouvez configurer votre propre magasin de vecteurs pris en charge pour indexer la vectorisation de vos données. Vous créez des champs pour les données suivantes :

  • Champ pour les vecteurs générés à partir du texte de votre source de données par le modèle de vectorisation que vous avez choisi.

  • Champ pour les fragments de texte extraits des fichiers de votre source de données.

  • Champs pour les métadonnées des fichiers source gérés par Amazon Bedrock.

  • (Si vous utilisez une base de données Amazon Aurora et que vous souhaitez configurer le filtrage des métadonnées) Champs pour les métadonnées que vous associez à vos fichiers source. Si vous envisagez de configurer le filtrage dans d’autres magasins de vecteurs, il n’est pas nécessaire de configurer ces champs pour le filtrage.

Vous pouvez chiffrer des magasins de vecteurs tiers à l’aide d’une clé KMS. Pour plus d’informations, consultez Chiffrement des ressources des bases de connaissances.

Cliquez sur l’onglet correspondant au service de magasin de vecteurs vous permettant de créer votre index vectoriel.

Note

Votre choix de modèle de vectorisation et de dimensions vectorielles peut affecter les choix de magasins de vecteurs disponibles. Si vous n’êtes pas en mesure d’utiliser votre magasin de vecteurs préféré, choisissez des options compatibles avec le modèle de vectorisation et les dimensions vectorielles.

Amazon OpenSearch Serverless
  1. Pour configurer les autorisations et créer une collection de recherche vectorielle dans Amazon OpenSearch Serverless dans leAWS Management Console, suivez les étapes 1 et 2 de la section Utilisation des collections de recherche vectorielle dans le manuel Amazon OpenSearch Service Developer Guide. Tenez compte des éléments suivants lors de la configuration de votre collection :

    1. Donnez un nom et une description de votre choix à la collection.

    2. Pour rendre votre collection privée, sélectionnez Création standard dans la section Sécurité. Ensuite, dans la section Paramètres d’accès réseau, sélectionnez VPC comme Type d’accès et choisissez un point de terminaison de VPC. Pour plus d'informations sur la configuration d'un point de terminaison VPC pour une collection Amazon Serverless, consultez Access Amazon OpenSearch OpenSearch Serverless à l'aide d'un point de terminaison d'interface () AWS PrivateLink dans le manuel Amazon OpenSearch Service Developer Guide.

  2. Une fois la collection créée, notez l’ARN de la collection, qui vous est utile lorsque vous créez la base de connaissances.

  3. Dans le panneau de navigation de gauche, sélectionnez Collections sous Sans serveur. Sélectionnez ensuite votre collection de recherche vectorielle.

  4. Cliquez sur l’onglet Index. Choisissez ensuite Créer un index vectoriel.

  5. Dans la section Détails de l’index vectoriel, saisissez le nom de votre index dans le champ Nom de l’index vectoriel.

  6. Dans la section Champs vectoriels, choisissez Ajouter un champ vectoriel. Amazon Bedrock stocke les vectorisations pour votre source de données dans ce champ. Fournissez les configurations suivantes :

    • Nom du champ vectoriel : donnez un nom au champ (par exemple embeddings).

    • Moteur : moteur vectoriel utilisé pour la recherche. Sélectionnez faiss.

    • Dimensions : nombre de dimensions du vecteur. Consultez le tableau suivant pour déterminer le nombre de dimensions que le vecteur doit contenir :

      Modèle Dimensions
      Vectorisations Titan G1 - Texte 1 536
      Vectorisations Titan V2 - Texte 1 024, 512 et 256
      Cohere Embed version anglaise 1,024
      Cohere Embed version multilingue 1,024
    • Métrique de distance : métrique permettant de mesurer la similarité entre les vecteurs. Nous vous recommandons d’utiliser Euclidien pour les vectorisations à virgule flottante.

  7. Développez la section Gestion des métadonnées et ajoutez deux champs pour configurer l’index vectoriel afin de stocker des métadonnées supplémentaires qu’une base de connaissances pourra récupérer à l’aide de vecteurs. Le tableau suivant décrit les champs et les valeurs à spécifier pour chaque champ :

    Description du champ Champ de mappage Type de données Filtrable
    Amazon Bedrock fragmente le texte brut de vos données et stocke ces fragments dans ce champ. Nom de votre choix (par exemple text) String True
    Amazon Bedrock stocke les métadonnées relatives à votre base de connaissances dans ce champ. Nom de votre choix (par exemple bedrock-metadata) String False
  8. Notez les noms que vous avez choisis pour le nom d’index vectoriel, le nom de champ vectoriel et les noms de champs de mappage pour la gestion des métadonnées, qui vous sont utiles lorsque vous créez votre base de connaissances. Ensuite, choisissez Créer.

Une fois l’index vectoriel créé, vous pouvez créer votre base de connaissances. Le tableau suivant indique où vous allez saisir chaque information que vous avez notée :

Champ Champ correspondant dans la configuration de la base de connaissances (console) Champ correspondant dans la configuration de la base de connaissances (API) Description
ARN de la collection ARN de la collection collectionARN Amazon Resource Name (ARN) de la collection de recherche vectorielle.
Nom de l’index vectoriel Nom de l’index vectoriel vectorIndexName Nom de l’index vectoriel.
Nom du champ vectoriel Champ vectoriel vectorField Nom du champ dans lequel stocker les vectorisations pour vos sources de données.
Gestion des métadonnées (premier champ de mappage) Champ de texte textField Nom du champ dans lequel stocker le texte brut provenant de vos sources de données.
Gestion des métadonnées (deuxième champ de mappage) Champ de métadonnées géré par Bedrock metadataField Nom du champ dans lequel stocker les métadonnées gérées par Amazon Bedrock.

Pour une documentation plus détaillée sur la configuration d'un magasin vectoriel dans Amazon OpenSearch Serverless, consultez la section Utilisation des collections de recherche vectorielle dans le manuel Amazon OpenSearch Service Developer Guide.

Amazon OpenSearch Service Managed Clusters
Important
  1. Pour créer un domaine et un index vectoriel dans OpenSearch Cluster in theAWS Management Console, suivez les étapes décrites dans la section Création et gestion de domaines de OpenSearch service dans le manuel Amazon OpenSearch Service Developer Guide.

    Tenez compte des éléments suivants lors de la configuration de votre domaine :

    1. Donnez le nom de votre choix au domaine.

    2. Nous vous recommandons de commencer rapidement à créer votre domaine à l’aide de l’option Création facile.

      Note

      Cette option vous permet de bénéficier d’un domaine à faible débit. Si vous avez des charges de travail plus importantes qui nécessitent un débit plus élevé, choisissez l’option Création standard. Vous pourrez ajuster la capacité ultérieurement si nécessaire. Avec cette option, vous pouvez commencer avec la capacité la plus faible, qui pourra être modifiée ultérieurement si nécessaire.

    3. Pour Réseau, vous devez choisir Accès public. OpenSearch les domaines situés derrière un VPC ne sont pas pris en charge par votre base de connaissances.

    4. Pour Version, si vous utilisez des vectorisations binaires, Amazon Bedrock Knowledge Bases nécessite une version 2.16 ou ultérieure du moteur. En outre, une version 2.13 ou supérieure est requise pour créer un index k-nn. Pour plus d'informations, consultez K-NN Search dans le guide du développeur Amazon OpenSearch Service.

    5. Nous vous recommandons d’utiliser le Mode double pile.

    6. Nous vous recommandons d'activer le contrôle d'accès détaillé pour protéger les données de votre domaine et de contrôler davantage les autorisations qui accordent à votre rôle de service de base de connaissances l'accès au OpenSearch domaine et l'envoi de demandes.

    7. Conservez les valeurs par défaut pour tous les autres paramètres, puis choisissez Créer pour créer votre domaine.

  2. Une fois le domaine créé, cliquez dessus pour noter l’ARN du domaine et le Point de terminaison du domaine, qui vous sont utiles lorsque vous créez la base de connaissances.

  3. Après avoir créé le domaine, vous pouvez créer un index vectoriel en exécutant les commandes suivantes sur un OpenSearch tableau de bord ou en utilisant les commandes curl. Pour plus d’informations, consultez la documentation OpenSearch .

    Lors de l’exécution de la commande :

    • Donnez un nom au champ vectoriel (par exemple embeddings).

    • Assurez-vous que le vecteur utilisé pour la recherche est faiss. nmslib n’est pas pris en charge.

    • Consultez le tableau suivant pour déterminer le nombre de dimensions que le vecteur doit contenir :

      Note

      Le modèle Vectorisations Titan V2 - Texte prend en charge plusieurs dimensions. Il peut également être 256 ou 512.

      Modèle Dimensions
      Vectorisations Titan G1 - Texte 1 536
      Vectorisations Titan V2 - Texte 1 024, 512 et 256
      Cohere Embed version anglaise 1,024
      Cohere Embed version multilingue 1,024
    • Vous pouvez ajouter deux champs pour configurer l’index vectoriel afin de stocker des métadonnées supplémentaires qu’une base de connaissances pourra récupérer à l’aide de vecteurs. Le tableau suivant décrit les champs et les valeurs à spécifier pour chacun d’entre eux :

      Description du champ Champ de mappage
      Amazon Bedrock fragmente le texte brut de vos données et stocke ces fragments dans ce champ. Spécifié en tant qu’objet, par exemple, AMAZON_BEDROCK_TEXT_CHUNK.
      Amazon Bedrock stocke les métadonnées relatives à votre base de connaissances dans ce champ. Spécifié en tant qu’objet, par exemple, AMAZON_BEDROCK_METADATA.
    PUT /<index-name> { "settings": { "index": { "knn": true } }, "mappings": { "properties": { "<vector-name>": { "type": "knn_vector", "dimension": <embedding-dimension>, "data_type": "binary", # Only needed for binary embeddings "space_type": "l2" | "hamming", # Use l2 for float embeddings and hamming for binary embeddings "method": { "name": "hnsw", "engine": "faiss", "parameters": { "ef_construction": 128, "m": 24 } } }, "AMAZON_BEDROCK_METADATA": { "type": "text", "index": "false" }, "AMAZON_BEDROCK_TEXT_CHUNK": { "type": "text", "index": "true" } } } }
  4. Notez l’ARN et le point de terminaison du domaine, ainsi que les noms que vous avez choisis pour le nom d’index vectoriel, le nom de champ vectoriel et les noms de champs de mappage pour la gestion des métadonnées, qui vous sont utiles lorsque vous créez votre base de connaissances.

Une fois l’index vectoriel créé, vous pouvez créer votre base de connaissances. Le tableau suivant indique où vous allez saisir chaque information que vous avez notée :

Champ Champ correspondant dans la configuration de la base de connaissances (console) Champ correspondant dans la configuration de la base de connaissances (API) Description
ARN du domaine ARN du domaine domainARN Le nom de ressource Amazon (ARN) du OpenSearch domaine.
Point de terminaison du domaine Point de terminaison du domaine domainEndpoint Le point de terminaison pour se connecter au OpenSearch domaine.
Nom de l’index vectoriel Nom de l’index vectoriel vectorIndexName Nom de l’index vectoriel.
Nom du champ vectoriel Champ vectoriel vectorField Nom du champ dans lequel stocker les vectorisations pour vos sources de données.
Gestion des métadonnées (premier champ de mappage) Champ de texte textField Nom du champ dans lequel stocker le texte brut provenant de vos sources de données.
Gestion des métadonnées (deuxième champ de mappage) Champ de métadonnées géré par Bedrock metadataField Nom du champ dans lequel stocker les métadonnées gérées par Amazon Bedrock.
Amazon S3 Vectors

Amazon S3 Vectors fournit un magasin de vecteurs économique dans Amazon S3 qui permet de stocker et d’interroger des données vectorielles. Il fournit un stockage durable et élastique de grands jeux de données vectorielles avec des performances d’interrogation inférieures à la seconde. Amazon S3 Vectors est parfaitement adapté aux charges de travail d’interrogation peu fréquentes et permet de réduire les coûts en cas d’utilisation dans des applications de génération à enrichissement contextuel (RAG) et de recherche sémantique.

Amazon S3 Vectors introduit les compartiments vectoriels S3, qui contiennent des index vectoriels que vous pouvez interroger en fonction de leur signification sémantique et de leur similitude. Il permet de fournir des temps de réponse aux requêtes inférieurs à la seconde et réduire les coûts tout en stockant des données vectorielles à grande échelle, en y accédant et en les interrogeant sans allouer d’infrastructure. Dans un compartiment vectoriel, vous pouvez organiser vos données vectorielles dans des index vectoriels. Votre compartiment vectoriel peut comporter plusieurs index vectoriels. Pour plus d’informations, consultez Amazon S3 Vectors dans le Guide de l’utilisateur Amazon S3.

Note
  • Vous pouvez créer une base de connaissances pour les vecteurs Amazon S3 dans tous les Région AWS sites où Amazon Bedrock et Amazon S3 Vectors sont disponibles. Pour plus d’informations sur la disponibilité régionale d’Amazon S3 Vectors, consultez Amazon S3 Vectors dans le Guide de l’utilisateur Amazon S3.

  • Lorsque vous utilisez un nombre de jetons très élevé avec un découpage hiérarchique dans les bases de connaissances Amazon Bedrock, vous pouvez dépasser les limites de taille maximale des métadonnées, car les relations entre les fragments parent-enfant et le contexte hiérarchique sont stockés sous forme de métadonnées non filtrables dans les vecteurs Amazon S3. Pour plus d'informations sur les limites de taille des métadonnées par vecteur, consultez la section Limitations et restrictions du guide de l'utilisateur Amazon S3. Pour en savoir plus sur les stratégies de fragmentation, consultez Fonctionnement du découpage du contenu pour les bases de connaissances.

Prise en charge des métadonnées

Vous pouvez associer des métadonnées sous forme de paires clé-valeur à chaque vecteur. Par défaut, les métadonnées sont filtrables et peuvent être utilisées dans les requêtes de recherche de similarité pour filtrer en fonction de conditions telles que les dates, les catégories ou les préférences de l'utilisateur.

Vous pouvez également configurer les métadonnées pour qu'elles ne soient pas filtrables lors de la création de l'index vectoriel. Les index vectoriels Amazon S3 prennent en charge les types Chaîne, Booléen et Nombre.

Lorsque vous utilisez des vecteurs Amazon S3 avec les bases de connaissances Amazon Bedrock, vous pouvez joindre jusqu'à 1 Ko de métadonnées personnalisées (y compris des métadonnées filtrables et non filtrables) et 35 clés de métadonnées par vecteur. Pour plus d'informations sur les limites de taille des métadonnées par vecteur, consultez la section Limitations et restrictions du guide de l'utilisateur Amazon S3.

Si les métadonnées dépassent ces limites, la tâche d'ingestion génère une exception lors du remplissage de l'index vectoriel. Pour plus d’informations, consultez Amazon S3 Vectors dans le Guide de l’utilisateur Amazon S3.

Autorisations requises

Assurez-vous que votre politique IAM autorise Amazon Bedrock à accéder à votre index vectoriel dans le compartiment vectoriel S3. Pour plus d’informations sur les autorisations requises, consultez Création d’un rôle de service pour les bases de connaissances Amazon Bedrock.

Création d’un compartiment vectoriel S3 et d’un index vectoriel

Pour utiliser Amazon S3 Vectors avec votre base de connaissances, vous devez créer un compartiment vectoriel S3 et un index vectoriel. Vous pouvez créer un compartiment vectoriel et un index à l'aide de la console Amazon S3 ou du AWS SDK. AWS CLI Pour obtenir des instructions détaillées, consultez Création d’un index vectoriel dans le Guide de l’utilisateur Amazon S3.

Tenez compte des éléments suivants lors de la création de vos compartiment et index vectoriels dans la console Amazon S3.

  1. Lorsque vous créez votre compartiment vectoriel S3, tenez compte des éléments suivants.

    • Fournissez un nom de compartiment vectoriel unique.

    • (Facultatif) Amazon S3 chiffre automatiquement les données à l’aide du chiffrement par défaut côté serveur avec les clés gérées par Amazon S3 (SSE-S3). Vous pouvez choisir d'utiliser ce chiffrement par défaut ou le chiffrement côté serveur avec des clés du service de gestion des AWS clés (SSE-KMS) à la place.

      Note

      Le type de chiffrement ne peut pas être modifié une fois que le compartiment vectoriel a été créé.

      Pour step-by-step obtenir des instructions, consultez la section Chiffrement avec des clés AWS KMS.

  2. Une fois que vous avez créé le compartiment vectoriel S3, notez l’Amazon Resource Name (ARN) du compartiment vectoriel, qui vous est utile lorsque vous créez la base de connaissances.

  3. Choisissez le compartiment vectoriel que vous avez créé, puis créez un index vectoriel. Lorsque vous créez l’index vectoriel, tenez compte des éléments suivants.

    • Nom de l’index vectoriel : donnez un nom au champ (par exemple embeddings).

    • Dimensions : nombre de dimensions du vecteur. Ce nombre doit être compris entre 1 et 4 096. Consultez le tableau suivant pour déterminer le nombre de dimensions que le vecteur doit contenir en fonction de votre sélection du modèle de vectorisation :

      Modèle Dimensions
      Vectorisations Titan G1 - Texte 1 536
      Vectorisations Titan V2 - Texte 1 024, 512 et 256
      Cohere Embed version anglaise 1,024
      Cohere Embed version multilingue 1,024
    • Note

      Amazon S3 Vectors ne prend en charge que les vectorisations à virgule flottante. Les vectorisations binaires ne sont pas prises en charge.

      Métrique de distance : métrique permettant de mesurer la similarité entre les vecteurs. Vous pouvez utiliser Cosinus ou Euclidien.

  4. Développez les Paramètres supplémentaires et saisissez toutes les métadonnées non filtrables dans le champ Métadonnées non filtrables.

    Vous pouvez configurer jusqu’à 10 clés de métadonnées non filtrables. Choisissez Ajouter une clé, puis ajoutez AMAZON_BEDROCK_TEXT et AMAZON_BEDROCK_METADATA en tant que clés.

  5. Sous Chiffrement, choisissez Spécifier le type de chiffrement. Vous avez la possibilité d'utiliser les paramètres du bucket pour le chiffrement ou de remplacer les paramètres de chiffrement de l'index vectoriel. Si vous remplacez les paramètres au niveau du compartiment, vous avez la possibilité de spécifier le type de chiffrement pour l'index vectoriel : chiffrement côté serveur avec AWS des clés du service de gestion des clés (SSE-KMS) ou chiffrement côté serveur par défaut avec des clés gérées par Amazon S3 (SSE-S3). Pour plus d'informations sur la définition de la configuration du chiffrement pour les index vectoriels, consultez Protection des données et chiffrement dans Amazon S3 Vectors.

  6. Sous Tags (facultatif), vous pouvez ajouter des balises sous forme de paires clé-valeur afin de suivre et d'organiser les coûts des indices vectoriels à l'aide de AWS Billing and Cost Management. Saisissez une Key (Clé) et une Value (Valeur). Choisissez Add Tag (Ajouter une balise) pour ajouter une autre balise. Vous pouvez saisir jusqu'à 50 balises pour un index vectoriel. Pour plus d'informations, consultez la section Utilisation de balises avec les index vectoriels Amazon S3.

  7. Créez l’index vectoriel et notez l’Amazon Resource Name (ARN) de l’index vectoriel, qui vous est utile lorsque vous créez la base de connaissances.

Création d’une base de connaissances pour le compartiment vectoriel S3

Après avoir rassemblé ces informations, vous pouvez créer votre base de connaissances. Lorsque vous créez votre base de connaissances avec le compartiment vectoriel S3, vous devez fournir l’ARN du compartiment vectoriel et de l’index vectoriel. L’index vectoriel stockera les vectorisations générées à partir de vos sources de données. Le tableau suivant récapitule l’endroit où vous allez saisir chaque information :

Champ Champ correspondant dans la configuration de la base de connaissances (console) Champ correspondant dans la configuration de la base de connaissances (API) Description
ARN du compartiment vectoriel ARN du compartiment vectoriel S3 vectorBucketArn Amazon Resource Name (ARN) de votre compartiment vectoriel S3.
ARN de l’index vectoriel ARN de l’index vectoriel S3 vectorIndexARN Amazon Resource Name (ARN) de l’index vectoriel pour votre compartiment vectoriel S3.
Amazon Aurora (RDS)
  1. Créez un cluster de bases de données (DB) Amazon Aurora, un schéma et une table en suivant les étapes décrites sous Utilisation d’Aurora PostgreSQL comme base de connaissances. Lorsque vous créez la table, configurez-la avec les colonnes et types de données suivants. Vous pouvez utiliser des noms de colonne de votre choix au lieu de ceux indiqués dans le tableau suivant. Notez les noms de colonne que vous choisissez afin de pouvoir les fournir lors de la configuration de la base de connaissances.

    Vous devez renseigner ces champs avant de créer la base de connaissances. Ils ne peuvent pas être mis à jour une fois la base de connaissances créée.

    Important

    Le cluster Aurora doit résider dans le même emplacement Compte AWS que celui dans lequel la base de connaissances a été créée pour Amazon Bedrock.

    Nom de la colonne Type de données Champ correspondant dans la configuration de la base de connaissances (console) Champ correspondant dans la configuration de la base de connaissances (API) Description
    id Clé primaire UUID Clé primaire primaryKeyField Contient des identifiants uniques pour chaque enregistrement.
    embedding Vecteur Champ vectoriel vectorField Contient les vectorisations des sources de données.
    chunks Texte Champ de texte textField Contient les fragments de texte brut provenant de vos sources de données.
    metadata JSON Champ de métadonnées géré par Bedrock metadataField Contient les métadonnées nécessaires pour effectuer l’attribution de la source et pour permettre l’ingestion et l’interrogation des données
    custom_metadata JSONB Champ de métadonnées personnalisées customMetadataField Champ facultatif qui indique la colonne dans laquelle Amazon Bedrock écrira toutes les informations des fichiers de métadonnées provenant de vos sources de données.
  2. Vous devez créer un index sur le vecteur des colonnes et le texte pour vos champs de texte et de vectorisation. Si vous utilisez le champ de métadonnées personnalisées, vous devez également créer un index GIN sur cette colonne. Les index GIN permettent de rechercher efficacement des paires clé-valeur dans des documents jsonb à des fins de filtrage des métadonnées. Pour plus d’informations, consultez indexation jsonb dans la documentation PostgreSQL.

    Nom de la colonne Création d’un index dessus Obligatoire ?
    embedding CREATE INDEX ON bedrock_integration.bedrock_kb USING hnsw (embedding vector_cosine_ops); Oui
    chunks CREATE INDEX ON bedrock_integration.bedrock_kb USING gin (to_tsvector('simple', chunks)); Oui
    custom metadata CREATE INDEX ON bedrock_integration.bedrock_kb USING gin (custom_metadata); Uniquement si vous avez créé la colonne de métadonnées personnalisées.
    Note

    Pour améliorer la précision et la latence des recherches hybrides avec du contenu en anglais, pensez à utiliser le dictionnaire « anglais » au lieu du dictionnaire « simple » :

    CREATE INDEX ON bedrock_integration.bedrock_kb USING gin (to_tsvector('english', chunks));
  3. (Facultatif) Si vous avez ajouté des métadonnées à vos fichiers à des fins de filtrage, nous vous recommandons de fournir le nom de colonne dans le champ de métadonnées personnalisées afin de stocker toutes vos métadonnées dans une seule colonne. Lors de l’ingestion de données, cette colonne est renseignée avec toutes les informations contenues dans les fichiers de métadonnées provenant de vos sources de données. Si vous choisissez de renseigner ce champ, vous devez créer un index GIN sur cette colonne.

    Note

    Si vous utilisez fréquemment des filtres de plage sur des métadonnées numériques, créez un index pour la clé concernée afin d’optimiser les performances. Par exemple, si vous utilisez des filtres tels que "lessThan": { "key": "year", "value": 1989 }, créez un index d’expression sur la clé year. Pour plus d’informations, consultez Index sur des expressions dans la documentation PostgreSQL.

    CREATE INDEX ON your_table ((custom_metadata->>'year')::double precision

    Sinon, si vous ne fournissez pas ce nom de champ, vous pouvez créer une colonne pour chaque attribut de métadonnées de vos fichiers et spécifier le type de données (texte, nombre ou booléen). Par exemple, si l’attribut genre existe dans votre source de données, vous devez ajouter une colonne nommée genre et spécifier text comme type de données. Lors de l’ingestion de données, ces colonnes distinctes sont renseignées avec les valeurs d’attribut correspondantes.

  4. Configurez un AWS Secrets Manager secret pour votre cluster de base de données Aurora en suivant les étapes décrites dans Gestion des mots de passe avec Amazon Aurora et AWS Secrets Manager.

  5. Notez les informations suivantes après avoir créé votre cluster de bases de données et configuré le secret :

    Champ dans la configuration de la base de connaissances (console) Champ dans la configuration de la base de connaissances (API) Description
    ARN du cluster de bases de données Amazon Aurora resourceArn ARN du cluster de bases de données.
    Nom de la base de données databaseName Nom de la base de données.
    Nom de la table tableName Nom de la table dans le cluster de bases de données
    ARN du secret credentialsSecretArn L'ARN de la AWS Secrets Manager clé pour votre cluster de base de données
Neptune Analytics graphs (GraphRAG)
  1. Pour créer un graphique et un magasin de vecteurs dans l’analytique Neptune dans la AWS Management Console, suivez les étapes décrites sous Indexation vectorielle dans l’analytique Neptune dans le Guide de l’utilisateur de l’analytique Neptune.

    Note

    Pour utiliser Neptune GraphRAG, créez un graphique d’analytique Neptune vide avec un index de recherche vectorielle. L’index de recherche vectorielle peut être créé seulement si le graphique est créé. Lorsque vous créez un graphique d’analytique Neptune dans la console, vous spécifiez la dimension de l’index dans les Paramètres de recherche vectorielle vers la fin du processus.

    Tenez compte des éléments suivants lors de la création du graphique :

    1. Donnez le nom de votre choix au graphique.

    2. Sous Source de données, choisissez Créer un graphique vide et spécifiez le nombre de m- NCUs à allouer. Chaque m-NCU possède une capacité de mémoire d’environ un GiB, ainsi que des capacités de calcul et de mise en réseau correspondantes.

      Note

      La capacité de votre graphique peut être modifiée ultérieurement. Nous vous recommandons de commencer par la plus petite instance, puis d’en choisir une autre, si nécessaire.

    3. Vous pouvez conserver les paramètres de connectivité réseau par défaut. Amazon Bedrock créera une connexion réseau avec le graphique d’analytique Neptune auquel vous associez la base de connaissances. Il n’est pas nécessaire de configurer la connectivité publique ou les points de terminaison privés pour votre graphique.

    4. Sous Paramètres de recherche vectorielle, choisissez Utiliser la dimension vectorielle et spécifiez le nombre de dimensions de chaque vecteur.

      Note

      Le nombre de dimensions de chaque vecteur doit correspondre aux dimensions vectorielles du modèle de vectorisation. Consultez le tableau suivant pour déterminer le nombre de dimensions que le vecteur doit contenir :

      Modèle Dimensions
      Vectorisations Titan G1 - Texte 1 536
      Vectorisations Titan V2 - Texte 1 024, 512 et 256
      Cohere Embed version anglaise 1,024
      Cohere Embed version multilingue 1,024
    5. Conservez les valeurs par défaut pour tous les autres paramètres et créez le graphique.

  2. Une fois le graphique créé, cliquez dessus pour noter l’ARN de la ressource et les Dimensions vectorielles, qui vous sont utiles lorsque vous créez la base de connaissances. Lorsque vous choisissez le modèle de vectorisation dans Amazon Bedrock, veillez à choisir un modèle ayant les mêmes dimensions que les Dimensions vectorielles que vous avez configurées sur votre graphique d’analytique Neptune.

Une fois l’index vectoriel créé, vous pouvez créer votre base de connaissances. Le tableau suivant indique où vous allez saisir chaque information que vous avez notée :

Champ Champ correspondant dans la configuration de la base de connaissances (console) Champ correspondant dans la configuration de la base de connaissances (API) Description
ARN du graphique ARN du graphique d’analytique Neptune graphARN Amazon Resource Name (ARN) du graphique d’analytique Neptune.
Gestion des métadonnées (premier champ de mappage) Nom du champ de texte textField Nom du champ dans lequel stocker le texte brut provenant de vos sources de données. Vous pouvez fournir toute valeur pour ce champ, par exemple texte.
Gestion des métadonnées (deuxième champ de mappage) Champ de métadonnées géré par Bedrock metadataField Nom du champ dans lequel stocker les métadonnées gérées par Amazon Bedrock. Vous pouvez fournir toute valeur pour ce champ, par exemple métadonnées.
Pinecone
Note

Si vous l'utilisezPinecone, vous acceptez d'autoriser l'accès AWS à la source tierce désignée en votre nom afin de vous fournir des services de boutique vectorielle. Vous êtes tenu de respecter toutes les conditions tierces applicables pour l’utilisation et le transfert de données à partir du service tiers.

Pour obtenir une documentation détaillée sur la configuration d’un magasin de vecteurs dans Pinecone, consultez Pinecone comme base de connaissances pour Amazon Bedrock.

Lorsque vous configurez le magasin de vecteurs, notez les informations suivantes, que vous renseignerez lors de la création d’une base de connaissances :

  • URL du point de terminaison : URL du point de terminaison de la page de gestion d’index.

  • ARN secret des informations d'identification : nom de ressource Amazon (ARN) du secret que vous avez créé et AWS Secrets Manager qui contient le nom d'utilisateur et le mot de passe d'un utilisateur de base de données.

  • (Facultatif) Clé KMS gérée par le client pour l’ARN du secret des informations d’identification : si vous avez chiffré l’ARN du secret des informations d’identification, fournissez la clé KMS afin qu’Amazon Bedrock puisse le déchiffrer.

  • Espace de noms : (Facultatif) espace de noms permettant d’écrire de nouvelles données dans votre base de données. Pour plus d’informations, consultez Utilisation d’espaces de noms.

Vous devez fournir des configurations supplémentaires lors de la création d’un index Pinecone :

  • Nom du champ de texte : nom du champ dans lequel Amazon Bedrock doit stocker les fragments de texte brut.

  • Nom du champ de métadonnées : nom du champ dans lequel Amazon Bedrock doit stocker les métadonnées d’attribution de la source.

Pour accéder à votre index Pinecone, vous devez fournir la clé d’API Pinecone à Amazon Bedrock via AWS Secrets Manager.

Pour définir un secret pour votre configuration Pinecone
  1. Suivez les étapes décrites dans Créer un AWS Secrets Manager secret, en définissant la clé apiKey et la valeur comme clé d'API pour accéder à votre Pinecone index.

  2. Pour trouver votre clé d’API, ouvrez la console Pinecone et sélectionnez Clés d’API.

  3. Après avoir créé le secret, prenez note de l’ARN de la clé KMS.

  4. Associez des autorisations à votre fonction du service pour déchiffrer l’ARN de la clé KMS en suivant les étapes décrites dans Autorisations permettant de déchiffrer un AWS Secrets Manager secret pour le magasin de vecteurs contenant votre base de connaissances.

  5. Ultérieurement, lorsque vous créerez votre base de connaissances, entrez l’ARN dans le champ ARN du secret des informations d’identification.

Redis Enterprise Cloud
Note

Si vous l'utilisezRedis Enterprise Cloud, vous acceptez d'autoriser l'accès AWS à la source tierce désignée en votre nom afin de vous fournir des services de boutique vectorielle. Vous êtes tenu de respecter toutes les conditions tierces applicables pour l’utilisation et le transfert de données à partir du service tiers.

Pour obtenir une documentation détaillée sur la configuration d’un magasin de vecteurs dans Redis Enterprise Cloud, consultez Intégration de Redis Enterprise Cloud à Amazon Bedrock.

Lorsque vous configurez le magasin de vecteurs, notez les informations suivantes, que vous renseignerez lors de la création d’une base de connaissances :

  • URL du point de terminaison : URL du point de terminaison public de votre base de données.

  • Nom de l’index vectoriel : nom de l’index vectoriel de votre base de données.

  • Champ vectoriel : champ dans lequel les vectorisations seront stockées. Consultez le tableau suivant pour déterminer le nombre de dimensions que le vecteur doit contenir :

    Modèle Dimensions
    Vectorisations Titan G1 - Texte 1 536
    Vectorisations Titan V2 - Texte 1 024, 512 et 256
    Cohere Embed version anglaise 1,024
    Cohere Embed version multilingue 1,024
  • Champ de texte : nom du champ dans lequel Amazon Bedrock stocke les fragments de texte brut.

  • Champ de métadonnées géré par Bedrock : nom du champ dans lequel Amazon Bedrock stocke les métadonnées relatives à votre base de connaissances.

Pour accéder au cluster Redis Enterprise Cloud, vous devez fournir votre configuration de sécurité Redis Enterprise Cloud à Amazon Bedrock via AWS Secrets Manager.

Pour définir un secret pour votre configuration Redis Enterprise Cloud
  1. Activez TLS pour utiliser la base de données avec Amazon Bedrock en suivant les étapes décrites sous Transport Layer Security (TLS).

  2. Suivez les étapes décrites dans la section Créer un AWS Secrets Manager secret. Configurez les clés suivantes avec les valeurs appropriées de la configuration Redis Enterprise Cloud dans le secret :

    • username : nom d’utilisateur pour accéder à votre base de données Redis Enterprise Cloud. Pour trouver votre nom d’utilisateur, consultez la section Sécurité de votre base de données dans la console Redis.

    • password : mot de passe pour accéder à votre base de données Redis Enterprise Cloud. Pour trouver votre mot de passe, consultez la section Sécurité de votre base de données dans la console Redis.

    • serverCertificate : contenu du certificat délivré par l’autorité de certification Redis Cloud. Téléchargez le certificat de serveur depuis la console d’administration Redis en suivant les étapes de la section Télécharger les certificats.

    • clientPrivateKey : clé privée du certificat délivré par l’autorité de certification Redis Cloud. Téléchargez le certificat de serveur depuis la console d’administration Redis en suivant les étapes de la section Télécharger les certificats.

    • clientCertificate : clé publique du certificat délivré par l’autorité de certification Redis Cloud. Téléchargez le certificat de serveur depuis la console d’administration Redis en suivant les étapes de la section Télécharger les certificats.

  3. Après avoir créé le secret, prenez note de son ARN. Ultérieurement, lorsque vous créerez votre base de connaissances, entrez l’ARN dans le champ ARN secret des informations d’identification.

MongoDB Atlas
Note

Si vous utilisez MongoDB Atlas, vous acceptez d'autoriser l'accès AWS à la source tierce désignée en votre nom afin de vous fournir des services de boutique vectorielle. Vous êtes tenu de respecter toutes les conditions tierces applicables pour l’utilisation et le transfert de données à partir du service tiers.

Pour obtenir une documentation détaillée sur la configuration d’un magasin de vecteurs dans MongoDB Atlas, consultez Lancement d’un flux de travail RAG entièrement géré avec MongoDB Atlas et Amazon Bedrock.

Lorsque vous configurez le magasin de vecteurs, notez les informations suivantes, que vous renseignerez lors de la création d’une base de connaissances :

  • URL du point de terminaison : URL du point de terminaison de votre cluster MongoDB Atlas.

  • Nom de la base de données : nom de la base de données de votre cluster MongoDB Atlas.

  • Nom de la collection : nom de la collection dans votre base de données.

  • ARN secret des informations d'identification : nom de ressource Amazon (ARN) du secret que vous avez créé et AWS Secrets Manager qui contient le nom d'utilisateur et le mot de passe d'un utilisateur de base de données dans votre cluster MongoDB Atlas. Le secret doit contenir les clés nommées username et password.

  • (Facultatif) Clé KMS gérée par le client pour l’ARN du secret des informations d’identification : si vous avez chiffré l’ARN du secret des informations d’identification, fournissez la clé KMS afin qu’Amazon Bedrock puisse le déchiffrer.

Vous devez fournir des configurations supplémentaires à des fins de Mappage des champs lors de la création d’un index MongoDB Atlas :

  • Nom de l’index vectoriel : nom de l’index de recherche vectorielle MongoDB Atlas de votre collection.

  • Nom du champ vectoriel : nom du champ dans lequel Amazon Bedrock doit stocker les vectorisations.

  • Nom du champ de texte : nom du champ dans lequel Amazon Bedrock doit stocker les fragments de texte brut.

  • Nom du champ de métadonnées : nom du champ dans lequel Amazon Bedrock doit stocker les métadonnées d’attribution de la source.

  • (Facultatif) Nom de l’index de recherche de texte : nom de l’index de recherche MongoDB Atlas de votre collection.

Important

Si vous envisagez d’utiliser le filtrage des métadonnées avec votre base de connaissances MongoDB Atlas, vous devez configurer manuellement les filtres dans votre index vectoriel. Le filtrage des métadonnées ne fonctionne pas par défaut et nécessite un paramétrage supplémentaire dans la configuration de votre index vectoriel MongoDB Atlas.

(Facultatif) Pour qu'Amazon Bedrock se connecte à votre cluster MongoDB Atlas, consultez le flux de travail AWS PrivateLink RAG avec MongoDB Atlas à l'aide d'Amazon Bedrock.