从solr autosuggester中删除不需要的物品

时间:2013-04-18 11:32:34

标签: solr lucene indexing lookup autosuggest

我正在尝试从索引的大量段落中实现自动建议。但我想过滤出自动建议中出现的某些不需要的单词。例如"和","如何","当"等需要避免时。我该怎么做呢。

这是我在solrconfig.xml中为autosuggest所做的配置..

<requestHandler class="org.apache.solr.handler.component.SearchHandler" name="/suggest">
    <lst name="defaults">
      <str name="spellcheck">true</str>
      <str name="spellcheck.dictionary">suggest</str>
      <str name="spellcheck.onlyMorePopular">true</str>
      <str name="spellcheck.count">5</str>
      <str name="spellcheck.collate">true</str>
    </lst>
    <arr name="components">
      <str>suggest</str>
    </arr>
  </requestHandler>


<searchComponent class="solr.SpellCheckComponent" name="suggest">
<lst name="spellchecker">
  <str name="name">suggest</str>
  <str name="classname">org.apache.solr.spelling.suggest.Suggester</str>
  <str name="lookupImpl">org.apache.solr.spelling.suggest.tst.TSTLookup</str>

  <str name="field">keywords</str> 
  <float name="threshold">0.005</float>
  <str name="buildOnCommit">true</str>

</lst>

1 个答案:

答案 0 :(得分:0)

我建议将StopFilterFactory添加到schema.xml文件中fieldType字段的后备keywords定义中。如果您需要keywords字段中的那些词(“和”,“how”,“when”)以获取其他搜索要求,我建议您在schema.xml中为建议者创建一个自定义字段,然后您就可以使用copyField指令填充此新字段。