1

我想根据每个用户调整 solr 搜索结果的相关性 - 基于用户之前点击结果的次数。经常为该用户点击的项目应该上升到搜索结果的顶部。

有没有办法为查询中的特定文档 ID 提供自定义提升/提升?我正在考虑大约 100 份要提升的特定文件。如果查询的其余部分未找到这些文档,则提升应该无效。

或者,如果这是不可能的,那么建立另一种使这成为可能的索引方法的明智方法是什么?我可以在索引中为每个用户添加一个字段来存储他们的分数吗?我正在考虑大约 1000 个用户。这种方法的主要缺点是需要重新索引文档的次数(即每次用户使用它时)。

4

1 回答 1

1

您可以设置一个动态字段来存储用户点击,例如:

<dynamicField name="*_clicks" type="integer" indexed="true" stored="true"/>

并且您会将点击存储在 user12322_clicks、user15000_clicks 等字段中。

看看这个非常相似的问题,了解如何提升的信息。

于 2010-06-08T01:33:57.810 回答