Update models to cache the value of MAX_TEXT_LENGTH.
This commit is contained in:
@@ -3,6 +3,9 @@ from typing import List, Optional, Union, Dict, Any, Tuple
|
|||||||
import os
|
import os
|
||||||
|
|
||||||
|
|
||||||
|
MAX_TEXT_LENGTH = int(os.getenv("MAX_TEXT_LENGTH", "1000"))
|
||||||
|
|
||||||
|
|
||||||
# ==================== Request Models ====================
|
# ==================== Request Models ====================
|
||||||
class GeneralRequest(BaseModel):
|
class GeneralRequest(BaseModel):
|
||||||
text: Optional[str] = None
|
text: Optional[str] = None
|
||||||
@@ -21,13 +24,12 @@ class GeneralRequest(BaseModel):
|
|||||||
@field_validator('text', 'texts')
|
@field_validator('text', 'texts')
|
||||||
@classmethod
|
@classmethod
|
||||||
def validate_text_length(cls, v):
|
def validate_text_length(cls, v):
|
||||||
max_length = int(os.getenv("MAX_TEXT_LENGTH", "10000"))
|
if isinstance(v, str) and len(v) > MAX_TEXT_LENGTH:
|
||||||
if isinstance(v, str) and len(v) > max_length:
|
raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}")
|
||||||
raise ValueError(f"text exceeds maximum length of {max_length}")
|
|
||||||
if isinstance(v, list):
|
if isinstance(v, list):
|
||||||
for text in v:
|
for text in v:
|
||||||
if len(text) > max_length:
|
if len(text) > MAX_TEXT_LENGTH:
|
||||||
raise ValueError(f"text exceeds maximum length of {max_length}")
|
raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}")
|
||||||
return v
|
return v
|
||||||
|
|
||||||
|
|
||||||
@@ -56,13 +58,12 @@ class RelationExtractionRequest(BaseModel):
|
|||||||
@field_validator('text', 'texts')
|
@field_validator('text', 'texts')
|
||||||
@classmethod
|
@classmethod
|
||||||
def validate_text_length(cls, v):
|
def validate_text_length(cls, v):
|
||||||
max_length = int(os.getenv("MAX_TEXT_LENGTH", "10000"))
|
if isinstance(v, str) and len(v) > MAX_TEXT_LENGTH:
|
||||||
if isinstance(v, str) and len(v) > max_length:
|
raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}")
|
||||||
raise ValueError(f"text exceeds maximum length of {max_length}")
|
|
||||||
if isinstance(v, list):
|
if isinstance(v, list):
|
||||||
for text in v:
|
for text in v:
|
||||||
if len(text) > max_length:
|
if len(text) > MAX_TEXT_LENGTH:
|
||||||
raise ValueError(f"text exceeds maximum length of {max_length}")
|
raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}")
|
||||||
return v
|
return v
|
||||||
|
|
||||||
|
|
||||||
@@ -75,12 +76,11 @@ class SummarizationRequest(BaseModel):
|
|||||||
@field_validator('text', 'texts')
|
@field_validator('text', 'texts')
|
||||||
@classmethod
|
@classmethod
|
||||||
def validate_text_length(cls, v):
|
def validate_text_length(cls, v):
|
||||||
max_length = int(os.getenv("MAX_TEXT_LENGTH", "10000"))
|
if isinstance(v, str) and len(v) > MAX_TEXT_LENGTH:
|
||||||
if isinstance(v, str) and len(v) > max_length:
|
raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}")
|
||||||
raise ValueError(f"text exceeds maximum length of {max_length}")
|
|
||||||
if isinstance(v, list):
|
if isinstance(v, list):
|
||||||
for text in v:
|
for text in v:
|
||||||
if len(text) > max_length:
|
if len(text) > MAX_TEXT_LENGTH:
|
||||||
raise ValueError(f"text exceeds maximum length of {max_length}")
|
raise ValueError(f"text exceeds maximum length of {MAX_TEXT_LENGTH}")
|
||||||
return v
|
return v
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user