すべてのプロダクト
Search
ドキュメントセンター

OpenSearch:OpsRequest

最終更新日:Dec 28, 2024

概要

OpsRequest クラスは、クエリリクエストを定義するために使用されます。このクラスを使用すると、クエリリクエストから情報を取得できます。OpsRequest クラスは、OpsKvPairs getKVPairs() 関数のみをサポートしており、これにより OpsKvPairs オブジェクトを取得できます。クエリ内の kvpairs 句でカスタムパラメータが定義されている場合、OpsRequest クラスを使用して、スコア計算中にカスタムパラメータを取得できます。スコア計算オブジェクトのスコア計算中ではなく、初期化中に OpsRequest クラスを使用してカスタムパラメータを取得することをお勧めします。スコア関数は、スコア計算に関係する各ドキュメントに対して呼び出されます。スコア計算中にカスタムリクエストパラメータを取得すると、計算コストが増加します。

関数

関数

説明

OpsKvPairs getKVPairs()

すべてのキーと値のペアを取得します。

関数の詳細

OpsKvPairs getKVPairs()

すべてのカスタムパラメータをキーと値のペアの形式で取得します。OpsKvPairs クラスの詳細については、OpsKvPairs を参照してください。サンプルコード:

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.OpsKvPairs;
class BasicSimilarityScorer {
    long flag;
    boolean init(OpsScorerInitParams params) {
        OpsRequest request = params.getRequest();
        OpsKvPairs kvparis = request.getKVPairs();
        flag = kvpairs.getLong("flag"); // kvpairs 句からキーが flag であるカスタムパラメータの値を取得し、その値を LONG 値に変換します。
        return true;
    }

    double score(OpsScoreParams params) {
        if (flag == 1) {
            //do something
        }
        return 0.0;
    }      
}