gpt4 book ai didi

elasticsearch - 如何在 Elasticsearch 中建议(自动完成)下一个词?

转载 作者:行者123 更新时间:2023-11-29 02:44:01 25 4
gpt4 key购买 nike

假设我索引了以下字符串:

"My awesome pizza"
"My awesome beer"
"Heineken is awesome beer"
"I love pizza pepperoni"
"Where is my beer"

对于输入"My"我想建议:

  1. 我的真棒
  2. 我的啤酒

对于输入 "awesome" 我想建议:

  1. 很棒的披萨
  2. 很棒的啤酒

等等

所以我想在用户输入后提供下一个词...还应该支持一些模糊性 (aEwsome)。

我应该使用哪些建议器/分析器?我尝试了 Termcompletion 但这不是我想要的(例如,完成仅在搜索短语的开头时有效 - 如果我传递的是在中间的单词索引字符串然后它不会建议它,)

最佳答案

以防万一这里有人碰到,edge-n-gram 方法(如@Siddardha Budige 所述)现在已被 completion suggesters 取代.

它们是专门为自动完成而构建的,因此它们具有快速高效的特点。可以找到 ES 团队提供的非常有用的帖子 here .

两个注意事项:

  1. 它们由内存中的数据结构(称为 Finite State Transducer)实现,因此不适用于内存无法容纳的大型数据集。

  2. 结果的排名不是基于相似性(结果匹配或不匹配),因此您必须小心混合模糊匹配和非模糊匹配。

编辑:我们分享了自己使用 Completion Suggesters 的经验 here .

它包括一些关于非英语输入的模糊性和信息的实际例子。

关于elasticsearch - 如何在 Elasticsearch 中建议(自动完成)下一个词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24767375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com