Я создал пользовательский токенизатор в Solr, который ищет именованные объекты. Я хотел бы иметь возможность использовать эту информацию для заполнения отдельных полей в документе lucene/solr.Solr: заполнить отдельные поля из Tokenizer
В качестве примера я хочу заполнить многозначное поле, называемое «местоположениями», со всеми именами мест, которые были извлечены из текста. Чтобы извлечь места, текст сначала маркируется, чтобы отделить слова и определить, какие маркеры являются местоположениями. После этого процесса я хотел бы выделить токены для токенизатора, но также заполнить поле «местоположения» всеми именами местоположений, которые были извлечены из текста.
Из исследования, которое я сделал, нет способа получить доступ к объекту SolrDocument из Tokenizer или TokenizerFactory, поэтому здесь нет способа заполнить поля.
Решение, с которым я столкнулся до сих пор, заключается в создании пользовательского UpdateRequestProcessorFactory, который обрабатывает текст и извлекает поля, а затем Tokenizer обрабатывает текст AGAIN для получения токенов. Я хотел бы найти способ сделать эту работу и только обрабатывать текст один раз.