gpt4 book ai didi

getstream-io - 如何对 Stream 排名提要进行分页?

转载 作者:行者123 更新时间:2023-12-05 01:44:03 27 4
gpt4 key购买 nike

当我在“Custom Ranking”下的 Stream 文档中遇到这一行时,我非常深入地将 Stream 集成到我现有的分页实现(它也用于对存储在 MySQL 中的非事件数据进行分页):

Please note: offset and id_lt cannot be used to read ranked feeds. Use score_lt for pagination instead.

这似乎是文档中唯一提及 score_lt 的地方。我在其他任何地方都找不到它的讨论,也找不到它的值(value)应该是什么的例子。如果我对非排名提要进行分页,它是否应该与我将用于 id_lt 的 UUID 相同?或者它是某种只能由排名提要返回的分数值?

通常我会尝试看看,但排名提要仅适用于付费计划,我仍在评估 Stream。

不过,这可能会对我实现分页的方式产生重大影响,因为如果我继续使用 Stream,我确实希望将来能够使用排名提要。

最佳答案

当使用特定排名配置从排名提要中检索事件时,每个事件都将包含一个 score 属性。您可以使用 score_lt 对排名提要中的项目进行分页(连同 limit 参数)。

(在非排名提要上对项目进行分页时,我们通常建议使用 id_lt 参数,它只会按创建日期返回事件,按时间顺序从最近到最晚- 最近。但是,由于排名提要中的旧内容可能比新内容排名更高,我们必须通过 score 属性进行分页和排序。)

--

每当您创建排名提要时,您将至少创建一个排名提要配置。我要将我的排名提要配置命名为 ranked-feed-config-one(您可以拥有任意多个),它看起来像这样:

{
"score": "decay_linear(time) * popularity ^ 0.5",
"defaults": {
"popularity": 1
}
}

每当您将新事件发送到流中时,您还将提供一个可选的 popularity 参数。 (如果您不提供,popularity 将默认为 1。)

然后,每当您从排名提要中检索事件时,您可以指定要使用的排名配置 (ranked-feed-config-one),如下所示:

someFeed.get({ ranking: 'ranked-feed-config-one' })

每个事件都将返回(并按其排序)score 属性。您将保存最后一个 score 属性,并在为将来的分页调用提供 score_lt 参数时使用它。

--

希望这有助于解决问题!让我知道是否还有什么可以帮您解答的。

关于getstream-io - 如何对 Stream 排名提要进行分页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47564681/

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