Update api/routes.py
Browse files- api/routes.py +13 -7
api/routes.py
CHANGED
@@ -39,7 +39,9 @@ async def chat_completions(
|
|
39 |
logger.info("Entering chat_completions route")
|
40 |
logger.info(f"Processing chat completion request for model: {request.model}")
|
41 |
|
42 |
-
|
|
|
|
|
43 |
raise HTTPException(
|
44 |
status_code=400,
|
45 |
detail=f"Model {request.model} is not allowed. Allowed models are: {', '.join(AmigoChat.models)}",
|
@@ -47,17 +49,21 @@ async def chat_completions(
|
|
47 |
|
48 |
if request.stream:
|
49 |
logger.info("Streaming response")
|
50 |
-
return StreamingResponse(
|
|
|
|
|
|
|
|
|
51 |
else:
|
52 |
logger.info("Non-streaming response")
|
53 |
response = await process_non_streaming_response(request)
|
54 |
return Response(content=json.dumps(response), media_type="application/json")
|
55 |
|
56 |
-
@router.
|
57 |
-
@router.
|
58 |
-
@router.
|
59 |
-
@router.
|
60 |
-
@router.
|
61 |
@router.get("/health")
|
62 |
def health_check(request: Request):
|
63 |
return Response(content=json.dumps({"status": "ok"}), media_type="application/json")
|
|
|
39 |
logger.info("Entering chat_completions route")
|
40 |
logger.info(f"Processing chat completion request for model: {request.model}")
|
41 |
|
42 |
+
valid_models = AmigoChat.models + list(AmigoChat.model_aliases.keys())
|
43 |
+
|
44 |
+
if request.model not in valid_models:
|
45 |
raise HTTPException(
|
46 |
status_code=400,
|
47 |
detail=f"Model {request.model} is not allowed. Allowed models are: {', '.join(AmigoChat.models)}",
|
|
|
49 |
|
50 |
if request.stream:
|
51 |
logger.info("Streaming response")
|
52 |
+
return StreamingResponse(
|
53 |
+
process_streaming_response(request),
|
54 |
+
media_type="text/event-stream",
|
55 |
+
headers={"Cache-Control": "no-cache"},
|
56 |
+
)
|
57 |
else:
|
58 |
logger.info("Non-streaming response")
|
59 |
response = await process_non_streaming_response(request)
|
60 |
return Response(content=json.dumps(response), media_type="application/json")
|
61 |
|
62 |
+
@router.get('/')
|
63 |
+
@router.get('/healthz')
|
64 |
+
@router.get('/ready')
|
65 |
+
@router.get('/alive')
|
66 |
+
@router.get('/status')
|
67 |
@router.get("/health")
|
68 |
def health_check(request: Request):
|
69 |
return Response(content=json.dumps({"status": "ok"}), media_type="application/json")
|