Я пытался реализовать Solr на моем Localhost и использую приведенные в нем примеры для тестирования функциональности и хочу проверить функциональность проверки орфографии.
Поэтому я попытался прочитать официальную документацию и некоторые статьи о том, как это сделать, и попытался реализовать ее, но после отправки запроса предложения не возвращаются.
Вот мой solrconfig.xml
<searchComponent name="spellcheck" class="solr.SpellCheckComponent">
<lst name="spellchecker">
<str name="name">default</str>
<str name="field">fieldspellcheck_en</str>
<str name="classname">solr.IndexBasedSpellChecker</str>
<str name="distanceMeasure">internal</str>
<float name="accuracy">0.5</float>
<int name="maxEdits">2</int>
<int name="minPrefix">1</int>
<int name="maxInspections">5</int>
<int name="minQueryLength">4</int>
<float name="maxQueryFrequency">0.01</float>
<float name="thresholdTokenFrequency">.01</float>
</lst>
</searchComponent>
Вот материал, который я отредактировал в managed-schema (ранее известный как schema.xml )
<fieldType name="text_suggest" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
<field name="fieldspellcheck_en" type="text_suggest" indexed="true" stored="true" />
<copyField source="*_txt_en" dest="fieldspellcheck_en" />
Итак, я отправил запрос
curl http://localhost:8983/solr/films/spell?spellcheck.q=blak&spellcheck=on
Ответ, который я ожидал, включает предложения, включая black, blue etc..
, но ответ, который я получил, был
{
"responseHeader":{
"status":0,
"QTime":1},
"response":{"numFound":0,"start":0,"docs":[]
},
"spellcheck":{
"suggestions":[],
"correctlySpelled":false,
"collations":[]}}
Никаких предложений не было возвращено.
Почему я не получаю никаких предложений? Какие изменения я должен сделать