在使用OpenSearch演算法功能搜尋時,或多或少都需要上傳一些必要參數,才能關聯上演算法功能,以下詳細介紹各個演算法模組的必要參數如何通過Java SDK添加到查詢請求中(傳參均已虛擬碼的形式舉例)。
查詢分析
...
//搜尋請求
SearchParams searchParams = new SearchParams(config);
searchParams.setQuery("default:'OpenSearch'"); //通過下拉提示引導的
///添加from_request_id參數
Map<String, String> customParam =new HashMap<>();
customParam.put("raw_query","OpenSearch");
searchParams.setCustomParam(customParam);
//執行查詢語句返回資料對象
SearchResult execute = searcherClient.execute(searchParams);
...
類目預測
raw_query:用於類目預測等演算法訓練使用。
...
//搜尋請求
SearchParams searchParams = new SearchParams(config);
searchParams.setQuery("default:'蘋果'"); //通過下拉提示引導的
///添加from_request_id參數
Map<String, String> customParam =new HashMap<>();
customParam.put("raw_query","蘋果");
searchParams.setCustomParam(customParam);
//執行查詢語句返回資料對象
SearchResult execute = searcherClient.execute(searchParams);
...
下拉提示
-
raw_query:開啟高頻詞。
-
from_request_id:最佳化下拉提示排序模型,提升下拉提示引導搜尋的效果,統計用于衡量下拉提示對搜尋的效果的指標。
-
raw_query、user_id、from_request_id:開啟智能排序。
...
//搜尋請求
SearchParams searchParams = new SearchParams(config);
searchParams.setQuery("default:'蘋果'"); //通過下拉提示引導的
///添加from_request_id參數
Map<String, String> customParam =new HashMap<>();
customParam.put("raw_query","蘋果");
customParam.put("user_id","12345");
customParam.put("from_request_id","159851481919726888064081");
searchParams.setCustomParam(customParam);
//執行查詢語句返回資料對象
SearchResult execute = searcherClient.execute(searchParams);
...
-
搜尋請求中上傳raw_query,下拉提示請求中上傳參數user_id:開啟歷史搜尋字詞。
...
//搜尋請求
SearchParams searchParams = new SearchParams(config);
searchParams.setQuery("default:'蘋果'"); //通過下拉提示引導的
///添加from_request_id參數
Map<String, String> customParam =new HashMap<>();
customParam.put("raw_query","蘋果");
searchParams.setCustomParam(customParam);
//執行查詢語句返回資料對象
SearchResult execute = searcherClient.execute(searchParams);
...
//下拉提示請求
SuggestParams suggestParams = new SuggestParams();
suggestParams.setUserId("12345");
熱搜和底紋
-
raw_query:用於熱搜和底紋演算法模型訓練使用。
-
from_request_id、user_id:提升熱搜和底紋引導搜尋的效果,統計用于衡量熱搜和底紋對搜尋的效果的指標。
...
//搜尋請求
SearchParams searchParams = new SearchParams(config);
searchParams.setQuery("default:'蘋果'"); //通過下拉提示引導的
///添加from_request_id參數
Map<String, String> customParam =new HashMap<>();
customParam.put("raw_query","蘋果");
customParam.put("user_id","12345");
customParam.put("from_request_id","160851481919726888064913");
searchParams.setCustomParam(customParam);
//執行查詢語句返回資料對象
SearchResult execute = searcherClient.execute(searchParams);
...
Cava外掛程式
-
cava指令碼名稱。
-
排序類型。
...
// 建立參數對象
SearchParams searchParams = new SearchParams(config);
...
//建立rank對象
Rank rank=new Rank();
//設定調用的CAVA指令碼
rank.setSecondRankName("test_cava");
//設定排序類型 - CAVA 指令碼
rank.setSecondRankType(RankType.CAVA_SCRIPT);
//將排序策略加入到參數對象中
searchParams.setRank(rank);