basicSimilarityScore

获取BasicSimilarityScorer计算的分数,主要用于IntelligenceAlgorithmScorer中。

构造函数

函数原型

函数简介

BasicSimilarityScore create(OpsScorerInitParams params)

构造BasicSimilarityScore

函数列表

函数原型

函数简介

double evaluate(OpsScoreParams params)

获取BasicSimilarityScorer算分结果

函数详情

BasicSimilarityScore create(OpsScorerInitParams params)

工厂函数,构造BasicSimilarityScore对象。

params -- 初始化输入参数,详情请参考OpsScorerInitParams手册。

double evaluate(OpsScoreParams params)

获取BasicSimilarityScorer的算分结果。

参数列表:

params --算分输入参数,详情请参考OpsScoreParams手册。

返回值:

返回BasicSimilarityScorer的算分结果。

代码示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.features.similarity.fieldmatch.BM25F;
import com.aliyun.opensearch.cava.features.BasicSimilarityScore;

class BasicSimilarityScorer {
    BM25F _f1;
    boolean init(OpsScorerInitParams params) {
        CString[] fields1 = {"title"};
        _f1 = BM25F.create(params, "default", fields1);
        _f1.setFieldAvgLength("title", 10);
        _f1.setFieldWeight("title", 10D);
        _f1.setFieldParamB("title", 0.6);
        return true;
    }

    double score(OpsScoreParams params) {
        return _f1.evaluate(params);
    }
};

class IntelligenceAlgorithmScorer {
    BasicSimilarityScore _f1;
    boolean init(OpsScorerInitParams params) {
        _f1 = BasicSimilarityScore.create(params);
        return true;
    }

    double score(OpsScoreParams params) {
        return _f1.evaluate(params);
    }
};