gpt4 book ai didi

ElasticSearch 中的随机文档

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

有没有办法从 elasticsearch 索引中获取真正随机的样本?即查询以 1/N 的概率从索引中检索任何文档(其中 N 是当前索引的文档数)?

作为后续问题:如果所有文档都有一些数字字段s,有没有办法通过加权随机抽样来获取文档,即获取文档的概率i 的值 s_i 等于 s_i/sum(s_j for j in index)?

最佳答案

我知道这是一个老问题,但现在可以使用 random_score ,使用以下搜索查询:

{
"size": 1,
"query": {
"function_score": {
"functions": [
{
"random_score": {
"seed": "1477072619038"
}
}
]
}
}
}

对我来说,处理大约 200 万份文档非常快。

我使用当前时间戳作为种子,但你可以使用任何你喜欢的东西。最好的是,如果你使用相同的种子,你会得到相同的结果。因此,您可以使用用户的 session ID 作为种子,所有用户将有不同的顺序。

关于ElasticSearch 中的随机文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25887850/

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