Solr 模式和通过项目的关键字/标签进行提升

发布于 2024-12-07 03:53:03 字数 395 浏览 1 评论 0原文

当用户搜索并单击结果时,我们将该搜索关键字存储在数据库中。 我们得到的是每个项目的关键字列表以及该关键字点击该项目的次数。

在 solr 模式中,我有多值字段“关键字”。如何为每个项目上的每个关键字添加点击次数,然后增加点击次数,以便点击次数最多的项目位于该关键字结果的顶部/附近?

我使用 dismax,目前对“apple”的查询看起来像这样:

q=apple
qf=title^0.4 keywords:"apple"^0.5
bf=hits^0.4 rating^0.3

所以正如你所看到的,我通过“关键字”进行提升,但问题是我不知道哪个项目对于“apple”点击最多。

我尝试在初始索引导入时向每个关键字添加 boost 参数。这没有帮助,我没有主意。

When users searches and clicks a result, we store this search keyword in the DB.
What we get is a list of keywords for every item with the number of times item was clicked for that keyword.

In solr schema I have multivalued field "keywords". How can I add that number of clicks for every keyword on every item and than boost so the most clicked items are on/near the top of results for that keyword ?

I use dismax and for the moment the query for "apple" looks someting like this:

q=apple
qf=title^0.4 keywords:"apple"^0.5
bf=hits^0.4 rating^0.3

So as you can see I boost by "keywords" but the problem is that I don't know which item was most clicked for "apple".

I've tried adding boost parameter to every keyword on initial index import. It didn't help and I'm out of ideas.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

旧城空念 2024-12-14 03:53:03

您如何维护点击数据?
如何将累积点击数据也维护为文档中的单个字段。
您可以使用 dismax boost 函数轻松地使用此字段来整体增强文档。
可以使用大量数学函数@ http://wiki.apache.org/solr /FunctionQuery#What_is_a_Function.3F

How are you maintaining the clicked data ?
How about also maintaining the cumulative clicked data as a single field with the document.
You can easily use this field to boost the documents overall using the dismax boost functions.
A large set of mathematical functions can be used @ http://wiki.apache.org/solr/FunctionQuery#What_is_a_Function.3F

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文