Vue d'ensemble
Dans les scénarios de recherche réels, les requêtes contiennent souvent des termes synonymes. Par exemple, vous pouvez souhaiter que les utilisateurs qui recherchent Cantonese trouvent également des informations liées au Yue Chinese. De même, une recherche pour Apple phone doit renvoyer du contenu incluant iPhone. En pratique, de nombreux mots peuvent exprimer la même signification, mais les utilisateurs les incluent rarement tous dans une seule requête. En étendant les requêtes pour inclure des synonymes, vous pouvez considérablement améliorer le taux de rappel. La fonctionnalité de configuration des synonymes étend les termes de la requête pour inclure leurs synonymes et récupère les documents contenant l'un des termes équivalents. Exemple : Le mot « sofa » a pour synonyme « couch ». Sans configuration des synonymes, une recherche pour « sofa » ne récupère pas les documents qui contiennent uniquement « couch ». Avec cette fonctionnalité activée, la recherche récupère également ces documents.
Procédure
1. Dans la console OpenSearch, accédez au volet de navigation de gauche. Sous Retrieval Configuration, cliquez sur Query Analysis Rule Configuration. Sélectionnez le nom de l'application et le type (en ligne/hors ligne) souhaités, puis cliquez sur Create.
2. Dans la boîte de dialogue Create Rule qui s'affiche, définissez l'application cible (type de moteur, nom de l'application et type d'application), saisissez un nom de règle, sélectionnez une plage d'index, choisissez un type d'industrie (tel que E-commerce Enhanced) et spécifiez une stratégie de réécriture de requête (telle que AND). Dans la zone de sélection des fonctionnalités, cochez synonym configuration et d'autres fonctionnalités requises (telles que stop word, spelling correction, term weight et entity recognition). Développez le panneau de configuration des synonymes, activez Template Usage (E-commerce General Synonym Model) et Dictionary Usage (dictionnaire intégré), sélectionnez un dictionnaire d'intervention si nécessaire, puis cliquez sur OK pour créer la règle.
Remarque : Si vous ne définissez pas de dictionnaire d'intervention, le système utilise son dictionnaire de synonymes par défaut. Si vous rencontrez des résultats incorrects dans votre cas d'utilisation spécifique, configurez un dictionnaire d'intervention comme décrit dans la section suivante.
3. Après avoir créé la règle, testez son effet :
Dans la liste d'analyse des requêtes, trouvez la règle de synonyme que vous avez créée (par exemple, test_tong) et cliquez sur Search Test dans sa colonne Actions. Sur la page Search Test, définissez la requête sur default:'KFC', la clause config sur start:0,hit:10,format:fulljson et le paramètre qp sur la règle d'analyse des requêtes que vous avez créée (par exemple, test_tong). Ensuite, cliquez sur Search. Au bas de la page, la requête réelle s'affiche sous la forme (((default:'kfc') OR (default:'kendeji'))). Cela indique que la fonctionnalité de synonyme a automatiquement étendu « KFC » à « kfc » et « kendeji ». Pour afficher le processus d'analyse des requêtes pour le terme de requête KFC, consultez la boîte de dialogue Query Analysis Process. Les étapes d'analyse sont effectuées dans l'ordre suivant : Spelling Correction (-), Normalization (kfc), Tokenization (kfc), Stop Word (-), Synonyms (kendeji kfc) et Category Prediction. La requête réécrite finale est (((default:'kfc') OR (default:'kendeji'))), ce qui confirme que l'expansion des synonymes a pris effet.
4. Après avoir confirmé que la règle fonctionne comme prévu, accédez à la page d'analyse des requêtes, passez à la vue Index Orientation, trouvez la règle cible et cliquez sur le bouton Set as Default. Cela la définit comme règle d'analyse des requêtes par défaut.
5. Après avoir défini une règle par défaut, l'interface se met à jour comme suit :
Un tag [Default] apparaît avant le nom de la règle, par exemple, [Default]test_tong (configuration des synonymes).
Dictionnaires d'intervention de synonymes
Les synonymes peuvent varier selon les différents scénarios métier. Le dictionnaire intégré peut manquer de certains synonymes ou en contenir d'incorrects pour votre cas d'utilisation. Pour résoudre ce problème, OpenSearch propose une fonctionnalité d'intervention qui vous permet de personnaliser les synonymes. Créez un dictionnaire d'intervention et associez-le à une règle d'analyse des requêtes pour contrôler la manière dont les synonymes sont étendus. Pour plus d'informations sur la configuration et l'utilisation d'un dictionnaire d'intervention, cliquez ici.