import os from typing import List, Optional from sentence_transformers import SentenceTransformer from functools import lru_cache from dotenv import load_dotenv @lru_cache(maxsize=1) def get_sentence_transformer() -> SentenceTransformer: """Loads and caches the Sentence Transformer model.""" try: model = SentenceTransformer("sentence-transformers/all-MiniLM-L6-v2") print("✅ Sentence Transformer Model Loaded") return model except Exception as e: print(f"❌ Error loading Sentence Transformer: {str(e)}") raise RuntimeError("Failed to load Sentence Transformer model.") def get_cached_embeddings(text: str, model_type: str) -> Optional[List[float]]: pass def set_cached_embeddings(text: str, model_type: str, embeddings: List[float]): pass