SubLaneSubLane

账号池与请求诊断

并发、冷却、配额与请求记录的实际行为。

并发与会话绑定

每个订阅账号默认允许 2 个同时执行的模型请求,可在「调度设置」调整为 1–8。实例仍有 8 个上游操作的总限制,同一账号跨多个组共享容量。HTTP、SSE、压缩和 WebSocket 回合都持有请求槽位,直到响应关闭或取消。

降低上限不会中断已获准请求。已绑定的对话不会因为账号繁忙或故障自动换账号:容量不足返回 429 account_busy,冷却返回 429 account_cooling,并提供 Retry-After

没有 Session_id 或非空 prompt_cache_key 的请求独立选择账号,不创建会话绑定。新会话在支持模型的可用账号间轮换。一个数据库只运行一个 SubLane 进程。

冷却与恢复

上游情况处理
HTTP 429立即冷却,按 Retry-After 限制在 1–3600 秒,默认 60 秒
5xx、网络失败、超时或无效流连续 3 次逻辑失败后冷却 30 秒,后续指数退避,最多 5 分钟
客户端取消或下游写入失败释放槽位,不惩罚上游账号
冷却结束后的首个请求在无在途请求时作为恢复探测,成功后恢复正常并发

没有后台生成探测。管理员「清除冷却」会清理失败连续计数,但不会启用账号、修复授权或恢复订阅配额。冷却与绑定保存在 SQLite;在途计数和轮换游标在重启后清空。

配额感知

Codex 模型请求会触发共享后台配额读取,调度不等待这次网络调用。只有新鲜的主订阅限额明确耗尽时,才排除新选择;未知、过期或已经重置的数据不被当成零配额。新鲜窗口最多 2 分钟,可能被重置时间缩短。

绑定账号配额耗尽返回 429 quota_exhausted,仍不迁移对话。Retry-After 是重新检查提示,不是配额恢复承诺。Claude 和 Antigravity 尚无配额读取器,仍按模型与容量规则调度。

请求记录

「常规 → 请求」仅显示本人记录;「管理 → 全部请求」供管理员排查。可按结果、模型、密钥、请求 ID 和时间筛选,管理员还能按成员与订阅账号筛选。每页最多 50 条,保留最近 7 天且最多 5,000 条。

记录包括耗时、结果、脱敏错误码、上游 HTTP 状态及上游报告的 token 数,不记录提示词、响应正文、原始错误、IP、凭据或会话标识。认证失败、进入网关前的请求校验失败、全局准入拒绝与元数据查询不计入模型调用记录。

服务端生成 req_… 请求 ID,HTTP 返回 X-Request-ID,WebSocket 事件附带 request_id。使用该 ID 对照客户端报错与服务端记录。HTTP 200 不一定意味着流最终成功,应同时看结果字段。

「首次输出」是网关开始处理到首个非空文本、推理或工具参数增量的时间,包含排队与上游等待;不是浏览器渲染时间。缺失 token 数保持未知。缓存命中率是缓存输入 token 占全部输入 token 的比例,不是命中缓存的请求比例。

长期汇总与成员限额见 团队用量与限额