The BasicSimilarityScorer class is used to calculate scores. The calculated scores can be used in the IntelligenceAlgorithmScorer class.
Constructor
Function | Description |
BasicSimilarityScore create(OpsScorerInitParams params) | Creates a BasicSimilarityScore object. |
Function
Function | Description |
double evaluate(OpsScoreParams params) | Calculates the score of a document. |
Function details
BasicSimilarityScore create(OpsScorerInitParams params)
Creates a BasicSimilarityScore object. This function is a factory function.
Parameter: params: the parameters that are used for initialization. For more information, see OpsScorerInitParams.
double evaluate(OpsScoreParams params)
Calculates the score of a document.
Parameter:
params: the parameters that are used for score calculation. For more information, see OpsScoreParams.
Return value:
The calculated score of a document.
Sample code:
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.similarity.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);
}
};