Spaces:
Running
Running
| import torch | |
| from sentence_transformers import SentenceTransformer | |
| from groq import Groq | |
| from config import CLIP_MODEL_NAME, GROQ_API_KEY, LLM_MODEL_NAME | |
| from langchain_groq import ChatGroq | |
| def get_clip_model(model_name: str = CLIP_MODEL_NAME): | |
| device = "cuda" if torch.cuda.is_available() else "cpu" | |
| try: | |
| model = SentenceTransformer(model_name, trust_remote_code=True) | |
| model.to(device) | |
| return model | |
| except Exception as e: | |
| print(f"Fallback CLIP model due to: {e}") | |
| return SentenceTransformer('clip-ViT-B-32') | |
| def get_llm(model_name: str = LLM_MODEL_NAME): | |
| return ChatGroq(model=model_name, api_key=GROQ_API_KEY, temperature=0.1) | |
| def get_groq_client(api_key: str = GROQ_API_KEY): | |
| return Groq(api_key=api_key) | |