属性排名顺序

    在大多数数据集中,某些字段比其他字段更能反映搜索结果的相关性。例如,在电影搜索中,`title`可能比`overview`或`release_date`更有意义。

    当`searchableAttributes`使用默认值`[*]`时,所有字段的权重相同。

    如果您手动配置可搜索属性列表,则数组中较早出现的属性在计算搜索结果相关性时更为重要。

    示例

    [
      "title",
      "overview",
      "release_date"
    ]
    

    在上述属性排名顺序中,在`title`字段中找到的匹配词对相关性的影响将高于在`overview`或`release_date`中找到的相同词。例如,如果您搜索“1984”,则迈克尔·雷德福德的电影“1984”的排名将高于在1984年上映的电影。

    属性排名顺序和嵌套对象

    默认情况下,嵌套字段与它们的父属性具有相同的权重。使用点符号为嵌套对象中的属性设置不同的权重

    [
      "title", 
      "review.critic", 
      "overview", 
      "review.user"
    ]
    

    在上述排名顺序中,review.critic在计算文档排名分数时变得比它的兄弟姐妹review.user更重要。

    注意

    attribute规则在rankingRules中的位置决定了结果的排序方式。这意味着,**如果attribute位于排名规则列表的底部,它将几乎不会对您的搜索结果产生影响。**