我正在使用彈性搜索5.3,並提供你沒有意思的功能,我想限制短語或短語建議者的上下文爲,只有用戶的文檔不是索引中的所有文檔。這裏是一個使用期限建議者(返回基於所有索引文件的建議)我現在的_search
查詢體:如何按特定字段過濾彈性搜索詞或短語建議者?
{
"suggest": {
"text": "docyment",
"title_correction: {
"term": {
"size": 2,
"prefix_length": 3,
"field": "title",
"analyzer": "standard",
"min_doc_freq": 1,
}
}
}
}
我可以看到phrase_suggester
是過濾了部分過去(check this issue),但它似乎已被棄用並由上下文建議者取代(僅限完成字段儘管),所以它不適合我的情況。
我需要的是有一個過濾器,如:"filter": {"term": {"user_id": 12345}}
所以建議將根據用戶的文件。
我將不勝感激,如果有人能想出的答案我的問題:
0-爲什麼過濾器已經從短語建議者棄用?只有提升業績?
1-如果它已被替換爲別的東西,並有推薦的方法來做到這一點,所以我可以解決我的問題?
(我問過同樣的問題在elastic forum,並將在更新的情況下這兩個問題我找到答案)
我不明白爲什麼上下文建議器不合適。似乎上下文中提到的是一位裝飾建議者,不是嗎? – aclokay
@aclokay如果我說得對,上下文建議器只能在完成字段(它將保存爲內存中的圖形)下工作,並且不是實現拼寫檢查的正確選擇,如下所述:https://www.elastic.co /guide/en/elasticsearch/reference/current/search-suggesters-completion.html:'[完成建議]不適用於拼寫糾正或您的意思功能,如術語或詞組建議者。「#: 因此,我需要限制用戶文檔中的術語或短語建議。 – sheshkovsky