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

OpenSearch:OpsRequest

最終更新日:Aug 22, 2026

OpsRequest は、Cava スコアリングフレームワークのクエリリクエストです。これを使用して、クエリの kvpairs 句で渡されたカスタムパラメーターにアクセスできます。OpsRequest は、getKVPairs() という 1 つの関数を提供します。

関数

関数説明
OpsKvPairs getKVPairs()すべてのカスタムパラメーターをキーと値のペアとして返します。

関数の詳細

getKVPairs()

OpsKvPairs getKVPairs()

クエリの kvpairs 句で定義されたすべてのカスタムパラメーターを含む OpsKvPairs オブジェクトを返します。

このメソッドは、score() ではなく init() で呼び出してください。

score() 関数は、スコアリング対象のすべてのドキュメントに対して 1 回ずつ実行されます。score() 内で getKVPairs() を呼び出すと、呼び出しごとにオーバーヘッドが発生します。代わりに init() で呼び出すことで、クエリごとに 1 回だけルックアップが実行されます。

次の例では、スコアラーの初期化時に flag パラメーターを取得し、スコア関数で使用します。

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 kvpairs = request.getKVPairs();
        flag = kvpairs.getLong("flag"); // kvpairs 句から "flag" キーの値を long 値として取得します。
        return true;
    }

    double score(OpsScoreParams params) {
        if (flag == 1) {
            // 何らかの処理を実行
        }
        return 0.0;
    }
}