我将从用例开始。说我正在寻找价格为500美元的产品。我不一定介意它的成本是略高,还是略低,但我希望这个价格范围内的产品获得更高的整体相关性得分。
Solr有什么办法吗?我在网站上看到的相关性/ MoreLikeThis文档似乎没有任何偏离给定数字的概念。
相关问题。我希望能够修改我的solr搜索权重以实现这两个查询:
“查找价格相似的相机” 和 “找到类似功能的相机”
看看更像这个处理程序,用于计算相关性的算法看起来不像向程序员公开任何控制旋钮。例如,对于价格相似的相机,我想修改相关性分数,以便我们增加相同价格范围内的项目的相关性,但仍然保持功能的权重。对于同样的功能,这将是相反的。 IE“找到类似功能的相机,但如果一个价格高达四万美元,它与我选择价格的类似相机不太相关”(它应该有更多的功能,但也许他们只是在镜头盖上放置铬制旋转器)。
答案 0 :(得分:3)
在Solr Wiki上,您将看到一些示例,说明如何search by range使用field:[a TO b]
语法。
您可能希望将此与排序相结合。您还可以构建一个Solr SearchComponent,可以指定价格范围的权重,或RequestHandler。请求处理程序是我更熟悉的。示例'qf'字段可能是:
<str name="qf">
productname^1.0 price^2.0 brand^0.5
</str>
我希望这可以帮助你开始。