【发布时间】:2016-01-08 17:29:43
【问题描述】:
我正在研究 Apache UIMA + Apache Solr 集成。首先,我将 Apache UIMA 与 eclipse 集成在一起。我已经在 Eclipse 中实现了名词短语注释器并运行了一些示例。
通过在句子中查找名词,它工作正常并给出准确的结果。
现在我正在尝试使用 Solr 实现 UIMA。我按照以下链接进行了相同的操作:
https://wiki.apache.org/solr/SolrUIMA
我已经在 apache solr lib 目录中导出了 eclipse 项目的工作 JAR 文件,并包含了其他必要的 jar 文件。
这是我的 solrconfig xml 更改:
<lib dir="../../../contrib/uima/lib" />
<lib dir="../../../contrib/uima/lucene-libs" />
<lib dir="../../../dist/" regex="solr-uima-\d.*\.jar" />
<lib dir="C:\apache-uima\lib" />
<requestHandler name="/update" class="solr.UpdateRequestHandler">
<lst name="defaults">
<str name="update.processor">uima</str>
</lst>
</requestHandler>
<updateRequestProcessorChain name="uima" default="true">
<processor class="org.apache.solr.uima.processor.UIMAUpdateRequestProcessorFactory">
<lst name="uimaConfig">
<lst name="runtimeParameters">
</lst>
<str name="analysisEngine">/desc/NounPhraseAnnotator.xml</str>
<bool name="ignoreErrors">false</bool>
<str name="logField">id</str>
<lst name="analyzeFields">
<bool name="merge">false</bool>
<arr name="fields">
<str>text</str>
</arr>
</lst>
<lst name="fieldMappings">
<lst name="type">
<str name="name">org.apache.uima.tutorial.NounPhraseAnnotation</str>
<lst name="mapping">
<str name="feature">nounText</str>
<str name="field">uimanounphrase</str>
</lst>
</lst>
</lst>
</lst>
</processor>
<processor class="solr.LogUpdateProcessorFactory" />
<processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>
Schema.xml 更改:
<field name="uimanounphrase" type="string" indexed="true" stored="true" multiValued="true" required="false"/>
然后我索引了一些文档并运行了 solr 实例。但是当我执行查询时,名词不会出现在 uimanounphrase 字段中。 Null 值显示在该字段中。
【问题讨论】: