初级管理员
一个厂商多个 Key:加权分流、粘性绑定与备用启用
单上游挂多把 API Key:按权重分流、同一调用方粘性绑定、weight=0 备用 key 兜底 —— 限流与单 key 故障不再硬等。
社区真正在抱怨什么
Reddit 高频:「OpenAI 一把 key 的 RPM 不够用,多开几个号怎么轮询」、「key 被限流 429,业务只能硬等」、「切 key 后同一会话的缓存亲和全丢」。
自己写轮询还要处理粘性、权重、备用与失败摘除,工程量不小。
GateLLM 怎么做
GateLLM 上游表单支持多把 API Key:确定性加权哈希(FNV-1a)把同一调用方粘性绑定到同一把 key(TTL 内稳定,同位轮换不破黏性),权重决定分流比例;某把 key 失败时在该上游内轮换到下一把未试过的 key 重试,但不覆盖首次粘性绑定;weight=0 的 key 作备用,仅当所有 weight>0 的 key 都失败后才启用。
绑定状态(binding / 预测 / stale)在控制台逐行可观测。
与负载均衡器的跨上游 Smooth WRR 正交叠加:上游内选 key,负载均衡器跨上游选上游。
落地的 5 个手段
- 多 key 加权:确定性加权哈希分流,权重即比例
- 粘性绑定:同一调用方 TTL 内粘在同一把上游 key,缓存亲和
- 备用 key:weight=0 不参与常规分流,所有活跃 key 失败后才启用
- 绑定可观测:binding / 预测 / stale 状态逐行可查,3s 自动刷新
- 与 LB 正交:上游内选 key + 跨上游 Smooth WRR 叠加,双层分流