Utilisation des synonymes dans la recherche


(Deve java) #1

Bonjour au groupe , alors je souhaite utiliser les synonymes dans ma recherche,

j'ai vu qu'il faut éditer le fichier des synonymes puis configurer l'index pour qu'il puisse lire le fichier des synonymes construit en spécifiant le chemin du fichier.

par exemple si j'ai la liste des synonymes suivante : poof, banquette, sufa
je veux que Elasticsearch me retourne les documents qui contiennent aussi banquette, sufa quand je cherche avec poof, pareil pour la recherche avec l'un d'entre eux.

mais je ne comprend pas bien le principe de synonymes,

est ce que le principe est que Elasticsearch va interagir dans l'indexation c'est a dire il indexe le document avec les synonymes des mots qui constituent le contenu, ou bien il interagit dans la recherche c'est a dire il va faire une extension de la requête avec les synonymes c'est a dire si je pose la requête poof il va enrichir avec tout ses synonymes. et faire la recherche avec .

  1. deuxième question, est ce que l'index doit être configuré avant que les documents soit ajouté dans l'index afin que les synonymes puissent etre considéré dans la recherche

pouvez vous me donner un example de code de configuration en Java , car je ne trouve pas ca dans l'API comment faire la configuration (pour la tokenization, synonymes et tout ce qui concerne ce cadre)

je vous remercie par avance


(David Pilato) #2

Les deux. Enfin, suivant la configuration de ton mapping.

Disons pour faire simple que si sur un champ donné, tu définis un analyzer qui fait du synonyme, alors cet analyzer sera appliqué à la fois lors de l'indexation et lors de la recherche.

Oui.

La création de l'analyzer se fait au moment de la création de l'index: https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-admin-indices.html#java-admin-indices-create-index

Tu peux aussi créer le mapping au moment où tu crées l'index ou après coup avec https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-admin-indices.html#java-admin-indices-put-mapping.

Je n'ai pas d'exemple complet sous la main, mais sinon dans les cas de test Elasticsearch, tu peux sans doute trouver ça.


(Deve java) #3

merci Monsieur David pour votre réponse,

pourriez vous me donner le lien pour les cas de test Elasticsearch svp


(David Pilato) #4

Il faut fouiller ici sans doute: https://github.com/elastic/elasticsearch/tree/master/core/src/test/java/org/elasticsearch


(system) #5

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.