File size: 1,270 Bytes
04705fd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37ee371
04705fd
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
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()