Есть сложные слова, которые могут писаться как «ручная сумка» или «сумочка». Если у нас есть «сумочка» в индексе solr, то при поиске «сумка», как я могу показать результат «сумочка». Я пробовал с парсером синонимов из нескольких слов. Но для этого мне нужно добавить add handbag=>hand bag в файл синонимов. Но список очень длинный. Я не могу добавлять слова в список.
Обработка составных слов в solr
Ответы (1)
Solr уже предоставляет фильтр декомпозиции на основе словаря. Дополнительные сведения см. в вики Solr: https://wiki.apache.org/solr/LanguageAnalysis#Decompounding
person
spyk
schedule
13.03.2014
С solr.DictionaryCompoundWordTokenFilterFactory мне нужно будет предоставить файл словаря, и ключевые слова, упомянутые в этом файле, будут только управляться. Но это также можно сделать с помощью solr.SynonymExpandingExtendedDismaxQParserPlugin, где мне приходится вручную добавлять ключевые слова в файл синонимов. Я не хочу добавлять такие файлы ключевых слов. Я хочу, чтобы все слова обрабатывались динамически.
- person Kamal Kishore; 14.03.2014
Но вам все равно нужно будет предоставить какой-то словарь, чтобы фильтр мог определять допустимые границы слов. Я обычно использую список слов enable2k для английского текста.ссылка
- person spyk; 16.03.2014
Разве это невозможно сделать без предоставления какого-либо словаря. то есть он должен генерировать составные слова для каждой строки независимо от словарных слов.
- person Kamal Kishore; 20.03.2014