diff --git a/gliner_inference_server/models.py b/gliner_inference_server/models.py index 9958933..afbd03b 100644 --- a/gliner_inference_server/models.py +++ b/gliner_inference_server/models.py @@ -3,6 +3,9 @@ from typing import List, Optional, Union, Dict, Any, Tuple import os +MAX_TEXT_LENGTH = int(os.getenv("MAX_TEXT_LENGTH", "1000")) + + # ==================== Request Models ==================== class GeneralRequest(BaseModel): text: Optional[str] = None @@ -21,13 +24,12 @@ class GeneralRequest(BaseModel): @field_validator('text', 'texts') @classmethod def validate_text_length(cls, v): - max_length = int(os.getenv("MAX_TEXT_LENGTH", "10000")) - if isinstance(v, str) and len(v) > max_length: - raise ValueError(f"text exceeds maximum length of {max_length}") + if isinstance(v, str) and len(v) > MAX_TEXT_LENGTH: + raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}") if isinstance(v, list): for text in v: - if len(text) > max_length: - raise ValueError(f"text exceeds maximum length of {max_length}") + if len(text) > MAX_TEXT_LENGTH: + raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}") return v @@ -56,13 +58,12 @@ class RelationExtractionRequest(BaseModel): @field_validator('text', 'texts') @classmethod def validate_text_length(cls, v): - max_length = int(os.getenv("MAX_TEXT_LENGTH", "10000")) - if isinstance(v, str) and len(v) > max_length: - raise ValueError(f"text exceeds maximum length of {max_length}") + if isinstance(v, str) and len(v) > MAX_TEXT_LENGTH: + raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}") if isinstance(v, list): for text in v: - if len(text) > max_length: - raise ValueError(f"text exceeds maximum length of {max_length}") + if len(text) > MAX_TEXT_LENGTH: + raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}") return v @@ -75,12 +76,11 @@ class SummarizationRequest(BaseModel): @field_validator('text', 'texts') @classmethod def validate_text_length(cls, v): - max_length = int(os.getenv("MAX_TEXT_LENGTH", "10000")) - if isinstance(v, str) and len(v) > max_length: - raise ValueError(f"text exceeds maximum length of {max_length}") + if isinstance(v, str) and len(v) > MAX_TEXT_LENGTH: + raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}") if isinstance(v, list): for text in v: - if len(text) > max_length: - raise ValueError(f"text exceeds maximum length of {max_length}") + if len(text) > MAX_TEXT_LENGTH: + raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}") return v