【发布时间】:2018-01-10 21:41:12
【问题描述】:
我想使用 Algolia 构建智能搜索。关键是使用关键字对结果进行排名。假设用户键入“智能手机蓝色便宜的好相机”。这应该会找到所有蓝色智能手机,并按价格和相机特性对其进行排序。
我们的想法是以某种方式将这些关键字映射到排名公式。
有人知道 Algolia 是否可以实现,如果可以,实现预期结果的最佳方法是什么?
【问题讨论】:
标签: search full-text-search ranking algolia
我想使用 Algolia 构建智能搜索。关键是使用关键字对结果进行排名。假设用户键入“智能手机蓝色便宜的好相机”。这应该会找到所有蓝色智能手机,并按价格和相机特性对其进行排序。
我们的想法是以某种方式将这些关键字映射到排名公式。
有人知道 Algolia 是否可以实现,如果可以,实现预期结果的最佳方法是什么?
【问题讨论】:
标签: search full-text-search ranking algolia
要按构面值(如blue、good camera)自动检测和过滤,您可以使用Query Rules,尤其是Dynamic Filtering。
但是,这不是必需的。如果您在searchableAttributes 列表中包含color(例如包含blue 值)和characteristics(例如包含good camera 值)属性,那么搜索请求将返回纯粹基于在这些属性中匹配的文本相关性。
另一方面,排序策略会在构建时影响 Algolia 索引,因此为了根据查询更改排序策略(例如,如果搜索查询包含 cheap,则按升序对结果进行排序),您将 @ 987654323@。在前端,当检测到相关关键字(例如cheap)时,您可以决定将搜索查询切换到主索引还是排序副本。
【讨论】: