From 52d4224302cde7d3779e5552d66f2e6b32dd9988 Mon Sep 17 00:00:00 2001 From: Xiao Ji Ji Date: Wed, 18 Mar 2026 10:39:22 +0000 Subject: [PATCH] fix: Correct type annotations and improve exception handling - Fix is_blocking field type from str to bool in ModelPermission (both api_protocol.py and openai_api_protocol.py) - Replace bare except: clauses with specific exception types in api_provider.py, monitor.py, and utils.py These fixes improve type safety and prevent catching SystemExit/KeyboardInterrupt exceptions. --- fastchat/protocol/api_protocol.py | 2 +- fastchat/protocol/openai_api_protocol.py | 2 +- fastchat/serve/api_provider.py | 2 +- fastchat/serve/monitor/monitor.py | 2 +- fastchat/utils.py | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/fastchat/protocol/api_protocol.py b/fastchat/protocol/api_protocol.py index 2dc99449d..6c72c1377 100644 --- a/fastchat/protocol/api_protocol.py +++ b/fastchat/protocol/api_protocol.py @@ -24,7 +24,7 @@ class ModelPermission(BaseModel): allow_fine_tuning: bool = False organization: str = "*" group: Optional[str] = None - is_blocking: str = False + is_blocking: bool = False class ModelCard(BaseModel): diff --git a/fastchat/protocol/openai_api_protocol.py b/fastchat/protocol/openai_api_protocol.py index bb50a5ef0..990f1f804 100644 --- a/fastchat/protocol/openai_api_protocol.py +++ b/fastchat/protocol/openai_api_protocol.py @@ -24,7 +24,7 @@ class ModelPermission(BaseModel): allow_fine_tuning: bool = False organization: str = "*" group: Optional[str] = None - is_blocking: str = False + is_blocking: bool = False class ModelCard(BaseModel): diff --git a/fastchat/serve/api_provider.py b/fastchat/serve/api_provider.py index 2e967e3ef..3c168d1a6 100644 --- a/fastchat/serve/api_provider.py +++ b/fastchat/serve/api_provider.py @@ -1262,7 +1262,7 @@ def reka_api_stream_iter( for chunk in response: try: yield {"text": chunk.responses[0].chunk.content, "error_code": 0} - except: + except Exception: yield { "text": f"**API REQUEST ERROR** ", "error_code": 1, diff --git a/fastchat/serve/monitor/monitor.py b/fastchat/serve/monitor/monitor.py index 462e38187..92758ecc5 100644 --- a/fastchat/serve/monitor/monitor.py +++ b/fastchat/serve/monitor/monitor.py @@ -886,7 +886,7 @@ def get_model_name(model_key): "Model" ].values[0] return model_name - except: + except (KeyError, IndexError, TypeError): return None combined_table = [] diff --git a/fastchat/utils.py b/fastchat/utils.py index d3531928f..dcb2833c8 100644 --- a/fastchat/utils.py +++ b/fastchat/utils.py @@ -450,7 +450,7 @@ def image_moderation_request(image_bytes, endpoint, api_key): try: if response["Status"]["Code"] == 3000: break - except: + except (KeyError, TypeError): time.sleep(0.5) return response