AzureSearch:Dismax查询解析器功能

时间:2016-11-15 05:35:35

标签: azure-search dismax

是否有可能在Azure搜索中使用Dismax Query Parser功能。例如查询字段(qf),短语字段(pf),提升功能或提升查询。

我知道目前Azure Search支持lucene查询语法。想要检查是否有其他术语/解析器可用于等效功能,或者如果没有,那么AzureSearch团队希望在未来的时间内将其合并。

以下是DismaxQueryParser的参考链接 https://cwiki.apache.org/confluence/display/solr/The+DisMax+Query+Parser

由于

1 个答案:

答案 0 :(得分:1)

Azure搜索不支持DisMax查询。根据您对DisMax查询的需求,您可以通过其他方式获得类似的结果。

从召回的角度来看,DisMax查询与布尔查询相同,因为对于析取,两者都认为文档在相同条件下是匹配的。不同之处在于,DisMax通过获取最高的个人匹配(加上可选的打破平局)对得到的匹配进行评分,默认情况下,布尔查询会将得分加起来。

如果DisMax需要的是带引号的简单语法,+ / - 等,那么使用queryType = simple(默认值)将在Azure搜索中提供大部分内容,但"〜 " (模糊/斜率)。

如果你需要的是实际分离 - 最大的得分方式,那么今天就不可行了。

至于你提到的其他功能:

  • 查询字段:" searchFields" Azure搜索查询中的选项。
  • 短语字段:您可以通过查询单个术语,然后使用引号中的术语组来手动(尽管痛苦地)实现此目的,并使用不同的提升(您需要使用完整的lucene查询,简单查询由于个人任期/小组的提升而无法做到。)
  • 提升功能/查询:在Azure搜索中没有任何内容可以将1:1映射到此内容,但评分配置文件允许您为使用此功能建模的许多方案建模。

有关searchFields和其他查询选项的详细信息: https://docs.microsoft.com/en-us/rest/api/searchservice/search-documents

有关评分档案的详细信息: https://docs.microsoft.com/en-us/rest/api/searchservice/add-scoring-profiles-to-a-search-index