Niansuh commited on
Commit
ddb7871
·
verified ·
1 Parent(s): 611e4dd

Update api/utils.py

Browse files
Files changed (1) hide show
  1. api/utils.py +10 -8
api/utils.py CHANGED
@@ -1,22 +1,24 @@
1
  from fastapi import HTTPException
 
2
  from api.config import MODEL_PROVIDER_MAPPING
3
  from api.models import ChatRequest
4
- from api.provider import blackboxai, gizai
 
 
 
5
 
6
  async def process_streaming_response(request: ChatRequest):
7
  provider_name = MODEL_PROVIDER_MAPPING.get(request.model)
8
- if provider_name == 'blackboxai':
9
- return await blackboxai.process_streaming_response(request)
10
- elif provider_name == 'gizai':
11
- return await gizai.process_streaming_response(request)
12
  else:
13
  raise HTTPException(status_code=400, detail=f"Model {request.model} is not supported for streaming.")
14
 
15
  async def process_non_streaming_response(request: ChatRequest):
16
  provider_name = MODEL_PROVIDER_MAPPING.get(request.model)
17
- if provider_name == 'blackboxai':
18
- return await blackboxai.process_non_streaming_response(request)
19
- elif provider_name == 'gizai':
20
  return await gizai.process_non_streaming_response(request)
21
  else:
22
  raise HTTPException(status_code=400, detail=f"Model {request.model} is not supported.")
 
1
  from fastapi import HTTPException
2
+ from fastapi.responses import StreamingResponse
3
  from api.config import MODEL_PROVIDER_MAPPING
4
  from api.models import ChatRequest
5
+ from api.provider import gizai
6
+ from api.logger import setup_logger
7
+
8
+ logger = setup_logger(__name__)
9
 
10
  async def process_streaming_response(request: ChatRequest):
11
  provider_name = MODEL_PROVIDER_MAPPING.get(request.model)
12
+ if provider_name == 'gizai':
13
+ # GizAI does not support streaming; process as non-streaming
14
+ response = await gizai.process_non_streaming_response(request)
15
+ return StreamingResponse(iter([json.dumps(response)]), media_type="application/json")
16
  else:
17
  raise HTTPException(status_code=400, detail=f"Model {request.model} is not supported for streaming.")
18
 
19
  async def process_non_streaming_response(request: ChatRequest):
20
  provider_name = MODEL_PROVIDER_MAPPING.get(request.model)
21
+ if provider_name == 'gizai':
 
 
22
  return await gizai.process_non_streaming_response(request)
23
  else:
24
  raise HTTPException(status_code=400, detail=f"Model {request.model} is not supported.")