在Azure搜索中查找搜索结果的相关性

时间:2017-07-19 18:41:30

标签: azure-search azure-search-.net-sdk

我有一个Azure搜索索引,其中包含具有字段和相应权重的用户的地址信息,如下所示:

weights= @{  
                              HouseNumber = '40'      
                              StreetName = '36'
                              City = '30'
                              PostalCode = '29'
                              Province = '25'
                              Country = '21'
                              FSA = '20'      
                              Plus4 = '16'
                              SuiteName = '12'
                              SuiteRange = '11'
                              StreetPost = '10'
                              StreetPre = '8'
                              StreetSuffix = '6'
                            }

我使用searchmode作为任何查询。我如何判断最高分的记录是最相关的记录?意味着,如果用户没有输入地址的所有关键字,记录的相关性可能会有所不同。例如,如果字符串包含诸如“1A1”之类的关键字,它们可以是邮政编码“A1A 1A1”的一部分,或者可以是房屋编号。这将返回两个记录,但具有不同的分数。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

如果查询的条款可以匹配多个字段(例如,如果'1A1'可以匹配PostalCode和HouseNumber字段中的结果),那么评分配置文件将通过提升每个相应结果按预期工作。

您应该检查应用程序query is field-scoped。这样,查询的每个部分都在搜索正确的字段,并相应地提升匹配。