-
-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor ratio #2038
base: main
Are you sure you want to change the base?
Refactor ratio #2038
Conversation
还是统一使用 ctxkey 比较好,你可以让 |
请教下这个重构的意义是什么,带来了什么新功能吗或解决了什么问题吗? |
See #2023 |
看了下,感觉很不错。不过我觉得没必要在页面上保留那两个【已废弃】,能自动将历史数据转为新格式就更好了。 |
Hi @songquanpeng, would you please help review and merge the code? |
感觉是多此一举,补全倍率很少去配置,这样修改后反而每个模型都要配置补全,反向优化 |
DELETED, 详见下面的新回复 |
@WqyJh 感觉还是有几个地方可以优化下 加载 Option 的时候,仅当 Ratio 为空时才需要合并旧数据,不用每次启动都合并一次Lines 101 to 114 in f2bff58
Option 内的 Ratio 支持更细粒度的缺省值解决 @popdo 提到的问题,用户编辑倍率的时候,可能并不需要为每一个模型都写上 Input 和 Output 倍率,而是仅需要编写和默认值不一样的项即可。 在下面的代码里,让读取 ratio 更细粒度一些。在从 one-api/relay/controller/helper.go Lines 200 to 211 in f2bff58
|
算是 breaking change,在 One API 不同派生项目中也没办法通用,不过目前的倍率配置确实是有点乱,我先看看哈 |
如果能自动将旧数据转换为新格式存新表的话就还好,升级回滚都可以自动完成。 |
@songquanpeng 建议优先处理一下这个问题,计费系统已经到了不得不大改的地步了。不然下游只能选择硬分叉,后期再加新模型就很难合并回来了。 几个痛点:
这个 PR 稍微再优化一下,可以很好的解决所有的问题 |
是不是可以将模型列表和倍率建一张表,通过页面、接口去增加模型 |
因为不同 channel 可能有同名模型,但是费率不同,集中管理会很麻烦。 或者给费率增加一个字段可以绑定到特定 channel,默认不绑定。 |
像new-api那样 通过令牌分组倍率来区分同名模型的不同价格比较好,不然用户调同个模型 多种价格就很迷惑。用户看的也是一脸懵逼。 |
分组倍率这个功能是有的,但是粒度是 channel 级的。 |
close #2023
我已确认该 PR 已自测通过,相关截图如下:
默认倍率

自定义倍率配置

自定义倍率前后对比
