ParthSadaria commited on
Commit
07d4a0b
·
verified ·
1 Parent(s): ded5d5e

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +15 -1
main.py CHANGED
@@ -32,7 +32,20 @@ if not secret_api_endpoint or not secret_api_endpoint_2 or not secret_api_endpoi
32
  alternate_models = {"gpt-4o-mini", "claude-3-haiku", "llama-3.1-70b", "mixtral-8x7b"}
33
 
34
  available_model_ids = []
35
-
 
 
 
 
 
 
 
 
 
 
 
 
 
36
  class Payload(BaseModel):
37
  model: str
38
  messages: list
@@ -146,6 +159,7 @@ async def fetch_models():
146
 
147
  @app.post("/chat/completions")
148
  @app.post("/v1/chat/completions")
 
149
  async def get_completion(payload: Payload,request: Request):
150
  model_to_use = payload.model if payload.model else "gpt-4o-mini"
151
  # Validate model availability
 
32
  alternate_models = {"gpt-4o-mini", "claude-3-haiku", "llama-3.1-70b", "mixtral-8x7b"}
33
 
34
  available_model_ids = []
35
+ def check_server_status():
36
+ server_down = True
37
+
38
+ def decorator(func):
39
+ async def wrapper(*args, **kwargs):
40
+ if server_down:
41
+ raise HTTPException(
42
+ status_code=503,
43
+ detail="Server is currently unavailable. All services are temporarily down."
44
+ )
45
+ return await func(*args, **kwargs)
46
+ return wrapper
47
+ return decorator
48
+
49
  class Payload(BaseModel):
50
  model: str
51
  messages: list
 
159
 
160
  @app.post("/chat/completions")
161
  @app.post("/v1/chat/completions")
162
+ @check_server_status()
163
  async def get_completion(payload: Payload,request: Request):
164
  model_to_use = payload.model if payload.model else "gpt-4o-mini"
165
  # Validate model availability