petrov826 commited on
Commit
f4ef49e
·
verified ·
1 Parent(s): 3a781f3

Rename rate_limiter.py to api_call_counter.py

Browse files
Files changed (2) hide show
  1. api_call_counter.py +13 -0
  2. rate_limiter.py +0 -32
api_call_counter.py ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import time
2
+
3
+ class APICallCounter:
4
+ """
5
+ litellmのAPI呼び出し回数をカウントする
6
+ """
7
+ def __init__(self):
8
+ """呼び出し回数を初期化する"""
9
+ self._call_count = 0 # 呼び出し回数
10
+
11
+ def reset(self):
12
+ """呼び出し回数をリセットする"""
13
+ self._call_count = 0
rate_limiter.py DELETED
@@ -1,32 +0,0 @@
1
- import time
2
-
3
- class RateLimiter:
4
- """
5
- litellmのAPI呼び出し回数をカウントして、
6
- 一定回数のAPI呼び出しが行われるたびに一定秒間待機する
7
- """
8
- def __init__(self, calls_per_wait: int = 10, seconds_to_wait: int = 60):
9
- """
10
- RateLimiterを初期化する
11
-
12
- Args:
13
- calls_per_wait (int): 待機するまでの呼び出し回数
14
- seconds_to_wait (int): 待機する秒数
15
- """
16
- self.calls_per_wait = calls_per_wait
17
- self.seconds_to_wait = seconds_to_wait
18
-
19
- self._call_count = 0 # 呼び出し回数
20
-
21
- def sleep_if_needed(self):
22
- """
23
- 呼び出し回数が`calls_per_wait`を超えていたら、
24
- APIの呼び出し回数をリセットして`seconds_to_wait`秒待機する
25
- その後、呼び出し回数を1増やす
26
- """
27
- if self._call_count >= self.calls_per_wait:
28
- print(f"呼び出し回数が{self.calls_per_wait}回を超えたので、{self.seconds_to_wait}秒待機します")
29
- time.sleep(self.seconds_to_wait)
30
- self._call_count = 0
31
-
32
- self._call_count += 1