2015-11-17 118 views
2

我想知道如果Algolia服務進行搜索時提供某種建議的機制。Algolia是否有推薦的搜索?

我不能在爲客戶提供了基於索引數據更精緻和智能搜索的替代品相關的API文檔找到任何東西。

我試圖描述的場景是以下(這個例子是有點過度的頂部):

給出一個用戶搜索「紅車」,那麼系統提供了更具體的搜索替代品和可能相關的項目,在數據庫中存在(如法拉利,紅色的駕駛手套,快速和激烈的配樂:-))

更新

對於未來的參考我最終使用Algolia的文本搜索功能做了一個基本推薦系統。

彙總,當car保存它的屬性colorspeedengine等,用於在創建同義詞索引,例如用於engineferrari引擎指數: { synonyms: ['red', 'ferrari', 'fast'], value: 'ferrari' } 最後,每個索引,必須註明搜索的synonyms屬性和搜索的返回結果的value

回答

2

Algolia不提供這種「智能」開箱即用。

事情可以做,以接近你要找的內容是使用同義詞和其它參數的組合:

  • 定義同義詞組,如「汽車,法拉利,駕駛手套」,「紅,黑紅色,橘,橙」,...
  • 發送搜索查詢時
  • ,設置optionalWords包含在該查詢的單詞列表。這將使您的查詢的每個單詞可選。
  • 還設置removeStopWordstrue讓喜歡「的」,「一」(...)字樣被忽略,以提高相關性。

由於定義明確的同義詞列表,這將使您的原始查詢解釋爲許多其他可能性,從而增加可能結果的多樣性。

要知道,雖然它也可能影響您的結果的相關性,因爲用戶可能例如不希望找手套,當他們搜索的車!