Configuration de la recherche neuronale et de la recherche hybride sur OpenSearch Serverless - Amazon OpenSearch Service

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.

Configuration de la recherche neuronale et de la recherche hybride sur OpenSearch Serverless

Recherche neuronale

Amazon OpenSearch Serverless prend en charge la fonctionnalité de recherche neurale pour les opérations de recherche sémantique sur vos données. Neural Search utilise des modèles d'apprentissage automatique pour comprendre le sens sémantique et le contexte de vos requêtes, fournissant ainsi des résultats de recherche plus pertinents que les recherches traditionnelles basées sur des mots clés. Cette section explique comment configurer Neural Search en mode OpenSearch Serverless, notamment les autorisations requises, les processeurs pris en charge et les principales différences par rapport à l' OpenSearch implémentation standard.

Avec Neural Search, vous pouvez effectuer une recherche sémantique sur vos données, en tenant compte du sens sémantique pour comprendre l'intention de vos requêtes de recherche. Cette fonctionnalité est alimentée par les composants suivants :

  • Processeur de pipeline d'ingestion de texte

  • Requête neuronale

  • Requête neuronale clairsemée

Avec la recherche hybride, vous pouvez améliorer la pertinence des recherches en combinant des fonctionnalités de recherche sémantique et de recherche par mots clés. Pour utiliser la recherche hybride, créez un pipeline de recherche qui traite les résultats de votre recherche et combine les scores des documents. Pour plus d'informations, consultez la section Pipelines de recherche sur le site Web de OpenSearch documentation. Utilisez les composants suivants pour implémenter la recherche hybride :

  • Processeur de pipeline de recherche de normalisation

    Techniques de normalisation prises en charge
    • min_max

    • l2

    Techniques de combinaison prises en charge
    • arithmetic_mean

    • geometric_mean

    • harmonic_mean

    Pour plus d'informations sur les techniques de normalisation et de combinaison, consultez la section Champs du corps de la demande sur le site Web de OpenSearchdocumentation.

  • Requête hybride

Requêtes neuronales et hybrides

Par défaut, OpenSearch calcule les scores des documents à l'aide de l' BM25algorithme Okapi basé sur des mots clés, qui fonctionne bien pour les requêtes de recherche contenant des mots clés. Neural Search propose de nouveaux types de requêtes pour les requêtes en langage naturel et la possibilité de combiner à la fois la recherche sémantique et la recherche par mots clés.

Exemple : neural
"neural": { "vector_field": { "query_text": "query_text", "query_image": "image_binary", "model_id": "model_id", "k": 100 } }

Pour plus d'informations, consultez la section Requête neurale sur le site Web de OpenSearch documentation.

Exemple : hybrid
"hybrid": { "queries": [ array of lexical, neural, or combined queries ] }

Pour plus d'informations, consultez la section Requête hybride sur le site Web de OpenSearch documentation.

Pour configurer les composants de recherche sémantique dans Amazon OpenSearch Serverless, suivez les étapes du didacticiel Neural Search sur le site Web de OpenSearch documentation. Gardez à l'esprit ces différences importantes :

  • OpenSearch Serverless ne prend en charge que les modèles distants. Vous devez configurer les connecteurs pour les modèles hébergés à distance. Il n'est pas nécessaire de déployer ou de supprimer des modèles distants. Pour plus d'informations, consultez Commencer à utiliser la recherche sémantique et hybride sur le site Web de OpenSearch documentation.

  • Attendez-vous à une latence pouvant atteindre 15 secondes lorsque vous effectuez une recherche dans votre index vectoriel ou lorsque vous recherchez des pipelines de recherche et d'ingestion récemment créés.

Configurer des autorisations

La recherche neurale en OpenSearch mode Serverless nécessite les autorisations suivantes. Pour de plus amples informations, veuillez consulter Autorisations de stratégies prises en charge.

Exemple : Politique de recherche neuronale
JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "NeuralSearch", "Effect": "Allow", "Action": [ "aoss:CreateIndex", "aoss:CreateCollection", "aoss:UpdateCollection", "aoss:DeleteIndex", "aoss:DeleteCollection" ], "Resource": "arn:aws:aoss:us-east-1:111122223333:collection/your-collection-name" } ] }
  • aoss : *Index — Crée un index vectoriel dans lequel les intégrations de texte sont stockées.

  • aoss : * CollectionItems — Crée des pipelines d'ingestion et de recherche.

  • aoss : * MLResource — Crée et enregistre des modèles d'intégration de texte.

  • aoss : APIAccess All — Permet d'accéder aux opérations de OpenSearch APIs recherche et d'ingestion.

Ce qui suit décrit les politiques d'accès aux données de collecte requises pour la recherche neuronale. Remplacez le placeholder values par vos informations spécifiques.

Exemple : Politique d'accès aux données
[ { "Description": "Create index permission", "Rules": [ { "ResourceType": "index", "Resource": ["index/collection_name/*"], "Permission": [ "aoss:CreateIndex", "aoss:DescribeIndex", "aoss:UpdateIndex", "aoss:DeleteIndex" ] } ], "Principal": [ "arn:aws:iam::account_id:role/role_name" ] }, { "Description": "Create pipeline permission", "Rules": [ { "ResourceType": "collection", "Resource": ["collection/collection_name"], "Permission": [ "aoss:CreateCollectionItems", "aoss:DescribeCollectionItems", "aoss:UpdateCollectionItems", "aoss:DeleteCollectionItems" ] } ], "Principal": [ "arn:aws:iam::account_id:role/role_name" ] }, { "Description": "Create model permission", "Rules": [ { "ResourceType": "model", "Resource": ["model/collection_name/*"], "Permission": ["aoss:CreateMLResources"] } ], "Principal": [ "arn:aws:iam::account_id:role/role_name" ] } ]