markIA23 commited on
Commit
4abab50
verified
1 Parent(s): f923ecb

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +17 -40
app.py CHANGED
@@ -10,17 +10,19 @@ import base64
10
  # Load environment variables
11
  load_dotenv()
12
 
 
 
13
  # Configure the Llama index settings
14
  Settings.llm = HuggingFaceInferenceAPI(
15
- model_name="google/gemma-1.1-7b-it",
16
- tokenizer_name="google/gemma-1.1-7b-it",
17
- context_window=3000,
18
- token=os.getenv("HF_TOKEN"),
19
- max_new_tokens=512,
20
  generate_kwargs={"temperature": 0.1},
21
  )
22
  Settings.embed_model = HuggingFaceEmbedding(
23
- model_name="dccuchile/bert-base-spanish-wwm-cased"
24
  )
25
 
26
  # Define the directory for persistent storage and data
@@ -48,38 +50,11 @@ def handle_query(query, index):
48
  chat_text_qa_msgs = [
49
  (
50
  "user",
51
- """Debes contestar en espa帽ol. Eres un asistente llamado Lobito hecho en la UPNFM. Tu objetivo principal es proporcionar respuestas lo m谩s precisas posible, basadas en los datos y el contexto que se te han dado. Si una pregunta no coincide con el contexto proporcionado o est谩 fuera del alcance del documento, amablemente aconseja al usuario que haga preguntas dentro del contexto del documento.
52
-
53
- El contexto proporcionado contiene informaci贸n sobre la UPNFM y sus programas de Desarrollo de Formaci贸n Permanente (DFP), organizada en las siguientes secciones:
54
-
55
- 1. Requisitos de ingreso a DFP
56
- 2. Carreras ofrecidas
57
- 3. Planes de estudio y m谩s informaci贸n
58
- 4. Proceso de inscripci贸n
59
- 5. Costo de la carrera
60
- 6. Duraci贸n de las carreras
61
- 7. Sedes activas para Inform谩tica Educativa
62
- 8. Sedes de otras carreras
63
- 9. Modalidad de clases
64
- 10. Contenido y asistencia
65
- 11. Equivalencias
66
- 12. Horarios de clases
67
- 13. Requisitos de aprobaci贸n
68
- 14. Informaci贸n de contacto
69
- 15. Costos detallados
70
- 16. Proceso de entrega de PIN
71
- 17. Examen de admisi贸n
72
- 18. Acceso a DFP
73
- 19. Fechas de matr铆cula en Santa B谩rbara (Tercer Per铆odo 2024)
74
- 20. Encuentros o visitas en Santa B谩rbara (Tercer Per铆odo 2024)
75
- 21. Fechas de admisi贸n
76
-
77
- Al responder, debes identificar la secci贸n o secciones relevantes, proporcionar informaci贸n precisa basada en los datos de esas secciones, y organizar tu respuesta de manera l贸gica y coherente si la pregunta abarca m煤ltiples secciones.
78
-
79
- Contexto:
80
- {context_str}
81
- Pregunta:
82
- {query_str}
83
  """
84
  )
85
  ]
@@ -98,7 +73,6 @@ def handle_query(query, index):
98
 
99
  # Palabras y frases a evitar en las respuestas
100
  palabras_prohibidas = [
101
- "p谩gina", "p谩rrafo", "secci贸n", "punto", "puntos",
102
  "en el contexto proporcionado no hay informaci贸n",
103
  "the provided text does not contain",
104
  "en el contexto proporcionado, no hay informaci贸n"
@@ -109,9 +83,12 @@ def handle_query(query, index):
109
  return "No encontr茅 informaci贸n espec铆fica sobre eso en mis datos. 驴Podr铆as hacer tu pregunta de otra forma o preguntar sobre otro tema relacionado con la UPNFM y sus programas DFP?"
110
 
111
  return response
 
 
 
112
  # Initialize session state
113
  if 'messages' not in st.session_state:
114
- st.session_state.messages = [{'role': 'assistant', "content": '隆Hola! Soy tu asesor personalizado.'}]
115
 
116
  # Streamlit app initialization
117
  st.title("Chatbot de dudas DFP")
 
10
  # Load environment variables
11
  load_dotenv()
12
 
13
+ #meta-llama/Meta-Llama-3.1-70B-Instruct, mistralai/Mistral-7B-Instruct-v0.3
14
+
15
  # Configure the Llama index settings
16
  Settings.llm = HuggingFaceInferenceAPI(
17
+ model_name="mistralai/Mistral-7B-Instruct-v0.3",
18
+ tokenizer_name="mistralai/Mistral-7B-Instruct-v0.3",
19
+ context_window=4000, # Ventana de contexto del modelo
20
+ token=os.getenv("HF_TOKEN"), # Tu token de Hugging Face
21
+ max_new_tokens=512, # Puedes ajustarlo seg煤n tu necesidad
22
  generate_kwargs={"temperature": 0.1},
23
  )
24
  Settings.embed_model = HuggingFaceEmbedding(
25
+ model_name="dccuchile/bert-base-spanish-wwm-cased" # Modelo en espa帽ol de Hugging Face
26
  )
27
 
28
  # Define the directory for persistent storage and data
 
50
  chat_text_qa_msgs = [
51
  (
52
  "user",
53
+ """Responde en espa帽ol, m谩ximo 512 tokens. Simplifica y resume para ser directo. Eres Lobito, asistente de la UPNFM. Da respuestas precisas basadas en el contexto dado sobre la UPNFM y la DFP. Si la pregunta no coincide, sugiere reformularla. Identifica secciones relevantes del contexto y organiza respuestas l贸gicamente si abarca varias secciones.
54
+ Contexto:
55
+ {context_str}
56
+ Pregunta:
57
+ {query_str}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
  """
59
  )
60
  ]
 
73
 
74
  # Palabras y frases a evitar en las respuestas
75
  palabras_prohibidas = [
 
76
  "en el contexto proporcionado no hay informaci贸n",
77
  "the provided text does not contain",
78
  "en el contexto proporcionado, no hay informaci贸n"
 
83
  return "No encontr茅 informaci贸n espec铆fica sobre eso en mis datos. 驴Podr铆as hacer tu pregunta de otra forma o preguntar sobre otro tema relacionado con la UPNFM y sus programas DFP?"
84
 
85
  return response
86
+
87
+
88
+
89
  # Initialize session state
90
  if 'messages' not in st.session_state:
91
+ st.session_state.messages = [{'role': 'assistant', "content": '隆Hola!, me llamo Lobito. Soy tu asesor personalizado.'}]
92
 
93
  # Streamlit app initialization
94
  st.title("Chatbot de dudas DFP")