C2MV commited on
Commit
3319241
1 Parent(s): 4aa57d2

Update config.py

Browse files
Files changed (1) hide show
  1. config.py +28 -36
config.py CHANGED
@@ -1,36 +1,28 @@
1
- # config.py
2
-
3
- import os
4
- from pydantic import BaseModel, ConfigDict
5
-
6
- # Clase de configuración usando pydantic
7
- class MyModel(BaseModel):
8
- model_config = ConfigDict(arbitrary_types_allowed=True)
9
-
10
- # Configuración de la API de Pinecone
11
- PINECONE_API_KEY = os.getenv("PINECONE_API_KEY")
12
- PINECONE_ENVIRONMENT = os.getenv("PINECONE_ENVIRONMENT")
13
-
14
- # Configuraciones del modelo
15
- EMBEDDING_MODEL_NAME = "BAAI/bge-m3"
16
- EMBED_MODEL = 'BGE_M3-1024'
17
- DIMENSIONS = 1024
18
-
19
- # Nombre del índice de Pinecone
20
- INDEX_NAME = 'neonatos2'
21
-
22
- # Campos de contexto y enlace
23
- CONTEXT_FIELDS = ['Tag', 'Pregunta', 'Respuesta']
24
- LINK_FIELDS = ['Tag', 'Respuesta']
25
-
26
- # Umbral de similitud por defecto
27
- SIMILARITY_THRESHOLD_DEFAULT = 0.5
28
-
29
- # Prompt del sistema para Yi-Coder
30
- SYSTEM_PROMPT = """
31
- Eres un asistente en salud neonatal en Perú, responde y saluda de forma adecuada,
32
- solo responde en forma de texto de usuario no del chat completo.
33
- """
34
-
35
- # Longitud máxima por defecto para las respuestas generadas
36
- MAX_LENGTH_DEFAULT = 100
 
1
+ # models.py
2
+
3
+ import torch
4
+ from transformers import AutoTokenizer, AutoModelForCausalLM
5
+ from sentence_transformers import SentenceTransformer
6
+ from config import EMBEDDING_MODEL_NAME
7
+ from pydantic import BaseModel
8
+
9
+ # Clase para los modelos (opcional, si deseas utilizar pydantic)
10
+ class Models(BaseModel):
11
+ embedding_model: SentenceTransformer
12
+ tokenizer: AutoTokenizer
13
+ yi_coder_model: AutoModelForCausalLM
14
+ device: torch.device
15
+
16
+ # Cargar el modelo de embeddings
17
+ def load_embedding_model():
18
+ device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
19
+ embedding_model = SentenceTransformer(EMBEDDING_MODEL_NAME, device=device)
20
+ return embedding_model
21
+
22
+ # Cargar el modelo Yi-Coder
23
+ def load_yi_coder_model():
24
+ device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
25
+ model_path = "01-ai/Yi-Coder-9B-Chat" # Asegúrate de que esta ruta sea correcta
26
+ tokenizer = AutoTokenizer.from_pretrained(model_path)
27
+ yi_coder_model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype=torch.float16).to(device).eval()
28
+ return tokenizer, yi_coder_model, device