2013-07-09 6 views
1

solr 검색 결과에서 확장 된 동의어를 강조하고 싶습니다. 예 : 심장 전문의, 치과 의사 등의 태그 집합이 있습니다. 심장 전문의에게 "심장 전문의"를 동의어로 매핑했습니다. "심장 전문의"를 검색 할 때 나는 심장 전문의를 "심장 전문의", "심장 전문의"로 강조 표시된 결과로 심장 전문의를 얻고 싶습니다. 그러나, 나는 강조에서 단지 "심장 전문의"를 얻는다. 내가동의어 확장을 사용하는 solr 강조 표시 토큰

<filter class="solr.SynonymFilterFactory" 
synonyms="synonyms.txt" 
ignoreCase="true" 
expand="true" 
tokenizer="solr.KeywordTokenizerFactory"/> 

색인 동안 동의어를 확대하고

나는 하지 내가 이것에 대한 검색 좀 주로 나는 "여러 단어의 결과를 얻을 수

<filter class="solr.SynonymFilterFactory" 
synonyms="synonyms.txt" 
ignoreCase="true" 
expand="false"/> 

조회시 동의어를 확장입니다 동의어 버그 "가 있습니다. 그 버그를 고려하지 않고 (관련성이 없기 때문에) 어떻게이 기능을 작동시킬 수 있습니까? 솔버 버전> 4.0에 대해 얘기하고 있습니다.

답변

0

저는 이것이 두 표준 하이 라이터가 작동하는 방식이라고 생각합니다. 즉, 동일한 위치의 토큰이 더 많아도 쿼리 용어를 강조 표시합니다. 자신 만의 Highlighter을 구현하거나 쿼리 시간 동의어 확장으로 전환해야합니다 (그러면 문서에서 "원본"용어로 항상 발췌 문장을 얻을 수 있습니다).

+0

감사합니다. Artur Nowak. 그러나 내 문제는 solr이 "심장 전문의"(문서의 원래 용어 임) 만 강조 표시하고 동의어 목록에 있고 "검색어에 표시되는"심장 전문가 "라는 단어를 강조 표시하지 않는다는 것입니다. – guruprasath