代码之家  ›  专栏  ›  技术社区  ›  Tanu Garg

Solr Pharse match的排名不正确

  •  0
  • Tanu Garg  · 技术社区  · 7 年前

    我正在与Solr Search合作。当搜索短语时,排名并不能很好地工作。例如,如果我搜索“标题:图形设计师需要”,则标题应首先包含所有三个词,然后包含两个词,然后是单个词。

    我希望按以下顺序获得结果:

            "title": "Specification Graphic Designers Need To Know Every Day",
            "title": "Graphic Designers: Insider Secrets from Top Designers",
            "title": "Graphic ElementsUnique Elements for Distinctive Designs",
    
    
    <field name="title" type="case_sensitive" indexed="true" stored="true" required="false" multiValued="false" omitNorms="true"/>
    
        <fieldType name="case_sensitive" class="solr.TextField" positionIncrementGap="100">
                <analyzer type="index">
                <tokenizer class="solr.StandardTokenizerFactory"/>
            <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
               <filter class="solr.LowerCaseFilterFactory"/>
               <filter class="solr.SnowballPorterFilterFactory"/>
              </analyzer>
              <analyzer type="query">
               <tokenizer class="solr.StandardTokenizerFactory"/>
               <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
               <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
               <filter class="solr.LowerCaseFilterFactory"/>
               <filter class="solr.SnowballPorterFilterFactory"/>
              </analyzer>
            </fieldType>
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   MatsLindh    7 年前

    您的查询并不意味着“在字段中查找所有这些单词 title ".

    查询解析为“搜索 Graphics 在里面 标题 , Designers 在默认搜索字段中,以及 Need 在默认搜索字段中。

    您必须为每个术语添加字段名前缀,或使用 qf 连同(e)Demax。一种选择是使用 title:(Graphics Designers Need) ,或使用eDiscoveryMax: q=Graphics Designers Need&qf=title .

    使用 debugQuery=true 查看如何计算每个文档的分数。