Spaces:
Running
Running
| import logging | |
| import os | |
| from pydantic import BaseModel, Field | |
| # π SPEED OPTIMIZATION: Force HF to use the high-speed Rust transfer protocol | |
| os.environ["HF_HUB_ENABLE_HF_TRANSFER"] = "1" | |
| # Set standard logging | |
| logging.basicConfig( | |
| level=logging.INFO, | |
| format="%(asctime)s [%(levelname)s] %(name)s: %(message)s", | |
| datefmt="%H:%M:%S" | |
| ) | |
| # π SILENCE THE HTTP SPAM | |
| logging.getLogger("httpx").setLevel(logging.WARNING) | |
| logging.getLogger("httpcore").setLevel(logging.WARNING) | |
| logging.getLogger("uvicorn.access").setLevel(logging.WARNING) | |
| logging.getLogger("uvicorn.error").setLevel(logging.WARNING) | |
| def get_logger(name: str): | |
| return logging.getLogger(name) | |
| class AppConfig(BaseModel): | |
| # FORCE Zarr to use the guaranteed-writable /tmp directory on HF Spaces | |
| cache_dir: str = Field(default="/tmp/video_cache.zarr", description="Strict Zarr v3 SSD cache") | |
| clip_model_id: str = Field(default="openai/clip-vit-base-patch32") | |
| vlm_model_id: str = Field(default="vikhyatk/moondream2") | |
| vlm_revision: str = Field(default="main") | |
| collection_name: str = Field(default="multimodal_rag") | |
| default_fps: int = Field(default=1) | |
| batch_size: int = Field(default=64, description="Batch size for faster CLIP processing") | |
| config = AppConfig() |