Spaces:
Sleeping
Sleeping
File size: 1,145 Bytes
c46e765 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
from dotenv import load_dotenv
from transformers import pipeline
import os
load_dotenv()
class Config:
EMOTION_MODEL_NAME = os.getenv("EMOTION_MODEL_NAME", "j-hartmann/emotion-english-distilroberta-base")
SENTIMENT_MODEL_NAME = os.getenv("SENTIMENT_MODEL_NAME", "distilbert-base-uncased-finetuned-sst-2-english")
DEVICE = int(os.getenv("MODEL_DEVICE", "-1"))
class ModelRegistry:
def __init__(self):
self.models = {
"emotion": None,
"sentiment": None
}
def load_models(self):
print("Loading pretrained Hugging Face models...")
self.models["emotion"] = pipeline("text-classification", model=Config.EMOTION_MODEL_NAME, device=Config.DEVICE)
self.models["sentiment"] = pipeline("sentiment-analysis", model=Config.SENTIMENT_MODEL_NAME, device=Config.DEVICE)
print("Models loaded successfully and ready for inference.")
def initialize(self):
if not all(self.models.values()):
self.load_models()
def get(self, name: str):
return self.models.get(name)
model_registry = ModelRegistry()
|