Niansuh commited on
Commit
361d6ea
·
verified ·
1 Parent(s): de6e4a8

Update api/utils.py

Browse files
Files changed (1) hide show
  1. api/utils.py +6 -44
api/utils.py CHANGED
@@ -6,13 +6,7 @@ import uuid
6
 
7
  import httpx
8
  from api import validate
9
- from api.config import (
10
- MODEL_MAPPING,
11
- MODEL_PREFIXES, # Import MODEL_PREFIXES
12
- headers,
13
- AGENT_MODE,
14
- TRENDING_AGENT_MODE
15
- )
16
  from fastapi import Depends, security
17
  from fastapi.security import HTTPAuthorizationCredentials
18
 
@@ -62,10 +56,6 @@ def message_to_dict(message):
62
  else:
63
  return {"role": message.role, "content": message.content}
64
 
65
- def get_model_prefix(model: str) -> str:
66
- """Retrieve the prefix for a given model."""
67
- return MODEL_PREFIXES.get(model, "")
68
-
69
  async def process_streaming_response(request: ChatRequest):
70
  agent_mode = AGENT_MODE.get(request.model, {})
71
  trending_agent_mode = TRENDING_AGENT_MODE.get(request.model, {})
@@ -99,11 +89,6 @@ async def process_streaming_response(request: ChatRequest):
99
  "validated": validate.getHid()
100
  }
101
 
102
- # Get the model prefix
103
- prefix = get_model_prefix(request.model)
104
- if prefix:
105
- prefix += " " # Add space after prefix
106
-
107
  async with httpx.AsyncClient() as client:
108
  try:
109
  async with client.stream(
@@ -121,25 +106,14 @@ async def process_streaming_response(request: ChatRequest):
121
  if "https://www.blackbox.ai" in content:
122
  validate.getHid(True)
123
  content = "hid已刷新,重新对话即可\n"
124
- # Prepend prefix to the content
125
- prefixed_content = prefix + content if prefix else content
126
- yield f"data: {json.dumps(create_chat_completion_data(prefixed_content, request.model, timestamp))}\n\n"
127
  break
128
  if content.startswith("$@$v=undefined-rv1$@$"):
129
- # Remove the special prefix and prepend model prefix
130
- actual_content = content[21:]
131
- prefixed_content = prefix + actual_content if prefix else actual_content
132
- yield f"data: {json.dumps(create_chat_completion_data(prefixed_content, request.model, timestamp))}\n\n"
133
  else:
134
- # Prepend model prefix to the content
135
- prefixed_content = prefix + content if prefix else content
136
- yield f"data: {json.dumps(create_chat_completion_data(prefixed_content, request.model, timestamp))}\n\n"
137
-
138
- # Indicate the end of the streaming response with the prefix
139
- finish_content = ''
140
- if prefix:
141
- finish_content = prefix
142
- yield f"data: {json.dumps(create_chat_completion_data(finish_content, request.model, timestamp, 'stop'))}\n\n"
143
  yield "data: [DONE]\n\n"
144
  except httpx.HTTPStatusError as e:
145
  logger.error(f"HTTP error occurred: {e}")
@@ -181,11 +155,6 @@ async def process_non_streaming_response(request: ChatRequest):
181
  "validated": validate.getHid()
182
  }
183
 
184
- # Get the model prefix
185
- prefix = get_model_prefix(request.model)
186
- if prefix:
187
- prefix += " " # Add space after prefix
188
-
189
  full_response = ""
190
  async with httpx.AsyncClient() as client:
191
  async with client.stream(
@@ -193,18 +162,11 @@ async def process_non_streaming_response(request: ChatRequest):
193
  ) as response:
194
  async for chunk in response.aiter_text():
195
  full_response += chunk
196
-
197
  if "https://www.blackbox.ai" in full_response:
198
  validate.getHid(True)
199
  full_response = "hid已刷新,重新对话即可"
200
-
201
  if full_response.startswith("$@$v=undefined-rv1$@$"):
202
  full_response = full_response[21:]
203
-
204
- # Prepend model prefix to the full response
205
- if prefix:
206
- full_response = prefix + full_response
207
-
208
  return {
209
  "id": f"chatcmpl-{uuid.uuid4()}",
210
  "object": "chat.completion",
 
6
 
7
  import httpx
8
  from api import validate
9
+ from api.config import MODEL_MAPPING, headers, AGENT_MODE, TRENDING_AGENT_MODE
 
 
 
 
 
 
10
  from fastapi import Depends, security
11
  from fastapi.security import HTTPAuthorizationCredentials
12
 
 
56
  else:
57
  return {"role": message.role, "content": message.content}
58
 
 
 
 
 
59
  async def process_streaming_response(request: ChatRequest):
60
  agent_mode = AGENT_MODE.get(request.model, {})
61
  trending_agent_mode = TRENDING_AGENT_MODE.get(request.model, {})
 
89
  "validated": validate.getHid()
90
  }
91
 
 
 
 
 
 
92
  async with httpx.AsyncClient() as client:
93
  try:
94
  async with client.stream(
 
106
  if "https://www.blackbox.ai" in content:
107
  validate.getHid(True)
108
  content = "hid已刷新,重新对话即可\n"
109
+ yield f"data: {json.dumps(create_chat_completion_data(content, request.model, timestamp))}\n\n"
 
 
110
  break
111
  if content.startswith("$@$v=undefined-rv1$@$"):
112
+ yield f"data: {json.dumps(create_chat_completion_data(content[21:], request.model, timestamp))}\n\n"
 
 
 
113
  else:
114
+ yield f"data: {json.dumps(create_chat_completion_data(content, request.model, timestamp))}\n\n"
115
+
116
+ yield f"data: {json.dumps(create_chat_completion_data('', request.model, timestamp, 'stop'))}\n\n"
 
 
 
 
 
 
117
  yield "data: [DONE]\n\n"
118
  except httpx.HTTPStatusError as e:
119
  logger.error(f"HTTP error occurred: {e}")
 
155
  "validated": validate.getHid()
156
  }
157
 
 
 
 
 
 
158
  full_response = ""
159
  async with httpx.AsyncClient() as client:
160
  async with client.stream(
 
162
  ) as response:
163
  async for chunk in response.aiter_text():
164
  full_response += chunk
 
165
  if "https://www.blackbox.ai" in full_response:
166
  validate.getHid(True)
167
  full_response = "hid已刷新,重新对话即可"
 
168
  if full_response.startswith("$@$v=undefined-rv1$@$"):
169
  full_response = full_response[21:]
 
 
 
 
 
170
  return {
171
  "id": f"chatcmpl-{uuid.uuid4()}",
172
  "object": "chat.completion",