11import abc
22import enum
3+ import io
34import json
45import re
56import resource
7+ import wave
68
7- from fastapi .requests import Request
89import requests
10+ from fastapi .requests import Request
911from starlette .datastructures import MutableHeaders
10- import io
11- import wave
1212
1313from vllm_router .log import init_logger
1414
2626
2727 # retrieves the generated wav bytes, return
2828 _SILENT_WAV_BYTES = wav_buffer .getvalue ()
29- logger .debug ("======A default silent WAV file has been stored in memory within py application process====" )
29+ logger .debug (
30+ "======A default silent WAV file has been stored in memory within py application process===="
31+ )
3032
3133
3234class SingletonMeta (type ):
@@ -95,12 +97,11 @@ def get_test_payload(model_type: str):
9597 case ModelType .transcription :
9698 # Generate a 0.1 second silent audio file
9799 if _SILENT_WAV_BYTES is not None :
98- logger .debug ("=====Slient WAV Bytes is being used=====" )
100+ logger .debug ("=====Silent WAV Bytes is being used=====" )
99101 return {
100102 "file" : ("empty.wav" , _SILENT_WAV_BYTES , "audio/wav" ),
101103 }
102104
103-
104105 @staticmethod
105106 def get_all_fields ():
106107 return [model_type .name for model_type in ModelType ]
@@ -184,27 +185,25 @@ def update_content_length(request: Request, request_body: str):
184185
185186def is_model_healthy (url : str , model : str , model_type : str ) -> bool :
186187 model_details = ModelType [model_type ]
187-
188+
188189 try :
189190 if model_type == "transcription" :
190191
191192 # for transcription, the backend expects multipart/form-data with a file
192193 # we will use pre-generated silent wav bytes
193- files = {
194- "file" : ("empty.wav" , _SILENT_WAV_BYTES , "audio/wav" )
195- }
196- data = {"model" :model }
194+ files = {"file" : ("empty.wav" , _SILENT_WAV_BYTES , "audio/wav" )}
195+ data = {"model" : model }
197196 response = requests .post (
198197 f"{ url } { model_details .value } " ,
199198 files = files , # multipart/form-data
200- data = data
199+ data = data ,
201200 )
202201 else :
203202 # for other model types (chat, completion, etc.)
204203 response = requests .post (
205204 f"{ url } { model_details .value } " ,
206205 headers = {"Content-Type" : "application/json" },
207- json = {"model" :model } | model_details .get_test_payload (model_type )
206+ json = {"model" : model } | model_details .get_test_payload (model_type ),
208207 )
209208
210209 response .raise_for_status ()
@@ -219,5 +218,7 @@ def is_model_healthy(url: str, model: str, model_type: str) -> bool:
219218 return False
220219
221220 except json .JSONDecodeError as e :
222- logger .error (f"Failed to decode JSON from { model_type } model { model } at { url } : { e } " )
221+ logger .error (
222+ f"Failed to decode JSON from { model_type } model { model } at { url } : { e } "
223+ )
223224 return False
0 commit comments