日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

OpsDoc

簡介

在算分過程中,經常會根據文檔中字段的內容給予文檔不同的分數,從而控制整個排序結果。OpsDoc類封裝了一些文檔操作接口,通過這些接口用戶可以獲取文檔中的字段。需要注意的是,通過OpsDoc對象獲取的字段,必須是出現在控制臺上屬性字段列表中的字段,并且需要在排序插件init函數中調用OpsDoc的requireAttribute函數提前聲明。OpsDoc對象由系統自動創建,用戶可以直接使用。

不同于表達式排序,使用cava編寫排序腳本需要用戶自己輸出trace。OpsDoc封裝了一系列trace函數支持用戶輸出各種類型的trace。目前OpsDoc的trace還不支持可變參數,如果用戶有多個變量需要輸出,需要多次調用trace接口。trace僅支持在搜索測試頁面進行查看,正常的查詢流量不支持trace功能。需要注意的是,由于cava單請求運行內存又限制,過多的trace會占用大量的運行時內存,所以請用戶僅在必要的時候調用trace函數。

函數列表

函數原型

函數簡介

boolean requireAttribute(CString fieldName)

聲明需要在算分過程中需要使用的字段

long docFieldLong(CString fieldName)

獲取INT類型字段

float docFieldFloat(CString fieldName)

獲取FLOAT類型字段

double docFieldDouble(CString fieldName)

獲取DOUBLE類型字段

CString docFieldLiteral(CString fieldName)

獲取LITERAL類型字段

long[] docFieldLongArray(CString fieldName)

獲取INT_ARRAY類型字段

float[] docFieldFloatArray(CString fieldName)

獲取FLOAT_ARRAY類型字段

double[] docFieldDoubleArray(CString fieldName)

獲取DOUBLE_ARRAY類型字段

CString[] docFieldLiteralArray(CString fieldName)

獲取LITERAL_ARRAY類型字段

OpsGeoPoint docFieldGeoPoint(CString fieldName)

獲取GEO_POINT類型字段

OpsTimestamp docFieldTimestamp(CString fieldName)

獲取TIMESTAMP類型字段

boolean declareLongVariable(CString variableName, boolean needSeraialize)

聲明一個long類型變量,該變量可以在后續算分插件中使用,或者在文檔中返回

boolean declareDoubleVariable(CString variableName, boolean needSeraialize)

聲明一個double類型變量,該變量可以在后續算分插件中使用,或者在文檔中返回

void setLongVariable(CString variableName, long value)

設置變量的值,變量必須在之前聲明過

void setDoubleVariable(CString variableName, double value)

設置變量的值,變量必須在之前聲明過

long getLongVariable(CString variableName)

獲取long類型的變量的值,變量必須在之前設置過

double getDoubleVariable(CString variableName)

獲取double變量的值,變量必須在之前設置過

void trace(byte value)

在算分過程中輸出trace信息,內容為byte類型

void trace(CString prefix, byte value)

在算分過程中輸出trace信息,內容為byte類型

void trace(short value)

在算分過程中輸出trace信息,內容為short類型

void trace(CString prefix, short value)

在算分過程中輸出trace信息,內容為short類型

void trace(int value)

在算分過程中輸出trace信息,內容為int類型

void trace(CString prefix, int value)

在算分過程中輸出trace信息,內容為int類型

void trace(long value)

在算分過程中輸出trace信息,內容為long類型

void trace(CString prefix, long value)

在算分過程中輸出trace信息,內容為long類型

void trace(float value)

在算分過程中輸出trace信息,內容為float類型

void trace(CString prefix, float value)

在算分過程中輸出trace信息,內容為float類型

void trace(double value)

在算分過程中輸出trace信息,內容為double類型

void trace(CString prefix, double value)

在算分過程中輸出trace信息,內容為double類型

void trace(CString value)

在算分過程中輸出trace信息,內容為CString類型

void trace(CString prefix, CString value)

在算分過程中輸出trace信息,內容為CString類型

函數詳情

boolean requireAttribute(CString fieldName)

聲明算分過程中需要使用的屬性字段,該函數只能在scorer init階段調用。如果字段沒有在init階段聲明,在算分過程中無法正確的從文檔中取出字段的值。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:聲明成功返回true,否則返回false。返回false的主要原因是聲明的字段不是屬性字段。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        CString field1;
        boolean ret = params.getDoc().requireAttribute(field1); //field1 必須是常量
        ret = params.getDoc().requireAttribute("price"); //ok
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        float floatValue = doc.docFieldFloat("price");
        return floatValue;
    }
}

