Repository navigation
v1.7.9 — 一个对话只用一个账号,新对话才换人
有人反馈:除了「优先模式」,换别的模式都会掉命中率、掉速度。这个观察是对的,而且原因不在你的网络——在账号切换本身。所以这次加了一种新模式,专门解决这件事。
为什么换个模式就会掉命中率
上游的 prompt 缓存是按账号隔离的,不是按你这个人。
所以「轮换模式」和「均衡模式」每发一条消息都可能换一个账号,对上游来说就是换了一个租户——整段对话的缓存全部作废,从第一个字重新算。命中率当然掉,首字延迟当然涨。
而「优先模式」把这一切都押在一个账号上:缓存稳了,速度好了,代价是这个账号的额度会被你一个人用完。
一句话:以前你只能在「额度分摊」和「缓存命中」之间选一个。
新增「每对话固定」模式
现在可以两个都要。
规则很简单:一个对话从头到尾只用一个账号;你新开一个对话,才轮到下一个账号。
- 同一个对话的每一轮都打同一个账号 → 上游缓存一直是热的 → 命中率和速度都是优先模式的水平。
- 新对话按顺序铺到下一个账号 → 额度还是分散在几个账号上,不会只烧一个。
卡片上「账号使用方式」里多了一个「每对话固定(推荐)」,点一下就能切。
默认值仍然是「优先模式」,没有偷偷改你的设置。 想试新模式,自己点一下;不满意,再点回来。
账号被限流或被你关掉,会自动换绑
绑定不是死契。如果这个对话的账号:
- 被上游限流了(只针对当前模型,别的模型照用),
- 被你在卡片上关掉了,
- 或者积分到了你设的保留线,
那么这个对话下一轮会自动换到一个能用的账号,并且以后就固定在新的那个账号上——不会每轮都重新挑,也不会因为一个账号打盹就让整个对话报错。
四种模式怎么选
- 每对话固定:多个对话同时用,既想省额度又想保住命中率。推荐先试这个。
- 优先模式:就一个对话,或者只有一个账号额度够用。缓存最稳。
- 轮换模式:不在乎速度,只想让几个账号的积分严格平均地掉。
- 均衡模式:随机抽,闲置越久的账号越容易被选中;比轮换更不容易被一个不健康的账号拖住。
已知边界
- 绑定只存在内存里,重启 DSH 后就忘了。影响很小:重启只是让每个对话重新认一次账号,之后照样固定。
- 绑定按对话的第一条用户消息区分。两个对话如果第一句话一字不差,会被当成同一个对话、共用账号。这种情况很少见,共用了也没有坏处,只是共享一份缓存。
- 最多记住 200 个对话的绑定,超了会淘汰最久没用过的那个。被淘汰的对话下一轮重新绑定一次,仅此一次,行为不受影响。