gpt4 book ai didi

java - 在 Lucene-4.x 中将有效负载提升与 FuzzyQuery 结合使用

转载 作者:行者123 更新时间:2023-12-01 12:05:46 24 4
gpt4 key购买 nike

是否有机会使用描述的有效负载提升hereFuzzyQuery ?或者也许有人可以建议实现混合模糊/有效负载搜索的最佳策略是什么。

目前,我在索引中有一些文档,其中某些部分使用本文中描述的技术获得了更高的匹配优先级。一切都很顺利,直到模糊查询登场。

现在我正计划以某种方式破解 Lucene 代码,以便能够使用有效负载因子调整术语评分,例如在 MultiTermQuery.TopTermsScoringBooleanQueryRewrite.addClause() 中。但是我不确定这是否是解决问题的最佳方法。

请提出建议。

可能 a very similar question前段时间已经询问过,但没有得到满意的解决方案。

最佳答案

我有一个解决方案。

您应该仅使用 PayloadTermQuery,但您可以使用唯一的过滤器扩展您的 token 。通过这个独特的过滤器,您可以将新的简化术语放入 token 链中,我的意思是 ascii 折叠、删除双字母等等......通过使用 PayloadTermQuery,您还可以降低新术语的分数。

对我来说,这个解决方案工作得很好,而且速度非常快。我希望我能帮忙。

我的解决方案中的一些代码:

  private String simplifyingToken(String token) {
String token = H.foldToAscii(token);
if(!H.isNumber(token)){
token = token.replaceAll("(.)\\1", "$1"); //double letters
}
token = token.replaceAll("\\-", "");
token = token.replaceAll("(ou)", "u");
token = token.replaceAll("(cz)", "c");
token = token.replaceAll("w", "v");
return simpleTokenJocker + token; //tf idf correction
}

关于java - 在 Lucene-4.x 中将有效负载提升与 FuzzyQuery 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27624859/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com