0

好的,所以我在 qf 中使用了许多字段,例如:

[qf] => frpId^5 fundraise_title^3 fundraiser_display_name^3 charity_name^2 participantFname^2 participantLname^2 participantEmail^1 groupName^3 fundraise_text^ fundraiseTitleExact^15 fundraiserDisplayNameExact^15 charityNameExact^15 participantFnameExact^10 participantLnameExact^10 groupNameExact^10 all^

但我真的希望该领域的 FundraiseTitleExact 完全匹配。

使用之前的 qf 设置,他们处于第 32 位。

假设我正在提高fundraiseTitleExact,例如:

[qf] => frpId^5 fundraise_title^3 fundraiser_display_name^3 charity_name^2 participantFname^2 participantLname^2 participantEmail^1 groupName^3 fundraise_text^ fundraiseTitleExact^15000000000000000 fundraiserDisplayNameExact^15 charityNameExact^15 participantFnameExact^10 participantLnameExact^10 groupNameExact^10 all^

但即使是现在,fundraiseTitleExact 完全匹配仅在第 27 位(上升 5 个位置)上,并且不会上升。

我怎样才能优先考虑这个领域而不是其他领域?

4

1 回答 1

0

这看起来更像是一个调优问题,但是您有几个选择:

  1. 调整你的相关性,修改所有的提升,直到你得到预期的结果(我建议使用比你问题中的提升更低的提升,然后增加最重要领域的提升);

  2. 如果您使用edismax query parse r 那么您可能需要检查 bq 和 bf 参数以提高您的术语;

  3. 如果情况变得更糟,您可以使用Query Elevation Component将一些条目放在列表的顶部。

我建议阅读以下书籍以扩大您对 solr 提升和相关性机制的了解:

于 2016-08-04T07:12:09.750 回答