1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.codelibs.fess.score;
17
18 import java.util.Map;
19
20 import org.codelibs.core.lang.StringUtil;
21 import org.codelibs.fess.mylasta.direction.FessConfig;
22 import org.codelibs.fess.opensearch.query.StoredLtrQueryBuilder;
23 import org.codelibs.fess.util.ComponentUtil;
24 import org.opensearch.search.rescore.QueryRescorerBuilder;
25 import org.opensearch.search.rescore.RescorerBuilder;
26
27
28
29
30 public class LtrQueryRescorer implements QueryRescorer {
31
32
33
34
35 public LtrQueryRescorer() {
36
37 }
38
39 @Override
40 public RescorerBuilder<?> evaluate(final Map<String, Object> params) {
41 final FessConfig fessConfig = ComponentUtil.getFessConfig();
42 final String modelName = fessConfig.getLtrModelName();
43 if (StringUtil.isBlank(modelName)) {
44 return null;
45 }
46 return new QueryRescorerBuilder(new StoredLtrQueryBuilder().modelName(modelName).params(params))
47 .windowSize(fessConfig.getLtrWindowSize());
48 }
49 }