yym68686 commited on
Commit
25e0bb8
·
1 Parent(s): 9892a5f

🐛 Bug: Fix the bug where request information cannot be stored in the database.

Browse files
Files changed (1) hide show
  1. main.py +3 -26
main.py CHANGED
@@ -261,29 +261,6 @@ if not DISABLE_DATABASE:
261
  from starlette.types import Scope, Receive, Send
262
  from starlette.responses import Response
263
 
264
- from decimal import Decimal, getcontext
265
-
266
- # 设置全局精度
267
- getcontext().prec = 17 # 设置为17是为了确保15位小数的精度
268
-
269
- def calculate_cost(model: str, input_tokens: int, output_tokens: int) -> Decimal:
270
- costs = {
271
- "gpt-4": {"input": Decimal('5.0') / Decimal('1000000'), "output": Decimal('15.0') / Decimal('1000000')},
272
- "claude-3-sonnet": {"input": Decimal('3.0') / Decimal('1000000'), "output": Decimal('15.0') / Decimal('1000000')}
273
- }
274
-
275
- if model not in costs:
276
- logger.error(f"Unknown model: {model}")
277
- return 0
278
-
279
- model_costs = costs[model]
280
- input_cost = Decimal(input_tokens) * model_costs["input"]
281
- output_cost = Decimal(output_tokens) * model_costs["output"]
282
- total_cost = input_cost + output_cost
283
-
284
- # 返回精确到15位小数的结果
285
- return total_cost.quantize(Decimal('0.000000000000001'))
286
-
287
  from asyncio import Semaphore
288
 
289
  # 创建一个信号量来控制数据库访问
@@ -383,9 +360,9 @@ class LoggingStreamingResponse(Response):
383
  await self.body_iterator.aclose()
384
  self._closed = True
385
 
386
- process_time = time() - self.current_info["start_time"]
387
- self.current_info["process_time"] = process_time
388
- await update_stats(self.current_info)
389
 
390
  async def _logging_iterator(self):
391
  try:
 
261
  from starlette.types import Scope, Receive, Send
262
  from starlette.responses import Response
263
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
264
  from asyncio import Semaphore
265
 
266
  # 创建一个信号量来控制数据库访问
 
360
  await self.body_iterator.aclose()
361
  self._closed = True
362
 
363
+ process_time = time() - self.current_info["start_time"]
364
+ self.current_info["process_time"] = process_time
365
+ await update_stats(self.current_info)
366
 
367
  async def _logging_iterator(self):
368
  try: