yuvrajsingh6
fix: Fix module imports and paths for HF Spaces
4ba4b25
from sentence_transformers import SentenceTransformer
from typing import List
import numpy as np
from backend.app.config import settings
class EmbeddingService:
def __init__(self):
self.model = SentenceTransformer(settings.EMBEDDING_MODEL)
self.dimension = 384
def embed_text(self, text: str) -> List[float]:
embedding = self.model.encode(text, convert_to_numpy=True)
return embedding.tolist()
def embed_batch(self, texts: List[str]) -> List[List[float]]:
embeddings = self.model.encode(texts, convert_to_numpy=True, batch_size=32)
return embeddings.tolist()
def calculate_similarity(
self, embedding1: List[float], embedding2: List[float]
) -> float:
vec1 = np.array(embedding1)
vec2 = np.array(embedding2)
dot_product = np.dot(vec1, vec2)
norm1 = np.linalg.norm(vec1)
norm2 = np.linalg.norm(vec2)
return float(dot_product / (norm1 * norm2))
embedding_service = EmbeddingService()