File size: 563 Bytes
dd58f3d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
"""SentenceTransformer wrapper."""
from typing import List
from sentence_transformers import SentenceTransformer
from .config import EMBEDDING_MODEL, DEVICE
_model: SentenceTransformer | None = None
def _model_instance() -> SentenceTransformer:
global _model
if _model is None:
_model = SentenceTransformer(EMBEDDING_MODEL, device=DEVICE)
return _model
def embed_texts(texts: List[str]) -> List[List[float]]:
return _model_instance().encode(
texts,
show_progress_bar=False,
convert_to_numpy=False
).tolist()
|