【问题标题】:Azure Search: boost results that contains wordAzure 搜索:提升包含单词的结果
【发布时间】:2017-06-29 23:41:06
【问题描述】:

我在 Azure 搜索中有一个机场数据库,在搜索时,我希望使用那些机场名称中包含“国际”一词的机场来提升结果。

鉴于 2 个得分相同的结果,我想仅使用 Azure 搜索来提升机场名称中包含“国际”一词的结果(即,如果可能,在获得相关结果后不使用任何代码进行操作)。

我尝试了Term Boosting,但它返回给我一个包含“国际”的机场列表,这不是我想要的。

我查看了评分函数,但似乎没有一个适合我的需要

本质上,我不想“匹配”包含“国际”一词的结果 但我想在用户输入查询文本后“提升”包含“国际”一词的结果

【问题讨论】:

  • 您能分享一下您在尝试术语提升时使用的查询吗?

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


【解决方案1】:

如果您希望包含某个词的结果得分更高,但又不想要求匹配的文档包含该词,则可以使用 OR 和 AND。例如,如果用户键入“达拉斯”,您的查询可能如下所示:

Dallas OR (Dallas AND airportName:international)

如果您还想控制术语international 对分数的影响,可以使用术语提升。

您可能会发现 this article 关于 Azure 搜索如何处理查询会有所帮助。

【讨论】:

  • 感谢您的回复。我试过了,但这不是我想要的行为。我不想用“国际”一词来“过滤”结果。我仍然想搜索达拉斯,如果有 2 个相同分数的结果,优先选择其中包含国际的结果...更像是在初始搜索结果返回后,增加那些包含国际的结果
  • @icube 'Dallas OR (Dallas AND airportName:international)' 怎么样...可以吗?
猜你喜欢
  • 1970-01-01
  • 2021-08-06
  • 1970-01-01
  • 1970-01-01
  • 2020-05-07
  • 1970-01-01
  • 2013-10-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多