forked from peng-gao-lab/ctinexus
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathUsageCalculator.py
More file actions
33 lines (26 loc) · 1.04 KB
/
UsageCalculator.py
File metadata and controls
33 lines (26 loc) · 1.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import json
class UsageCalculator:
def __init__(self, response) -> None:
self.response = response
self.model = response.model
def calculate(self):
#import menu
with open ("tools/menu/menu.json", "r") as f:
data = json.load(f)
iprice = data[self.model]["input"]
oprice = data[self.model]["output"]
usageDict = {}
usageDict["model"] = self.model
usageDict["input"] = {
"tokens": self.response.usage.prompt_tokens,
"cost": iprice*self.response.usage.prompt_tokens
}
usageDict["output"] = {
"tokens": self.response.usage.completion_tokens,
"cost": oprice*self.response.usage.completion_tokens
}
usageDict["total"] = {
"tokens": self.response.usage.prompt_tokens+self.response.usage.completion_tokens,
"cost": iprice*self.response.usage.prompt_tokens+oprice*self.response.usage.completion_tokens
}
return usageDict