from pydantic import BaseSettings from typing import Dict class Settings(BaseSettings): # A dictionary to map shipper_id to the appropriate model model_map: Dict[int, str] = { 61: "donut-v16", 81: "donut-v16", 139: "donut-v16", 165: "donut-v17", 145: "donut-v17", 127: "donut-v17", } space_base: str = "senga-ml" processor: str = "senga-ml/donut-v16" model: str = "senga-ml/donut-v16" 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" def get_model_url(self, shipper_id: int) -> str: model = self.model_map.get(shipper_id, "default-model") return f"https://{self.space_base}/{model}" settings = Settings()