long docFieldLong(CString fieldName)

獲取INT類型字段的值,返回值為長整型。如果字段為FLOAT或者DOUBLE類型,返回值會對字段取整。如果字段為LITERAL或者ARRAY類型,返回0。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("count"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        long count = doc.docFieldLong("count");
        return (double)count;
    }
}

float docFieldFloat(CString fieldName)

獲取FLOAT類型字段的值,返回值為浮點型。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("count"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        float count = doc.docFieldFloat("count");
        return (double)count;
    }
}

double docFieldDouble(CString fieldName)

獲取DOUBLE類型字段的值,返回值為雙精度浮點型。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("count"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        double count = doc.docFieldDouble("count");
        return count;
    }
}

CString docFieldLiteral(CString fieldName)

獲取LITERAL類型字段的值,返回值為CString。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("tag"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        CString tag = doc.docFieldLiteral("tag");
        if (tag.equals("abc")) {
            return 100.0;
        }
        return 0;
    }
}

long[] docFieldLongArray(CString fieldName)

獲取INT_ARRAY類型字段的值。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值,如果字段不存在或者類型不匹配(字段類型無法轉換或者字段不是數組類型)返回null。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("tags"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        long[] tags = doc.docFieldLongArray("tags");
        if (tags != null) {
            if (tags.length > 0) {
                return (double)tags[0];
            }
        }
        return 0;
    }
}

float[] docFieldFloatArray(CString fieldName)

獲取FLOAT_ARRAY類型字段的值。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值,如果字段不存在或者類型(字段類型無法轉換或者字段不是數組類型)不匹配返回null。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("tags"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        float[] tags = doc.docFieldFloatArray("tags");
        if (tags != null) {
            if (tags.length > 0) {
                return (double)tags[0];
            }
        }
        return 0;
    }
}

double[] docFieldDoubleArray(CString fieldName)

獲取DOUBLE_ARRAY類型字段的值。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值,如果字段不存在或者類型不匹配(字段類型無法轉換或者字段不是數組類型)返回null。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("tags"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        double[] tags = doc.docFieldDoubleArray("tags");
        if (tags != null) {
            if (tags.length > 0) {
                return (double)tags[0];
            }
        }
        return 0;
    }
}

CString[] docFieldLiteralArray(CString fieldName)

獲取LITERAL_ARRAY類型字段的值。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值,如果字段不存在或者類型不匹配(字段類型無法轉換或者字段不是數組類型)返回null。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("tags"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        CString[] tags = doc.docFieldLiteralArray("tags");
        if (tags != null) {
            if (tags.length > 0 && tags[0].equals("abc")) {
                return 100.0;
            }
        }
        return 0;
    }
}

OpsGeoPoint docFieldGeoPoint(CString fieldName)

獲取GEO_POINT類型字段的值,需要顯示引用OpsGeoPoint。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值,如果字段不存在或者類型不匹配返回null。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
import com.aliyun.opensearch.cava.framework.OpsGeoPoint;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("location"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        OpsGeoPoint location = doc.docFieldGeoPoint("location");
        double longitude = location.getLongitude();
        if (longitude < 0 || longitude > 180.0) {
            return 0;
        }
        return 1.0;
    }
}

OpsTimestamp docFieldTimestamp(CString fieldName)

獲取TIMESTAMP類型字段的值,需要顯示引用OpsTimestamp。參數列表:fieldName — 屬性字段名稱,必須是常量。返回值:返回字段的值,如果字段不存在或者類型不匹配返回null。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
import com.aliyun.opensearch.cava.framework.OpsTimestamp;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        boolean ret = params.getDoc().requireAttribute("timestamp"); 
          return ret;
    }
    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        OpsTimestamp timestamp = doc.docFieldTimestamp("timestamp");
        return (double)timestamp.getValue();
    }
}

boolean declareLongVariable(CString variableName, boolean needSeraialize)

聲明long類型的變量,主要用于多個插件傳遞信息或者在結果中返回變量的值,該函數只能在scorer初始化階段調用,在一個插件中最多只能聲明30個變量,超過限制會返回錯誤。

參數列表:

variableName -- 變量名稱,必須是常量

needSeraialize -- 是否需要在文檔中返回,true/false,必須是常量

返回值:

成功返回true,否則返回false。

代碼示例

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.framework.OpsGeoPoint;
import com.aliyun.opensearch.cava.framework.OpsTimestamp;

class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return params.getDoc().declareLongVariable("v_int64", true);
    }

    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        doc.setLongVariable("v_int64", 100);
        
        long longValue = doc.getLongVariable("v_int64");
        doc.trace("long value1: ", longValue);
        return 0;
    }
}

