如何影响Sphinx结果权重

如何影响Sphinx结果权重,sphinx,Sphinx,我这里有一个类似的问题:,但我想我应该问一个更简单的版本,看看我是否有任何点击率 有人知道如何影响Sphinx搜索结果中的权重吗?专门针对精确匹配 我知道改变排名模式会给你不同的权重,但我得到的大多数点击都有相同的权重,例如搜索“一次”会产生贬损结果,如: "once we were warriors" weight = 1637 "once" weight = 1637 "Once upon a time in the west" weight = 1637 当然,至少第一个应该有不同的重量

我这里有一个类似的问题:,但我想我应该问一个更简单的版本,看看我是否有任何点击率

有人知道如何影响Sphinx搜索结果中的权重吗?专门针对精确匹配

我知道改变排名模式会给你不同的权重,但我得到的大多数点击都有相同的权重,例如搜索“一次”会产生贬损结果,如:

"once we were warriors" weight = 1637
"once" weight = 1637
"Once upon a time in the west" weight = 1637
当然,至少第一个应该有不同的重量,因为它是完全匹配的


我们已经为此奋斗了几天,欢迎任何帮助。

这有帮助吗?

这有帮助吗?

我刚刚用这种东西测试了SPH\u RANK\u SP04,似乎有效

我已将此测试工具升级为使用Sphinx2.01(以便SPH04可用)


请注意,“一”本身的权重可能最高

我刚刚用这种东西测试了SPH_RANK_SP04,似乎有效

我已将此测试工具升级为使用Sphinx2.01(以便SPH04可用)

请注意,“一”本身的权重可能最高

这里有类似的讨论:。我提出了另一个问题,希望通过简化事情,我能得到更多的答案,因为没有答案

原来SPH_RANK_SPH04没有包含在版本0.9.9(发行版)的sphinxapi.php文件中!!!因此,即使您正在调用它,它也没有被考虑,而且不会产生错误

这很糟糕,因为它使故障排除变得非常困难

我将此作为答案发布,希望它能帮助其他人。我们为此疯狂了将近两天,直到我们找到了答案

此外,2.0.1中存在一个bug,它并没有真正将一些精确匹配带到前端,因为您需要2.0.2(您需要从SVN获得)或更高版本,但我对在生产中使用实验版本感到非常厌倦

希望Sphinx开发人员很快就能解决这个问题

PS 回顾一下开发人员日记,它确实说:

“从1.10β开始,斯芬克斯有8种不同的等级”

我们从0.9.9升级到2.0.1,一定是把api文件忘在后面了,在绝望中,我甚至从未检查过这个。如果排名模式不存在(与匹配等其他模式一样),Sphinx抛出一个错误仍然会很好,而且2.0.1错误在测试中仍然存在

这里有类似的讨论:。我提出了另一个问题,希望通过简化事情,我能得到更多的答案,因为没有答案

原来SPH_RANK_SPH04没有包含在版本0.9.9(发行版)的sphinxapi.php文件中!!!因此,即使您正在调用它,它也没有被考虑,而且不会产生错误

这很糟糕,因为它使故障排除变得非常困难

我将此作为答案发布,希望它能帮助其他人。我们为此疯狂了将近两天,直到我们找到了答案

此外,2.0.1中存在一个bug,它并没有真正将一些精确匹配带到前端,因为您需要2.0.2(您需要从SVN获得)或更高版本,但我对在生产中使用实验版本感到非常厌倦

希望Sphinx开发人员很快就能解决这个问题

PS 回顾一下开发人员日记,它确实说:

“从1.10β开始,斯芬克斯有8种不同的等级”


我们从0.9.9升级到2.0.1,一定是把api文件忘在后面了,在绝望中,我甚至从未检查过这个。如果排名模式不存在(与匹配等其他模式一样),Sphinx抛出一个错误仍然会很好,而且2.0.1错误在测试中仍然存在

同样类型的问题也被问到了

这对我来说很有效,首先要得到准确的匹配,然后是短语等

注意:这里不是获得不同的权重,而是根据提供的查询设置结果顺序。我认为最好在不改变不同权重的情况下得到结果,这将需要更多的计算,并最终节省时间和金钱。:-)

这在我的系统中工作并经过测试(Sphinx 0.9.9-release-r2117)



同样类型的问题也被问到了

这对我来说很有效,首先要得到准确的匹配,然后是短语等

注意:这里不是获得不同的权重,而是根据提供的查询设置结果顺序。我认为最好在不改变不同权重的情况下得到结果,这将需要更多的计算,并最终节省时间和金钱。:-)

这在我的系统中工作并经过测试(Sphinx 0.9.9-release-r2117)



我在PECL Sphinx模块中遇到了同样的问题,我想我已经通过定义缺少的常量解决了这个问题:

define ( "SPH_RANK_PROXIMITY", 4 );
define ( "SPH_RANK_MATCHANY", 5 );
define ( "SPH_RANK_FIELDMASK", 6 );
define ( "SPH_RANK_SPH04", 7 );
define ( "SPH_RANK_EXPR", 8 );
define ( "SPH_RANK_TOTAL",9 );

希望有帮助。

我在PECL Sphinx模块中遇到了同样的问题,我想我已经通过定义缺少的常量解决了这个问题:

define ( "SPH_RANK_PROXIMITY", 4 );
define ( "SPH_RANK_MATCHANY", 5 );
define ( "SPH_RANK_FIELDMASK", 6 );
define ( "SPH_RANK_SPH04", 7 );
define ( "SPH_RANK_EXPR", 8 );
define ( "SPH_RANK_TOTAL",9 );

希望这能有所帮助。

不幸的是,没有,我已经尝试了所有我可以尝试的不同匹配模式,但似乎没有什么不同,事实上,精确匹配的重量仍然与其他匹配的重量相同。我使用扩展模式2是因为我需要根据结果所使用的语言和权重对结果进行排序。不幸的是,没有,我尝试了所有我可以尝试的不同匹配模式,但事实上,精确匹配仍然与其他匹配具有相同的权重,这似乎没有什么区别。我使用扩展模式2,因为我需要根据结果所使用的语言和权重对结果进行排序。