Tous les produits
Search
Centre de documentation

OpenSearch:Analyseurs personnalisés

Dernière mise à jour :Aug 10, 2026

Présentation

L'analyse lexicale impacte directement les performances de recherche. La sémantique d'une expression variant selon les scénarios métier, chaque contexte requiert un comportement d'analyse spécifique. OpenSearch propose des analyseurs polyvalents et des analyseurs spécialisés par domaine, tels que l'analyseur pour le commerce électronique.

OpenSearch vous permet de créer un analyseur personnalisé en combinant un analyseur intégré à des entrées d'intervention. Appliquez ensuite cet analyseur personnalisé aux champs d'index de votre application pour contrôler les résultats de l'analyse lors de l'indexation et des requêtes.

Entrées d'intervention

Contrôlez le comportement des entrées d'intervention en activant ou désactivant l'analyse secondaire.

Lorsque l'analyse secondaire est activée, l'analyseur segmente davantage chaque résultat issu d'une entrée d'intervention. Lorsqu'elle est désactivée, le résultat de l'intervention constitue la sortie finale et n'est pas segmenté davantage.

Par exemple, si l'entrée est « Open Search » et que l'analyseur est « General Chinese », l'activation de l'analyse secondaire donne le résultat suivant :

« Open Search » est segmenté en deux entrées : Open et Search.

Avec l'analyse secondaire désactivée, le résultat est le suivant :

« OpenSearch » est traité comme une seule entrée, OpenSearch, sans segmentation supplémentaire.

Remarques d'utilisation

  • Un analyseur personnalisé inclut toutes les entrées de son analyseur de base, ainsi que vos entrées d'intervention personnalisées. Les entrées d'intervention remplacent les entrées par défaut de l'analyseur de base.

  • Vous pouvez créer au maximum 20 analyseurs personnalisés.

  • Chaque analyseur personnalisé peut contenir au maximum 1 000 entrées d'intervention.

  • La requête d'une entrée ne peut pas dépasser 10 caractères (chinois ou anglais) et sa valeur ne peut pas dépasser 32 caractères.

  • Les entrées ne peuvent pas contenir de lettres majuscules (A-Z), de caractères pleine largeur (\uff01 à \uff5e) ni de ponctuation chinoise.

  • Pour les entrées d'intervention de segmentation sémantique, la requête et la valeur doivent être identiques après suppression des espaces dans la valeur. Par exemple :

    invalidkey=>wrong key
    validkey=>valid key

    La première entrée n'est pas valide car sa requête invalidkey et sa valeur wrong key (qui devient wrongkey après suppression des espaces) ne sont pas identiques.

  • Lors de l'ajout d'une entrée d'intervention, utilisez des espaces pour séparer plusieurs termes dans le résultat de l'analyse. N'utilisez pas de virgules. Les virgules sont traitées comme faisant partie du contenu du terme et non comme des délimiteurs, ce qui entraîne l'échec de la validation. Par exemple :

    applehuawei=>apple huawei (Correct, separated by a space)
    applehuawei=>apple,huawei (Incorrect, the comma is treated as a content character)

    Dans la deuxième entrée, la virgule est traitée comme un caractère littéral, rendant la valeur apple,huawei après suppression des espaces, ce qui ne correspond pas à la requête applehuawei. La validation échoue.

  • La requête d'une entrée ne peut pas contenir d'espaces. Par exemple :

    invalid key=>an invalid key
    validkey=>a valid key

    La première entrée n'est pas valide car sa requête, invalid key, contient un espace.

  • La requête d'une entrée ne peut pas être une sous-chaîne de la valeur d'une autre entrée au sein du même dictionnaire d'intervention. Par exemple :

    customanalyzer=>custom analyzer
    analyzer
    token

    La deuxième entrée, dont la requête est analyzer, n'est pas valide car sa requête fait partie de la valeur (custom analyzer) de la première entrée. La troisième entrée, token, est valide.

Procédure

Présentation du flux de travail

Créez un analyseur personnalisé -> Effectuez une modification hors ligne -> Réindexez -> Vérifiez les résultats

