| # embedding_handler.py | |
| from sentence_transformers import SentenceTransformer | |
| import numpy as np | |
| class EmbeddingHandler: | |
| def __init__(self, model_name: str = "intfloat/e5-base"): | |
| self.model = SentenceTransformer(model_name) | |
| def encode(self, text: str) -> np.ndarray: | |
| if not text: | |
| return np.zeros((768,)) | |
| return self.model.encode(text, convert_to_numpy=True, normalize_embeddings=True) | |