的搜索API在我的Python GAE應用自定義拼寫檢查,我可以讓用戶在使用搜索API,我初步建成具有確切標記的文件項查詢,但點擊率是由於需要存在拼寫糾正,因此沒有太多。 我發現的方式是通過數據存儲區實現字符數據庫,因爲這可以確保用戶正確輸入至少一部分字詞。在數據存儲上這需要很多時間。 例如,如何實現GAE
"hello"
(分成)["hello", "ello", "hell", "hel", "elo", "llo", "he", "el", "ll", "lo"]
,當我搜索"helo" tags -["hel", "elo", "he", "el", "lo"]
(給予積極的匹配)
我根據來自字相匹配的標籤的長度排名。
上的數據存儲, 我不得不指數突破這些性格與它們匹配的實體一起單獨的n-gram。並且對於每個詞以類似的方式對每個標籤執行搜索。這需要很多時間。
是否有使用搜索API實現類似的操作方式。 MatchScore是否查看「OR」的多個字段? 尋找方法設計搜索文檔並在最少的操作中執行多個拼寫糾正的查詢。
如果我有語言的多個領域中的每個文檔像eg.-
([tags - "hello world"] [rank - 2300] [partial tags - "hel", "ell", "llo", "wor", "orl", "rld", "hell", "ello", "worl", "orld"] [english - 1] [Spanish - 0] [French - 0] [German - 0]
我可以在語言領域與排序一起執行MatchScore操作? (每個文件關聯到只有一種語言)
我嘗試過3 +和4 +以上的變化,主要是因爲我無法劃分語言。假設我有西班牙語,意大利語,德語,法語和英語用戶。當西班牙語用戶搜索某些內容時,我希望他先看到與他的查詢匹配的西班牙語結果,然後再用英語或其他語言,而不是對西班牙語進行嚴格篩選(如search-api中的「類型」)。有沒有一種方法可以實現MatchScorer隨着對每個文檔可能具有二進制值的語言字段進行排序? – minocha
@minocha我已經注意到你是如何標記字段或文檔的語言的,因爲我注意到你在問題中註釋了你的示例字段。由於我只在我的應用中使用了與語言無關的索引(只有德語受衆),所以我不確定Search API如何處理不同語言的結果,但我相信它的行爲已經是您想要的方式。 AFAIU,Search API會猜測搜索詞的語言,然後應用神奇的語言規則來改進匹配,但我不認爲搜索API只會因爲語言不同而忽略字段或文檔。 – Ani