Spaces:
Sleeping
Sleeping
from pydantic import BaseSettings | |
class Settings(BaseSettings): | |
# Default values for the processor and model | |
processor: str = "senga-ml/naivas_lpos" | |
model: str = "senga-ml/naivas_lpos" | |
dataset: str = "senga-ml/dnotes-data-v6" | |
base_config: str = "naver-clova-ix/donut-base" | |
base_processor: str = "naver-clova-ix/donut-base" | |
base_model: str = "naver-clova-ix/donut-base" | |
inference_stats_file: str = "data/donut_inference_stats.json" | |
training_stats_file: str = "data/donut_training_stats.json" | |
evaluate_stats_file: str = "data/donut_evaluate_stats.json" | |
# The shipper_id to dynamically select model and processor | |
shipper_id: str = "default_shipper" | |
# Function to dynamically select model and processor based on shipper_id | |
def set_model(self): | |
if self.shipper_id == "61": | |
self.model = "senga-ml/donut-16" | |
self.processor = "senga-ml/donut-16" | |
elif self.shipper_id == "81": | |
self.model = "senga-ml/donut-16" | |
self.processor = "senga-ml/donut-16" | |
elif self.shipper_id == "139": | |
self.model = "senga-ml/donut-16" | |
self.processor = "senga-ml/donut-16" | |
elif self.shipper_id == "165" | |
self.model = "senga-ml/donut-17" | |
self.processor = "senga-ml/donut-17" | |
elif self.shipper_id == "127" | |
self.model = "senga-ml/donut-17" | |
self.processor = "senga-ml/donut-17" | |
elif self.shipper_id == "145" | |
self.model = "senga-ml/donut-17" | |
self.processor = "senga-ml/donut-17" | |
else: | |
self.model = self.base_model # Default to base model | |
self.processor = self.base_processor # Default to base processor | |
# Initialize dynamic model selection when settings are loaded | |
def __init__(self, **kwargs): | |
super().__init__(**kwargs) | |
self.set_model() # Set the model based on shipper_id | |
settings = Settings() | |