remaining_queries/heavy_remaining_queries: 最新拉取到的剩余额度,直接来源于 Grok/rest/rate-limits。normal_limit/heavy_limit: 观测到的当前周期额度上限。每次同步时都会与剩余额度比较,取最大值并在额度回满时复位对应使用计数。usage: 以模型 ID 为键的调用次数统计;普通模型根据倍率折算一次请求的消耗,grok-4-heavy独立计数。
所有字段都会持久化到 token.json 或者你配置的其它存储后端。
- 正常请求:当 Chat 服务调用 Grok 成功后,后台会异步触发
refreshRateLimit,向/rest/rate-limits获取最新额度并更新上述字段。 - 管理员「测试 Token」:调用测试接口同样会拉取最新额度并写回。
- 接口:
POST /v1/admin/api/tokens/sync - 行为:遍历当前所有 Token,对普通模型使用
grok-4-fast查询额度,对 Super Token 额外使用grok-4-heavy查询重载额度。成功结果会写入normal_limit/heavy_limit与remaining_*。 - 前端:仪表盘「同步额度」文字按钮会调用该接口,完成后自动刷新 Token 列表与统计卡片。
- 返回数据:
{ total, updated, failed, heavy_failed }用于提示同步结果。
- 对于每个模型,页面以「已用 / 总额」展示:
已用 = usage[model](按模型倍率换算后的次数)总额 = max(normal_limit, usage_sum + remaining_queries)(对应模型所属的池)
- 当检测到额度刷新(剩余额度增加)时,后台会清理相应模型的
usage,确保展示的 A/B 始终处于同一计费周期。