Customqueryparser не получает правильные документы?

Я разработал свой CustomQueryParser с использованием OpenNLP для преобразования запроса таким образом, чтобы он содержал только термины с тегами POS «JJ», «NNS» и «NN».

Пример запроса = Вот почему все тесты и тесты Hewlett Packard
Запрос после CustomerQueryParser = тест Хьюлетта Паккарда

Но почему-то, когда я запрашиваю у скорости, полученные документы не соответствуют вышеуказанному правилу. Кроме того, поле q.op по умолчанию не следует за «И», указанным в файле solrconfig.xml.

Я предполагаю, что после CustomQueryParser запрос подвергается дальнейшему преобразованию с использованием queryAnalyzer.

Может ли кто-нибудь указать, где я могу ошибаться.

Спасибо

Что вы подразумеваете под «запросом от скорости»? Если вы разработали синтаксический анализатор, подобный disax, вы должны иметь возможность указать параметр mm (предложение Minimum Should Match) <str name="mm">100%</str> в определении обработчика запросов.

EricLavault 11.04.2018 12:37

Я упомянул здесь свой CustomQueryParser вместе с тем, как я интегрировал это с solr - stackoverflow.com/questions/49767593/…. Я использую пользовательский интерфейс скорости для ввода запроса.

Mrinalini Hanagodu 11.04.2018 13:38

Есть ли причина, по которой вы не реализовали это как токенизатор или фильтр?

MatsLindh 11.04.2018 14:18

Мне пришлось использовать теггер OpenNLP POS, я читал в другом сообщении, что использование CustomQueryParser было бы идеальным для такого случая. Есть ли лучший способ решить эту проблему? Если да, не могли бы вы посоветовать мне или направить меня к ресурсу, который мог бы помочь мне с тем же

Mrinalini Hanagodu 11.04.2018 14:33

Если вы удаляете только части ввода, я бы подумал, что написать его как чарфильтр будет работать - фильтры charfilters могут изменить ввод до того, как токенизатор, и фильтры получат текст, или вы могли бы реализовать его как токенизатор, который выплевывает один большой токен (hewlett packard test), а затем разделить его с помощью WordDelimiterGraphFilter.

MatsLindh 11.04.2018 15:54

Это не просто удаление части ввода, мне нужно запустить openNLP, чтобы сохранить только существительные и прилагательные. Что именно мне не хватает в отношении CustomQueryParser?

Mrinalini Hanagodu 11.04.2018 16:30
1
6
38
0

Другие вопросы по теме