gpt4 book ai didi

django - 在elasticsearch-dsl中为完成建议字段定义权重

转载 作者:行者123 更新时间:2023-12-02 22:35:28 24 4
gpt4 key购买 nike

在我的Django应用程序中,使用Elastic Search 5.2.x和elasticseach-dsl进行批量索引创建时,我试图实现一个完成建议字段,如下所示:

def indexing(self):
obj = SchoolIndex(
meta = {'id': self.pk},
name = self.name,
name_suggest = self.name
)
obj.save(index="school_index")
return obj.to_dict(include_meta=True)

现在,我需要为建议字段name_suggest定义一些权重,以便在查询过程中对建议进行评分,但是我无法弄清elasticsearch-dsl特定的语法来在上述功能中执行相同的操作。

我尝试这样做,但是没有用:
name_suggest = {'input':self.name,'weight':100}

本质上,我正在尝试在Django中实现文档在此处显示的内容:
https://www.elastic.co/guide/en/elasticsearch/reference/5.6/search-suggesters-completion.html#indexing

我是Elastisearch的新手,请告知我是否在代码中的正确位置分配权重以及在Django中分配权重的语法。

谢谢。

最佳答案

供他人引用,以下是权重索引的一种工作方法:

def indexing(self):
obj = SchoolIndex(
meta = {'id': self.pk},
name = self.name,
name_suggest = {'input': self.name, 'weight': 10}
)
obj.save(index="school_index")
return obj.to_dict(include_meta=True)
通过以上操作,得分将基于权重而提高。

关于django - 在elasticsearch-dsl中为完成建议字段定义权重,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56038110/

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