vector_store_api / embeddings.py
JairoDanielMT's picture
Upload 7 files
ea83a52 verified
raw
history blame
897 Bytes
from langchain_huggingface import HuggingFaceEmbeddings
import torch
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
class EmbeddingManager:
_instance = None
def __new__(cls, *args, **kwargs):
if cls._instance is None:
cls._instance = super(EmbeddingManager, cls).__new__(cls, *args, **kwargs)
cls._instance.__initialized = False
return cls._instance
def __init__(self):
if self.__initialized:
return
self.__initialized = True
self.__embeddings = HuggingFaceEmbeddings(
model_name="jinaai/jina-embeddings-v2-base-es",
encode_kwargs={"normalize_embeddings": True},
model_kwargs={
"device": device,
},
)
@property
def get_embeddings(self):
return self.__embeddings