通过text_relevance_llm函数调用排序模型对搜索结果进行排序。
前提条件
行业算法版接入AI搜索开放平台
排序模型由AI搜索开放平台提供,如需在行业算法版中使用,需要先接入模型。
函数介绍
创建text_relevance_llm
语法:TextRelevanceLLM create(OpsScorerInitParams params, CString serviceId, CString fields)
参数说明:
params:算分初始化参数,参考OpsScorerInitParams
serviceId:重排服务(模型)ID。
fields: 属性字段,多个字段之间以
#
号分隔。
计算分数
语法:double evaluate(OpsScoreParams params)
参数params:算分输入参数,详情请参考OpsScoreParams。
返回值:文本相关性分数,取值范围为[0, 1]。
示例代码
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsRequest;
import com.aliyun.opensearch.cava.framework.OpsDoc;
import com.aliyun.opensearch.cava.features.algo.TextRelevanceLLM;
class IntelligenceAlgorithmScorer {
TextRelevanceLLM _textRelevanceLLM;
boolean init(OpsScorerInitParams params) {
_textRelevanceLLM = TextRelevanceLLM.create(params, "ops-text-reranker-001", "detail_attr");
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
double score = _textRelevanceLLM.evaluate(params);
doc.trace("TextRelevanceLLM Score: ", score);
return score;
}
};
该文章对您有帮助吗?