У нас есть приложение для маркировки пользовательских выборов по большому корпусу документов MS Word. Мы отмечаем эти выделения одним или несколькими тегами ключевых слов и обычно тегом заголовка. Мы хотим добавить функцию, в которой выделенный текст будет немедленно проанализирован, а теггеру будет представлен список наиболее вероятных ключевых слов и тегов заголовков (на основе существующих меток текста)Найти похожие результаты с индексом Lucene/SOLR
Мы используем индекс SOLR. Мне сказали, что мы можем просто выдать выделенный текст в качестве самого запроса, чтобы возвращать похожие варианты. Однако выбранный текст может составлять от 200 до 6000 слов. Запрос на 6000 слов может быть проблемой с точки зрения использования памяти!
Я думал, что мы можем сделать очень агрессивное удаление паузы, чтобы значительно уменьшить количество слов в запросах, оставив только очень содержательные слова. Мы работаем с этим корпусом в течение последних 10 лет, и мы очень хорошо знакомы с предметом и используемым лексиконом, поэтому нам было бы легко сделать это. Но проблема в том, что мы также используем тот же самый индекс, который позволяет обычным пользователям искать индекс, и если мы удалим слишком много общих слов, то их обычные запросы могут работать некорректно (особенно фразовые запросы).
Мы также хотели бы увеличить результаты, содержащие текст запроса в меньшем диапазоне, а не просто распространяться произвольно по всему документу.
Другая проблема заключается в том, что мы допускаем вложенный выбор. Внешний выбор может быть более общим по своей природе и иметь длину около 5000 слов, а внутренний выбор будет короче и местно более конкретным. Тем не менее, поскольку оба варианта содержат один и тот же текст, SOLR оценивает их как высоко, когда внешний выбор может быть не столь значимым.
Я провел последние несколько дней, просматривая документацию анализатора запросов SOLR, и похоже, что это должно быть выполнимым, но я все еще не уверен точно, что мне нужно сделать, чтобы сделать эту работу. Любые предложения будут высоко ценится.