|
|
|
import torch |
|
from langchain.embeddings import HuggingFaceEmbeddings |
|
|
|
|
|
def get_hf_embeddings(model_name=None): |
|
"""Get huggingface embedding.""" |
|
|
|
if model_name is None: |
|
|
|
|
|
|
|
|
|
|
|
model_name = "BAAI/bge-large-en-v1.5" |
|
|
|
embeddings = HuggingFaceEmbeddings(model_name=model_name) |
|
|
|
return embeddings |
|
|
|
|
|
def get_jinaai_embeddings(model_name="jinaai/jina-embeddings-v2-base-en", device="auto"): |
|
"""Get jinaai embedding.""" |
|
|
|
|
|
if device == "auto": |
|
device = "cuda" if torch.cuda.is_available() else "cpu" |
|
|
|
from transformers import AutoModel |
|
model = AutoModel.from_pretrained(model_name, trust_remote_code=True) |
|
|
|
model_name = model_name |
|
model_kwargs = {'device': device, "trust_remote_code": True} |
|
embeddings = HuggingFaceEmbeddings( |
|
model_name=model_name, |
|
model_kwargs=model_kwargs, |
|
) |
|
|
|
return embeddings |