Jeremy Live commited on
Commit
1b58e4c
·
1 Parent(s): cc2a812
Files changed (1) hide show
  1. app.py +30 -7
app.py CHANGED
@@ -199,6 +199,7 @@ def generate_plot(data, x_col, y_col, title, x_label, y_label):
199
 
200
  async def stream_agent_response(question: str, chat_history: List) -> Tuple[List, Dict]:
201
  """Procesa la pregunta del usuario y devuelve la respuesta del agente."""
 
202
  if not agent:
203
  error_msg = (
204
  "## ⚠️ Error: Agente no inicializado\n\n"
@@ -229,8 +230,11 @@ async def stream_agent_response(question: str, chat_history: List) -> Tuple[List
229
  if sql_query:
230
  # Ejecutar la consulta y actualizar la respuesta
231
  db_connection, _ = setup_database_connection()
232
- query_result = execute_sql_query(sql_query, db_connection)
233
- response_text += f"\n\n### 🔍 Resultado de la consulta:\n```sql\n{sql_query}\n```\n\n{query_result}"
 
 
 
234
  else:
235
  response_text = "Error: No se recibió respuesta del agente."
236
 
@@ -242,6 +246,7 @@ async def stream_agent_response(question: str, chat_history: List) -> Tuple[List
242
  error_msg = f"## ❌ Error\n\nOcurrió un error al procesar tu solicitud:\n\n```\n{str(e)}\n```"
243
  chat_history[-1][1] = error_msg
244
  yield chat_history, gr.update(visible=False)
 
245
 
246
  # Custom CSS for the app
247
  custom_css = """
@@ -376,11 +381,29 @@ def create_ui():
376
  ```
377
  """)
378
  else:
379
- gr.Markdown("""
380
- ## Sistema listo
381
-
382
- El asistente está listo para responder tus preguntas sobre la base de datos.
383
- """)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
384
 
385
  # Interfaz de chat - usando el nuevo formato de mensajes
386
  chatbot = gr.Chatbot(
 
199
 
200
  async def stream_agent_response(question: str, chat_history: List) -> Tuple[List, Dict]:
201
  """Procesa la pregunta del usuario y devuelve la respuesta del agente."""
202
+
203
  if not agent:
204
  error_msg = (
205
  "## ⚠️ Error: Agente no inicializado\n\n"
 
230
  if sql_query:
231
  # Ejecutar la consulta y actualizar la respuesta
232
  db_connection, _ = setup_database_connection()
233
+ if db_connection:
234
+ query_result = execute_sql_query(sql_query, db_connection)
235
+ response_text += f"\n\n### 🔍 Resultado de la consulta:\n```sql\n{sql_query}\n```\n\n{query_result}"
236
+ else:
237
+ response_text += "\n\n⚠️ No se pudo conectar a la base de datos para ejecutar la consulta."
238
  else:
239
  response_text = "Error: No se recibió respuesta del agente."
240
 
 
246
  error_msg = f"## ❌ Error\n\nOcurrió un error al procesar tu solicitud:\n\n```\n{str(e)}\n```"
247
  chat_history[-1][1] = error_msg
248
  yield chat_history, gr.update(visible=False)
249
+ yield chat_history, gr.update(visible=False)
250
 
251
  # Custom CSS for the app
252
  custom_css = """
 
381
  ```
382
  """)
383
  else:
384
+ if os.getenv('SPACE_ID'):
385
+ # Modo demo en Hugging Face Spaces
386
+ gr.Markdown("""
387
+ ## 🚀 Modo Demo
388
+
389
+ Esta es una demostración del asistente de base de datos SQL. Para usar la versión completa con conexión a base de datos:
390
+
391
+ 1. Clona este espacio en tu cuenta de Hugging Face
392
+ 2. Configura las variables de entorno en la configuración del espacio:
393
+ - `DB_USER`: Tu usuario de base de datos
394
+ - `DB_PASSWORD`: Tu contraseña de base de datos
395
+ - `DB_HOST`: La dirección del servidor de base de datos
396
+ - `DB_NAME`: El nombre de la base de datos
397
+ - `GOOGLE_API_KEY`: Tu clave de API de Google Gemini
398
+
399
+ **Nota:** Actualmente estás en modo de solo demostración.
400
+ """)
401
+ else:
402
+ gr.Markdown("""
403
+ ## ✅ Sistema listo
404
+
405
+ El asistente está listo para responder tus preguntas sobre la base de datos.
406
+ """)
407
 
408
  # Interfaz de chat - usando el nuevo formato de mensajes
409
  chatbot = gr.Chatbot(