boolean declareDoubleVariable(CString variableName, boolean needSeraialize)

聲明double類型的變量,主要用于多個插件傳遞信息或者在結果中返回變量的值,該函數只能在scorer初始化階段調用,在一個插件中最多只能聲明30個變量,超過限制會返回錯誤。

參數列表:

variableName -- 變量名稱,必須是常量

needSeraialize -- 是否需要在文檔中返回,true/false,必須是常量

返回值:

成功返回true,否則返回false。

代碼示例

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.framework.OpsGeoPoint;
import com.aliyun.opensearch.cava.framework.OpsTimestamp;

class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return params.getDoc().declareDoubleVariable("v_double", true);
    }

    double score(OpsScoreParams params) {
        OpsDoc doc = params.getDoc();
        doc.setDoubleVariable("v_double", 100);
        
        long doubleValue = doc.getDoubleVariable("v_double");
        doc.trace("double value1: ", doubleValue);
        return 0;
    }
}

void setLongVariable(CString variableName, long value)

設置long類型變量的值,該函數必須在算分階段進行調用,而且變量需要在初始化階段進行聲明。

參數列表:

variableName -- 變量名稱

value -- 變量的值

void setDoubleVariable(CString variableName, long value)

設置double類型變量的值,該函數必須在算分階段進行調用,而且變量需要在初始化階段進行聲明。

參數列表:

variableName -- 變量名稱

value -- 變量的值

long getLongVariable(CString variableName)

返回long類型變量的值,該函數必須在算分階段進行調用,而且變量需要在初始化階段進行聲明。

參數列表:

variableName -- 變量名稱

返回值:

返回變量的值,如果變量沒有聲明或者未提前設值,默認返回0。

double getDoubleVariable(CString variableName)

返回double類型變量的值,該函數必須在算分階段進行調用,而且變量需要在初始化階段進行聲明。如果變量沒有聲明或者未提前設值,默認返回0。

參數列表:

variableName -- 變量名稱

返回值:

返回變量的值,如果變量沒有聲明或者未提前設值,默認返回0。

void trace(byte value)

輸出byte類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           byte value = 1;
        doc.trace(value);
        return 0.0;
    }
}

void trace(CString prefix, byte value)

輸出byte類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:prefix — trace前綴,方便查找。value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           byte value = 1;
        doc.trace("byte value: ", value);
        return 0.0;
    }
}

void trace(short value)

輸出short類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           short value = 1;
        doc.trace(value);
        return 0.0;
    }
}

void trace(CString prefix, short value)

輸出short類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:prefix — trace前綴,方便查找。value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           short value = 1;
        doc.trace("short value: ", value);
        return 0.0;
    }
}

void trace(int value)

輸出int類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           int value = 1;
        doc.trace(value);
        return 0.0;
    }
}

void trace(CString prefix, int value)

輸出int類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:prefix — trace前綴,方便查找。value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           int value = 1;
        doc.trace("int value: ", value);
        return 0.0;
    }
}

void trace(long value)

輸出long類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           long value = 1;
        doc.trace(value);
        return 0.0;
    }
}

void trace(CString prefix, long value)

輸出long類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:prefix — trace前綴,方便查找。value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           long value = 1;
        doc.trace("long value: ", value);
        return 0.0;
    }
}

void trace(float value)

輸出float類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           float value = 1;
        doc.trace(value);
        return 0.0;
    }
}

void trace(CString prefix, float value)

輸出float類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:prefix — trace前綴,方便查找。value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           float value = 1.0;
        doc.trace("float value: ", value);
        return 0.0;
    }
}

void trace(double value)

輸出double類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           double value = 1;
        doc.trace(value);
        return 0.0;
    }
}

void trace(CString prefix, double value)

輸出double類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:prefix — trace前綴,方便查找。value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           double value = 1.0;
        doc.trace("double value: ", value);
        return 0.0;
    }
}

void trace(CString value)

輸出CString類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           CString value = "abc";
        doc.trace(value);
        return 0.0;
    }
}

void trace(CString prefix, CString value)

輸出CString類型的trace信息,該信息為文檔級別,只在搜索測試時生效。參數列表:prefix — trace前綴,方便查找。value — 需要輸出的內容。

代碼示例:

package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
    boolean init(OpsScorerInitParams params) {
        return true;
    }
    double score(OpsScoreParams params) {
           OpsDoc doc = params.getDoc();
           CString value = "abc";
        doc.trace("CString value: ", value);
        return 0.0;
    }
}