如何使用完成提示器实现多个字段的自动搜索,有没有办法将多个字段值自动映射到完成字段

问题描述 投票:0回答:1

我一直在努力寻找一种实现弹性搜索自动完成的方法。 我的要求是这样的,在我的索引中我有字段a,b,c,d

我想按顺序显示前 5 个搜索建议 (一、二、三) d

我使用的是Nest 7.17, 我尝试使用多重匹配查询、术语建议,但没有一个能按我想要的方式工作

所以我读到了关于完成建议以及如何增加输入的权重,但目前我正在努力解决两件事

  1. 我想要一个包含多个字段值的完成字段
  2. 我正在尝试找到一种方法来自动将其添加到索引中
elasticsearch autocomplete nest
1个回答
0
投票

问题1:我想要一个完成字段,其中有多个字段值 是吗?

答案:您可以将多个值分配为数组 字段 = [“Alphabet Inc”、“Google”、“Youtube”、“Playstore”]

问题2:我正在尝试找到一种方法来自动将其添加到索引中? 答:只有一个权重字段可以增加相关性/分数。您需要创建一个函数,或者您需要创建一个公式,例如 a、b、c、d。

if a:
  weight = 4
if b:
  weight = 3
if c:
  weight = 2
if d:
  weight = 1 

这篇文章可能对您有帮助。 https://taranjeet.medium.com/elasticsearch-using-completion-suggester-to-build-autocomplete-e9c120cf6d87

© www.soinside.com 2019 - 2024. All rights reserved.