Lucene Solr ShingleFilterFactory自动建议

Lucene Solr ShingleFilterFactory自动建议,lucene,autosuggest,solr,Lucene,Autosuggest,Solr,我正在使用SolrShingleFilterFactory进行自动建议。 这是我的现场配置: <fieldType name="textSpellShingle" class="solr.TextField" positionIncrementGap="100"> <analyzer> <tokenizer class="solr.StandardTokenizerFactory"/> <filter class="solr.Lowe

我正在使用Solr
ShingleFilterFactory
进行自动建议。 这是我的现场配置:

<fieldType name="textSpellShingle" class="solr.TextField" positionIncrementGap="100">
  <analyzer>
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.ShingleFilterFactory" maxShingleSize="4" outputUnigrams="true"/>
    <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
  </analyzer>
</fieldType>
我得到以下答案:

  • 哈利波特
  • 哈里森福特
  • 等等
问题是当我搜索“pot”或“for”。。。我没有得到任何结果。我想推荐“哈利波特”或“福特哈里森”


我该怎么做

我认为,结果取决于您字段的内容
spellingShingle
。 如果“哈利·波特”和“哈利·波特”都是该字段的值,solr/lucene将通过键入“波特”返回“哈利·波特”

q=rows=0&facet=true&facet.field=spellingShingle&facet.prefix=har