File size: 683 Bytes
76398fd 0ddd1d3 76398fd 0ddd1d3 76398fd 0ddd1d3 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | """SentenceTransformer embedding model singleton provider."""
from sentence_transformers import SentenceTransformer
_embedder = None
def get_embedding_model() -> SentenceTransformer:
"""Loads and caches the SentenceTransformer model from local cache with download fallback."""
global _embedder
if _embedder is None:
try:
print("Loading embedding model from local cache...")
_embedder = SentenceTransformer("all-MiniLM-L6-v2", local_files_only=True)
except Exception:
print("Local cache not found. Downloading embedding model...")
_embedder = SentenceTransformer("all-MiniLM-L6-v2")
return _embedder
|