首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用用户行为提升SolR结果

使用用户行为提升SolR结果
EN

Stack Overflow用户
提问于 2014-03-04 19:34:12
回答 1查看 364关注 0票数 1

我希望SolR能够从我的网站用户的选择中“学习”。我的意思是,在用户执行搜索之后,我知道用户单击了哪个产品。因此,我收集了一个术语列表,搜索了=>,SolR中索引的每个产品的点击次数。但我想不出如何根据用户的输入来增加它。是否可以为文档索引一些键/值对,并使用可在boost参数中使用的函数检索值?

我不太清楚,所以我将添加一个具体的例子:

比方说,当用户搜索“花园椅”时,SolR会返回3种产品,“绿色花园椅”、“蓝色椅子”和"hamac表示花园“。“绿色花园椅”排在第一位,哈马克排在最后,正如预期的那样。但是,所有搜索“花园椅”的用户最终都会点击hamac。

我想帮助hamac在搜索“花园椅”时排在第一位,而不改变它在其他搜索中的排名。所以我希望能够执行一个基于key=>value的boost。这能用SolR实现吗?

我相信我不会是第一个需要这样的基于用户的搜索结果改进的人。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-05 08:39:40

如果您使用edismax (或者可能是bf),您可以使用edismax bq。要使此操作正常,您显然需要存储信息(在db、redis中,无论您喜欢什么):

  • 搜索“花园椅”:
    • 点击“花园的hamac”:10
    • 点击“绿色花园椅”:4

  • 搜索“绿色表”:
    • ..。

等等,当有搜索的时候,查找这个,如果有信息可供搜索,发送bq来增加你想要的东西。

另外,查看一下QueryElevationComponent --它可能是你的目的(尽管它比仅仅促进.更强大。)不过,有两件事需要考虑:

  1. 每次更改单击号时,您都需要修改xml并重新加载,所以最好将其批次到夜间或类似的地方。
  2. 最近有一个jira问题,允许您提供类似的功能,但是通过提供请求params,不需要xml/重新加载,所以也要检查一下。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22181250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档