From a2d34b53de1d47207d867d98dfce975c694ffbde Mon Sep 17 00:00:00 2001 From: Rock Chin <1010553892@qq.com> Date: Sat, 17 Dec 2022 17:21:20 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E6=A0=B9=E6=8D=AE=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E4=BF=AE=E6=94=B9keymgr=E7=BB=9F=E8=AE=A1=E7=9A=84=E6=96=87?= =?UTF-8?q?=E5=AD=97=E9=87=8F=E6=AF=94=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/openai/keymgr.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkg/openai/keymgr.py b/pkg/openai/keymgr.py index 03e2afd5..ec6805c0 100644 --- a/pkg/openai/keymgr.py +++ b/pkg/openai/keymgr.py @@ -72,7 +72,11 @@ class KeysManager: md5 = hashlib.md5(self.using_key.encode('utf-8')).hexdigest() if md5 not in self.usage: self.usage[md5] = 0 - self.usage[md5] += int((len(new_content.encode('utf-8')) - len(new_content)) / 2 + len(new_content)) + + # 经测算得出的理论与实际的偏差比例 + salt_rate = 0.94 + + self.usage[md5] += int((len(new_content.encode('utf-8')) - len(new_content)) / 2 + len(new_content))*salt_rate if self.usage[md5] >= self.api_key_usage_threshold: switch_result, key_name = self.auto_switch()