from langchain_openai import OpenAIEmbeddings from langchain_huggingface.embeddings import HuggingFaceEmbeddings from langchain_community.embeddings import HuggingFaceInferenceAPIEmbeddings from app.settings import settings def get_embedder(provider: str = "hf_api"): if provider == "hf_local": return HuggingFaceEmbeddings( model_name=settings.embedding_model_name, ) if provider == "hf_api": return HuggingFaceInferenceAPIEmbeddings( model_name=settings.embedding_model_name, api_key=settings.hf_token, ) if provider == "openai": return OpenAIEmbeddings( openai_api_key=settings.scw_api_key, openai_api_base=settings.scw_generative_apis_endpoint, model=settings.embedding_model_name, tiktoken_enabled=False, ) return None