Mapu25 commited on
Commit
6fe8a28
·
verified ·
1 Parent(s): 4db67ea

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -9
app.py CHANGED
@@ -5,7 +5,7 @@ import urllib.parse
5
  # 📚 Base de conocimiento
6
  base_conocimiento = [
7
  {
8
- "claves": ["servicio", "hacen", "ofrecen"],
9
  "respuesta": "Ofrecemos préstamo de libros, asesorías, Catálogo PRIMO, renovaciones y biblioteca digital."
10
  },
11
  {
@@ -21,11 +21,11 @@ base_conocimiento = [
21
  "respuesta": "🖼️ La fototeca de la UTB conserva material fotográfico institucional e histórico. Puedes consultarla para fines académicos o de investigación a través de la biblioteca...\n👉 [Visitar la fototeca](https://www.utb.edu.co/biblioteca/fototeca-historica-cartagena-de-indias/)"
22
  },
23
  {
24
- "claves": ["biblioteca utb", "pagina biblioteca","página biblioteca", "informacion de biblioteca", "web biblioteca","información de biblioteca"],
25
  "respuesta": "🌐 En la página oficial...\n👉 [Visitar biblioteca UTB](https://www.utb.edu.co/biblioteca-utb/)"
26
  },
27
  {
28
- "claves": ["prestamo", "préstamo", "prestar", "libros prestar", "cuantos libros", "cuantos dias", "tiempo prestamo"],
29
  "respuesta": """📚 Según el reglamento de préstamos:
30
 
31
  👩‍🎓 Estudiantes:
@@ -144,13 +144,13 @@ def responder(mensaje, historial):
144
  ])
145
 
146
  # 🎓 CAPACITACIONES
147
- if any(p in mensaje for p in ["capacitacion", "capacitaciones", "asesoria", "asesorias", "capacitación", "asesoría"]):
148
  respuestas.append(
149
  "🎓 Puedes agendar tu capacitación aquí:\n👉 [Agendar capacitación](https://outlook.office365.com/book/ServiciosBibliotecarios@utb.edu.co/?ismsaljsauthenabled=true)"
150
  )
151
 
152
  # 📚 HORARIO
153
- if any(p in mensaje for p in ["horario", "hora", "abren", "atienden"]):
154
  respuestas.append(
155
  "📚 Nuestro horario es:\nCampus Tecnológico: Lunes a viernes: 7am - 7pm\nSábados: 8:00am - 12m\nDaniel Lemaitre Tono: Lunes a jueves: 7am - 5pm\nViernes: 7am - 6pm\n Sábado: 8am - 2pm"
156
  )
@@ -171,15 +171,33 @@ def responder(mensaje, historial):
171
  respuestas.append(
172
  "📖 Puedes realizar tu renovación del recurso en préstamo por nuestro catálogo PRIMO:\n👉 [Renovación](https://primo.utb.edu.co/discovery/account?vid=57UTB_INST:57UTB_INST&section=loans&lang=es)"
173
  )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
174
  # 📚 INTENCIÓN DE PRÉSTAMO (PRIORIDAD ALTA)
175
- if any(p in mensaje for p in ["prestamo", "préstamo", "prestar", "cuantos libros", "cuantos dias"]):
176
  for item in base_conocimiento:
177
  if "prestamo" in item["claves"] or "préstamo" in item["claves"]:
178
  return item["respuesta"]
 
179
  # 🔎 BÚSQUEDA DE LIBROS
180
  if (
181
  ("libro" in mensaje or "autor" in mensaje)
182
- and not any(p in mensaje for p in ["prestar", "prestamo", "préstamo", "cuantos", "dias", "tiempo"])
183
  ):
184
  consulta = limpiar_consulta(mensaje).strip()
185
 
@@ -205,7 +223,7 @@ def responder(mensaje, historial):
205
  if not respuestas:
206
  return random.choice([
207
  "No tengo esa información exacta 😅, pero puedo ayudarte con la biblioteca.",
208
- "Intenta preguntarme sobre libros, horarios o servicios 📚"
209
  ])
210
 
211
  # 🚫 quitar duplicados
@@ -225,7 +243,7 @@ chat = gr.ChatInterface(
225
  value=[
226
  {
227
  "role": "assistant",
228
- "content": "👋 ¡Hola! Soy tu asistente de la biblioteca UTB 📚\n\nPuedo ayudarte con:\n\n🔎 Búsqueda de libros\n📅 Horarios\n🎓 Capacitaciones\n📊 Bases de datos\n\n¿En qué te ayudo?"
229
  }
230
  ]
231
  )
 
5
  # 📚 Base de conocimiento
6
  base_conocimiento = [
7
  {
8
+ "claves": ["servicio", "hacen", "ofrecen","servicios"],
9
  "respuesta": "Ofrecemos préstamo de libros, asesorías, Catálogo PRIMO, renovaciones y biblioteca digital."
10
  },
11
  {
 
21
  "respuesta": "🖼️ La fototeca de la UTB conserva material fotográfico institucional e histórico. Puedes consultarla para fines académicos o de investigación a través de la biblioteca...\n👉 [Visitar la fototeca](https://www.utb.edu.co/biblioteca/fototeca-historica-cartagena-de-indias/)"
22
  },
23
  {
24
+ "claves": ["biblioteca utb", "pagina de la biblioteca","página biblioteca", "informacion de biblioteca", "web biblioteca","información de biblioteca"],
25
  "respuesta": "🌐 En la página oficial...\n👉 [Visitar biblioteca UTB](https://www.utb.edu.co/biblioteca-utb/)"
26
  },
27
  {
28
+ "claves": ["prestamo", "préstamo", "prestar", "libros prestar", "cuantos libros", "cuantos dias", "tiempo prestamo","prestan"],
29
  "respuesta": """📚 Según el reglamento de préstamos:
30
 
31
  👩‍🎓 Estudiantes:
 
144
  ])
145
 
146
  # 🎓 CAPACITACIONES
147
+ if any(p in mensaje for p in ["capacitacion", "capacitaciones", "asesoria", "asesoría", "asesorías", "asesorias", "capacitación"]):
148
  respuestas.append(
149
  "🎓 Puedes agendar tu capacitación aquí:\n👉 [Agendar capacitación](https://outlook.office365.com/book/ServiciosBibliotecarios@utb.edu.co/?ismsaljsauthenabled=true)"
150
  )
151
 
152
  # 📚 HORARIO
153
+ if any(p in mensaje for p in ["horario", "hora", "abren", "atienden", "disponible","cierran","trabajan"]):
154
  respuestas.append(
155
  "📚 Nuestro horario es:\nCampus Tecnológico: Lunes a viernes: 7am - 7pm\nSábados: 8:00am - 12m\nDaniel Lemaitre Tono: Lunes a jueves: 7am - 5pm\nViernes: 7am - 6pm\n Sábado: 8am - 2pm"
156
  )
 
171
  respuestas.append(
172
  "📖 Puedes realizar tu renovación del recurso en préstamo por nuestro catálogo PRIMO:\n👉 [Renovación](https://primo.utb.edu.co/discovery/account?vid=57UTB_INST:57UTB_INST&section=loans&lang=es)"
173
  )
174
+
175
+ # 📗 RESERVAR UN LIBRO
176
+ if any(p in mensaje for p in ["reservar", "reservación", "reservo un libro"]):
177
+ respuestas.append(
178
+ "📖 Puedes realizar tu reservación del libro por nuestro catálogo PRIMO:\n👉 [Reserva minuto 2:21](youtube.com/watch?v=ahmo6iLG2Es&time_continue=142&source_ve_path=NzY3NTg&embeds_referring_euri=https%3A%2F%2Fwww.utb.edu.co%2F&embeds_referring_origin=https%3A%2F%2Fwww.utb.edu.co)"
179
+ )
180
+ # 📄 PAZ Y SALVO
181
+ if any(p in mensaje for p in ["paz y salvo", "paz y salvo de biblioteca"]):
182
+ respuestas.append(
183
+ "📖 Solicita el paz y salvo de Biblioteca:\n👉 [Link](https://forms.office.com/pages/responsepage.aspx?id=UJ5k6tInGEOcuS_P_hb9QfLUIQI8HudFvLRcZQ9xPDZUOFhFMUkzNlNOWFJXSDNSNTIwSTdRNlc5WC4u&route=shorturl)"
184
+ )
185
+ # ✍🏻 TRABAJO DE GRADO
186
+ if any(p in mensaje for p in ["trabajo de grado", "tesis","artículos"]):
187
+ respuestas.append(
188
+ "📖 Realiza el envío del trabajo de grado/tesis,artículos.:\n👉 [Link](https://primo.utb.edu.co/discovery/deposit?vid=57UTB_INST:57UTB_INST)"
189
+ )
190
+
191
  # 📚 INTENCIÓN DE PRÉSTAMO (PRIORIDAD ALTA)
192
+ if any(p in mensaje for p in ["prestamo", "préstamo", "prestar", "cuantos libros", "cuantos dias","prestan"]):
193
  for item in base_conocimiento:
194
  if "prestamo" in item["claves"] or "préstamo" in item["claves"]:
195
  return item["respuesta"]
196
+
197
  # 🔎 BÚSQUEDA DE LIBROS
198
  if (
199
  ("libro" in mensaje or "autor" in mensaje)
200
+ and not any(p in mensaje for p in ["prestar", "prestamo", "préstamo", "cuantos", "dias", "tiempo","prestan"])
201
  ):
202
  consulta = limpiar_consulta(mensaje).strip()
203
 
 
223
  if not respuestas:
224
  return random.choice([
225
  "No tengo esa información exacta 😅, pero puedo ayudarte con la biblioteca.",
226
+ "Intenta preguntarme sobre: Búsqueda de libros,📅 Horarios,🎓 Capacitaciones,📊 Bases de datos,💻Servicios,📄Reglamento,📷Fototeca,👩🏻‍💻Repositorio,📗Préstamos y renovación,🧾Paz y salvo,✍🏻Trabajos de grado"
227
  ])
228
 
229
  # 🚫 quitar duplicados
 
243
  value=[
244
  {
245
  "role": "assistant",
246
+ "content": "👋 ¡Hola! Soy tu asistente de la biblioteca UTB 📚\n\nPuedo ayudarte con:\n\n🔎 Búsqueda de libros\n📅 Horarios\n🎓 Capacitaciones\n📊 Bases de datos\n💻Servicios\n📄Reglamento\n📷Fototeca\n👩🏻‍💻Repositorio\n📗Préstamos y renovación\n🧾Paz y salvo\n✍🏻Trabajos de grado\n\n¿En qué te ayudo?"
247
  }
248
  ]
249
  )