Spaces:
Running
on
Zero
Running
on
Zero
# models.py | |
import torch | |
from transformers import AutoTokenizer, AutoModelForCausalLM | |
from sentence_transformers import SentenceTransformer | |
from config import EMBEDDING_MODEL_NAME | |
from pydantic import BaseModel, ConfigDict | |
class MyModel(BaseModel): | |
model_config = ConfigDict(arbitrary_types_allowed=True) | |
# Cargar el modelo de embeddings | |
def load_embedding_model(): | |
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') | |
embedding_model = SentenceTransformer(EMBEDDING_MODEL_NAME, device=device) | |
return embedding_model | |
# Cargar el modelo Yi-Coder | |
def load_yi_coder_model(): | |
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') | |
model_path = "01-ai/Yi-Coder-9B-Chat" # Asegúrate de que esta ruta sea correcta | |
tokenizer = AutoTokenizer.from_pretrained(model_path) | |
yi_coder_model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype=torch.float16).to(device).eval() | |
return tokenizer, yi_coder_model, device |