2013-12-02 7 views
0

Я создал поисковую систему, используя solr. Я хочу создать запрос таким образом, чтобы, если пользователь ищет слово «колледж», оценка документа, которая имеет слово «знаменитая» в непосредственной близости (в пределах 2 слов, т.е. «знаменитого колледжа» или «колледж известен») должен быть выше. Если слово известное нет в ближайшей близости, тогда он должен рассчитать балл, основанный на слове "колледж" только.Поиск близости с помощью eDismax

То, что я хочу что-то вроде этого "знаменитого колледжа" ~ 2^10 OR "колледж известного" ~ 1^10 ИЛИ "колледж"

Как добиться этого в eDismax?

ответ

0

Что вы ищете называются поисковой фраза с фразой помоями из 2. Для установки по умолчанию например, в solrconfig.xml может выглядеть примерно так:

<requestHandler name="/phraseSearch" class="solr.SearchHandler"> 
    <lst name="defaults"> 
     <str name="defType">edismax</str> 
     <str name="wt">xml</str> 
     <str name="fl">Title</str> 
     <str name="qf">Name^2 Description</str> <!-- The fields (and their weightings) to search in.--> 
     <str name="rows">500</str> 
     <str name="pf">Name^4 Description^2</str> <!-- Phrase field (and their weightings). Fields to search for closely located matches --> 
     <str name="ps">2</str> <!-- Phrase slop. How many tokens apart must words be to be able to qualify as a phrase--> 
    </lst> 
    </requestHandler> 

Управления поиска фразы в запросе может выглядеть так:

http://mySolrHost:8983/solr/myEDismaxQuery?q=Title:famous+college&defType=edismax&pf=Title&ps=2 

Дополнительная информация по фразе запросов с использованием eDismax можно найти в Solr Reference page for eDismax.

+0

Не могли бы вы уточнить, где ввести слово «знаменитый», если я хочу найти знаменитую ложь в непосредственной близости от моего запроса «колледж». Также он не должен считаться знаменитым в запросе, если его нет в непосредственной близости – rdp

+0

Я отредактировал ответ, чтобы включить эту информацию. – Kevin

+0

Это вернет результат, даже если документ имеет только слово «знаменитый» – rdp

 Смежные вопросы

  • Нет связанных вопросов^_^