Create embedding_handler.py
Browse files- embedding_handler.py +13 -0
embedding_handler.py
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# embedding_handler.py
|
| 2 |
+
|
| 3 |
+
from sentence_transformers import SentenceTransformer
|
| 4 |
+
import numpy as np
|
| 5 |
+
|
| 6 |
+
class EmbeddingHandler:
|
| 7 |
+
def __init__(self, model_name: str = "intfloat/e5-base"):
|
| 8 |
+
self.model = SentenceTransformer(model_name)
|
| 9 |
+
|
| 10 |
+
def encode(self, text: str) -> np.ndarray:
|
| 11 |
+
if not text:
|
| 12 |
+
return np.zeros((768,))
|
| 13 |
+
return self.model.encode(text, convert_to_numpy=True, normalize_embeddings=True)
|