Niansuh commited on
Commit
b774dec
·
verified ·
1 Parent(s): 97fa783

Update api/utils.py

Browse files
Files changed (1) hide show
  1. api/utils.py +4 -7
api/utils.py CHANGED
@@ -1,5 +1,4 @@
1
  from datetime import datetime
2
- import json
3
  import uuid
4
  import asyncio
5
  import random
@@ -47,7 +46,6 @@ def message_to_dict(message, model_prefix: Optional[str] = None):
47
  if model_prefix:
48
  content = f"{model_prefix} {content}"
49
  if isinstance(message.content, list) and len(message.content) == 2 and "image_url" in message.content[1]:
50
- # Ensure base64 images are always included for all models
51
  return {
52
  "role": message.role,
53
  "content": content,
@@ -68,7 +66,7 @@ async def process_streaming_response(request: ChatRequest):
68
  model_prefix = MODEL_PREFIXES.get(request.model, "")
69
 
70
  headers_api_chat = get_headers_api_chat(BASE_URL)
71
- validated_token = validate.getHid() # Get the validated token from validate.py
72
  logger.info(f"Retrieved validated token: {validated_token}")
73
 
74
  if request.model == 'o1-preview':
@@ -112,10 +110,9 @@ async def process_streaming_response(request: ChatRequest):
112
  async for line in response.aiter_lines():
113
  timestamp = int(datetime.now().timestamp())
114
  if line:
115
- # Directly yield each line without additional processing
116
- yield f"data: {json.dumps(create_chat_completion_data(line, request.model, timestamp))}\n\n"
117
 
118
- yield f"data: {json.dumps(create_chat_completion_data('', request.model, timestamp, 'stop'))}\n\n"
119
  yield "data: [DONE]\n\n"
120
  except httpx.HTTPStatusError as e:
121
  logger.error(f"HTTP error occurred: {e}")
@@ -134,7 +131,7 @@ async def process_non_streaming_response(request: ChatRequest):
134
 
135
  headers_api_chat = get_headers_api_chat(BASE_URL)
136
  headers_chat = get_headers_chat(BASE_URL, next_action=str(uuid.uuid4()), next_router_state_tree=json.dumps([""]))
137
- validated_token = validate.getHid() # Get the validated token from validate.py
138
 
139
  if request.model == 'o1-preview':
140
  delay_seconds = random.randint(20, 60)
 
1
  from datetime import datetime
 
2
  import uuid
3
  import asyncio
4
  import random
 
46
  if model_prefix:
47
  content = f"{model_prefix} {content}"
48
  if isinstance(message.content, list) and len(message.content) == 2 and "image_url" in message.content[1]:
 
49
  return {
50
  "role": message.role,
51
  "content": content,
 
66
  model_prefix = MODEL_PREFIXES.get(request.model, "")
67
 
68
  headers_api_chat = get_headers_api_chat(BASE_URL)
69
+ validated_token = validate.getHid()
70
  logger.info(f"Retrieved validated token: {validated_token}")
71
 
72
  if request.model == 'o1-preview':
 
110
  async for line in response.aiter_lines():
111
  timestamp = int(datetime.now().timestamp())
112
  if line:
113
+ # Stream line directly without additional processing or transformation
114
+ yield f"data: {line}\n\n"
115
 
 
116
  yield "data: [DONE]\n\n"
117
  except httpx.HTTPStatusError as e:
118
  logger.error(f"HTTP error occurred: {e}")
 
131
 
132
  headers_api_chat = get_headers_api_chat(BASE_URL)
133
  headers_chat = get_headers_chat(BASE_URL, next_action=str(uuid.uuid4()), next_router_state_tree=json.dumps([""]))
134
+ validated_token = validate.getHid()
135
 
136
  if request.model == 'o1-preview':
137
  delay_seconds = random.randint(20, 60)