From 19df2ac234d69d00ecdefa3e11c0a85d64361b4b Mon Sep 17 00:00:00 2001
From: Raymond <240029725@qq.com>
Date: Sat, 26 Jul 2025 17:09:38 +0800
Subject: [PATCH 1/2] =?UTF-8?q?=E6=A8=A1=E5=9E=8B=E8=AF=B7=E6=B1=82?=
=?UTF-8?q?=E9=80=9F=E7=8E=87=E9=99=90=E5=88=B6=EF=BC=8C=E5=A2=9E=E5=8A=A0?=
=?UTF-8?q?=E5=AF=B9=E8=AF=B7=E6=B1=82=E6=AC=A1=E6=95=B0=E6=9C=80=E5=A4=A7?=
=?UTF-8?q?=E5=80=BC=E7=9A=84=E9=99=90=E5=88=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
setting/rate_limit.go | 3 +++
web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js | 3 +++
2 files changed, 6 insertions(+)
diff --git a/setting/rate_limit.go b/setting/rate_limit.go
index 53b53f88..535fd831 100644
--- a/setting/rate_limit.go
+++ b/setting/rate_limit.go
@@ -58,6 +58,9 @@ func CheckModelRequestRateLimitGroup(jsonStr string) error {
if limits[0] < 0 || limits[1] < 1 {
return fmt.Errorf("group %s has negative rate limit values: [%d, %d]", group, limits[0], limits[1])
}
+ if limits[0] > 2147483647 || limits[1] > 2147483647 {
+ return fmt.Errorf("group %s [%d, %d] has max rate limits value 2147483647", group, limits[0], limits[1])
+ }
}
return nil
diff --git a/web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js b/web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js
index 85473ec9..d5b1c637 100644
--- a/web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js
+++ b/web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js
@@ -128,6 +128,7 @@ export default function RequestRateLimit(props) {
label={t('用户每周期最多请求次数')}
step={1}
min={0}
+ max={2147483647}
suffix={t('次')}
extraText={t('包括失败请求的次数,0代表不限制')}
field={'ModelRequestRateLimitCount'}
@@ -144,6 +145,7 @@ export default function RequestRateLimit(props) {
label={t('用户每周期最多请求完成次数')}
step={1}
min={1}
+ max={2147483647}
suffix={t('次')}
extraText={t('只包括请求成功的次数')}
field={'ModelRequestRateLimitSuccessCount'}
@@ -180,6 +182,7 @@ export default function RequestRateLimit(props) {
{t('使用 JSON 对象格式,格式为:{"组名": [最多请求次数, 最多请求完成次数]}')}
{t('示例:{"default": [200, 100], "vip": [0, 1000]}。')}
{t('[最多请求次数]必须大于等于0,[最多请求完成次数]必须大于等于1。')}
+ {t('[最多请求次数]和[最多请求完成次数]的最大值为2147483647。')}
{t('分组速率配置优先级高于全局速率限制。')}
{t('限制周期统一使用上方配置的“限制周期”值。')}
From bcf7e7866595ac1224065cf1b493e057e0a05310 Mon Sep 17 00:00:00 2001
From: Raymond <240029725@qq.com>
Date: Sun, 27 Jul 2025 16:01:59 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E6=A8=A1=E5=9E=8B=E8=AF=B7=E6=B1=82?=
=?UTF-8?q?=E9=80=9F=E7=8E=87=E9=99=90=E5=88=B6=EF=BC=8C=E5=A2=9E=E5=8A=A0?=
=?UTF-8?q?=E5=AF=B9=E8=AF=B7=E6=B1=82=E6=AC=A1=E6=95=B0=E6=9C=80=E5=A4=A7?=
=?UTF-8?q?=E5=80=BC=E7=9A=84=E9=99=90=E5=88=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
setting/rate_limit.go | 3 ++-
web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js | 4 ++--
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/setting/rate_limit.go b/setting/rate_limit.go
index 535fd831..d550b2c3 100644
--- a/setting/rate_limit.go
+++ b/setting/rate_limit.go
@@ -3,6 +3,7 @@ package setting
import (
"encoding/json"
"fmt"
+ "math"
"one-api/common"
"sync"
)
@@ -58,7 +59,7 @@ func CheckModelRequestRateLimitGroup(jsonStr string) error {
if limits[0] < 0 || limits[1] < 1 {
return fmt.Errorf("group %s has negative rate limit values: [%d, %d]", group, limits[0], limits[1])
}
- if limits[0] > 2147483647 || limits[1] > 2147483647 {
+ if limits[0] > math.MaxInt32 || limits[1] > math.MaxInt32 {
return fmt.Errorf("group %s [%d, %d] has max rate limits value 2147483647", group, limits[0], limits[1])
}
}
diff --git a/web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js b/web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js
index d5b1c637..60d58ba6 100644
--- a/web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js
+++ b/web/src/pages/Setting/RateLimit/SettingsRequestRateLimit.js
@@ -128,7 +128,7 @@ export default function RequestRateLimit(props) {
label={t('用户每周期最多请求次数')}
step={1}
min={0}
- max={2147483647}
+ max={100000}
suffix={t('次')}
extraText={t('包括失败请求的次数,0代表不限制')}
field={'ModelRequestRateLimitCount'}
@@ -145,7 +145,7 @@ export default function RequestRateLimit(props) {
label={t('用户每周期最多请求完成次数')}
step={1}
min={1}
- max={2147483647}
+ max={100000}
suffix={t('次')}
extraText={t('只包括请求成功的次数')}
field={'ModelRequestRateLimitSuccessCount'}