Étapes

1. Dans le volet de navigation de gauche de la console OpenSearch, accédez à Search Algorithm Center > Retrieval Configuration > Analyzer Management, puis cliquez sur Create.

2. Créez un analyseur, définissez un nom et sélectionnez un type :

Dans la boîte de dialogue qui s'affiche, pour Analyzer Type, sélectionnez Built-in Analyzer ou Custom Model Analyzer, puis dans la liste déroulante Analyzer, choisissez un analyseur spécifique, tel que Chinese - General Analysis.

3. Ajoutez une entrée d'intervention, saisissez la requête (par exemple, « sticky rice ») et le résultat de l'analyse, puis sélectionnez l'analyse secondaire :

Sur la page Entry Management, cliquez sur Add. Dans la boîte de dialogue Add Intervention Entry, saisissez une Query et le Analysis Result, activez Secondary Analysis, puis cliquez sur Save. Remarque : Séparez les mots par des espaces. Exemple : « sticky rice » ==> « sticky rice ».

4. Testez l'analyse pour vérifier le résultat de l'entrée d'intervention :

Dans la liste des analyseurs sur la page Analyzer Management, repérez l'analyseur personnalisé cible et cliquez sur Analysis Test dans la colonne Actions.

  • 4,1. Dans le texte de test, saisissez « sticky rice ».

Après le test avec l'analyseur test_zw, le résultat de l'analyse montre que « sticky rice » est divisé en deux entrées : sticky et rice.

  • 4,2. Comparez les résultats d'analyse de plusieurs analyseurs personnalisés.

Les résultats de la comparaison montrent que test_zw segmente « sticky rice » en sticky et rice, tandis que kevintest2 conserve sticky rice comme une entrée complète.

5. Après avoir testé l'effet de l'analyse, revenez à Basic Configuration sous Retrieval Configuration pour appliquer les modifications à votre application :

Dans la zone Analysis Configuration, cliquez sur le bouton Offline Modification.

Remarque : Une modification hors ligne génère une nouvelle version d'application hors ligne basée sur votre configuration actuelle. Votre application en production n'est pas affectée.

6. Dans la liste des champs d'index, sélectionnez votre analyseur personnalisé dans la colonne Méthode d'analyse pour le champ d'index concerné.

7. Les modifications prennent effet une fois la réindexation terminée.

Démonstration de l'effet de l'analyseur personnalisé

Par exemple, lorsqu'un document contient « glutinous rice », l'analyseur « Chinese - General » peut produire des résultats inattendus : une recherche pour « rice » ne permet pas de récupérer les documents contenant « glutinous rice », « millet » ou « rice ». Après avoir ajouté l'analyseur personnalisé « test_zw », modifié la structure de l'application et réindexé comme décrit ci-dessus, les termes résultants correspondent à votre analyse personnalisée.

Remarques supplémentaires

  • Vous pouvez ajouter des entrées à un analyseur personnalisé déjà utilisé par une application, mais vous devez réindexer pour que les nouvelles entrées prennent effet. Pour appliquer les modifications à des documents spécifiques, téléchargez-les à nouveau. Cette action réindexe uniquement ces documents, en appliquant les nouvelles entrées d'intervention.

  • La requête d'une entrée ne peut pas dépasser 10 caractères.

  • La requête d'une entrée ne peut pas contenir de lettres majuscules, de caractères pleine largeur ni de ponctuation chinoise.

  • Le résultat de l'analyse d'une entrée ne peut pas contenir de lettres majuscules, de caractères pleine largeur ni de ponctuation chinoise.

  • Si vous désactivez l'analyse secondaire, OpenSearch respecte strictement vos résultats d'intervention et n'effectue aucune segmentation supplémentaire. Si elle est activée, les résultats d'intervention peuvent être segmentés davantage.

  • Pour utiliser l'Industry - E-commerce General Analyzer comme base d'un analyseur personnalisé, votre application doit être de l'édition Industry-specific Enhanced Edition.

  • Vous ne pouvez pas supprimer un analyseur personnalisé en cours d'utilisation.