gpt4 book ai didi

elasticsearch - 索引中跨多种类型的建议完成

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

是否可以对类型进行建议补全?我可以在索引上做到这一点。

POST /data/_suggest
{
"data" : {
"text" : "tr",
"completion" : {
"field" : "sattributes",
"size":50
}
}
}

当我在一个类型上做的时候:

POST /data/suggestion/_suggest
{
"data" : {
"text" : "tr",
"completion" : {
"field" : "sattributes",
"size":50
}
}
}

suggestion 是类型。

我没有得到任何结果。我需要对两种不同类型的文章和书籍提出建议。我是否需要创建单独的索引才能使它们正常工作,或者 elasticsearch 中是否有一种方法可以实现这一点?如果我必须搜索我的索引 data 是否有办法获得类型 article 的 50 个结果和类型 book 的 50 个结果。

非常感谢任何帮助。

最佳答案

Lucene 没有类型的概念,因此在 Elasticsearch 中,它们只是作为一个名为 _type 的隐藏字段实现。当您搜索特定类型时,Elasticsearch 会在该字段上添加一个过滤器。

完成建议器根本不使用传统搜索,这意味着它不能在 _type 字段上应用过滤器。所以你有几个选择:

  1. 对每种类型使用不同的完成建议字段,例如 suggestion_sattributesothertype_sattributes

  2. 使用 _type 作为前缀索引您的数据,例如 type1 actual words to suggest,然后当您寻求建议时,在前面加上 type1 到查询

  3. 使用单独的索引

事实上,上面的选项 (2) 目前正在作为新的 ContextSuggester 实现。这将使您能够自动执行此操作(以及更多操作)。

关于elasticsearch - 索引中跨多种类型的建议完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21567739/

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