首页 > 解决方案 > Azure 搜索不同分数以获得完全匹配

问题描述

我有表:用户,字段说名字,姓氏

如果我搜索 Amit 并仅使用 searchField 作为名字,我会得到不同的分数。

$count=true&search=Amit^2&searchFields=firstName&$select=firstName&queryType=full

"value": [
        {
            "@search.score": 7.986226,
            "firstName": "Amit"
        },
        {
            "@search.score": 7.986226,
            "firstName": "Amit"
        },
      ...

      ...

      ...

        {
            "@search.score": 7.986226,
            "firstName": "Amit"
        },
        {
            "@search.score": 7.9655724,
            "firstName": "Amit"
        },

以上是小结果集,但我可以看到 15-20 结果后分数发生变化。

如果名字相同,我期待相同的分数,因为复杂的查询可以按分数排序,姓氏。

标签: azure-cognitive-search

解决方案


文档的搜索分数是文档与查询的匹配程度以及与“附近”文档的相关程度的组合。根据将文档精确划分为分片,精确匹配可能会获得不同的分数,但它们的得分总是高于非精确匹配。


推荐阅读