Jeremy Live commited on
Commit
c5f62ea
Β·
1 Parent(s): 2c77fa2
Files changed (1) hide show
  1. app.py +3 -19
app.py CHANGED
@@ -355,22 +355,6 @@ def extract_sql_query(text):
355
 
356
  return None
357
 
358
- def sanitize_sql_query_text(query: str) -> str:
359
- """Normalize LLM-produced SQL text to be executable by MariaDB/MySQL.
360
-
361
- - Converts literal escape sequences ("\\n", "\\t") to spaces
362
- - Collapses excessive whitespace
363
- - Strips surrounding code block backticks if any
364
- """
365
- if not isinstance(query, str):
366
- return query
367
- q = query.strip().strip('`')
368
- # Replace escaped newlines/tabs that sometimes appear in model outputs
369
- q = q.replace("\\n", " ").replace("\\t", " ")
370
- # Collapse whitespace to single spaces
371
- q = re.sub(r"\s+", " ", q)
372
- return q
373
-
374
  def execute_sql_query(query, db_connection):
375
  """Ejecuta una consulta SQL y devuelve los resultados como una cadena."""
376
  if not db_connection:
@@ -380,7 +364,7 @@ def execute_sql_query(query, db_connection):
380
  with db_connection._engine.connect() as connection:
381
  # Ensure SQLAlchemy receives a SQL expression
382
  if sa_text is not None and isinstance(query, str):
383
- result = connection.execute(sa_text(sanitize_sql_query_text(query)))
384
  else:
385
  result = connection.execute(query)
386
  rows = result.fetchall()
@@ -561,7 +545,7 @@ async def stream_agent_response(question: str, chat_history: List[List[str]]) ->
561
  logger.info(f"Detected SQL query: {sql_query}")
562
  db_connection, _ = setup_database_connection()
563
  if db_connection:
564
- query_result = execute_sql_query(sanitize_sql_query_text(sql_query), db_connection)
565
 
566
  # Add the query and its result to the response
567
  response_text += f"\n\n### πŸ” Resultado de la consulta:\n```sql\n{sql_query}\n```\n\n{query_result}"
@@ -648,7 +632,7 @@ async def stream_agent_response(question: str, chat_history: List[List[str]]) ->
648
  logger.info(f"Second pass SQL detected: {sql_query2}")
649
  db_connection, _ = setup_database_connection()
650
  if db_connection:
651
- query_result = execute_sql_query(sanitize_sql_query_text(sql_query2), db_connection)
652
  # Append query and result to response_text for transparency
653
  response_text += f"\n\n### πŸ” Resultado de la consulta (2Βͺ pasada):\n```sql\n{sql_query2}\n```\n\n{query_result}"
654
  # Try robust markdown table parse
 
355
 
356
  return None
357
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
358
  def execute_sql_query(query, db_connection):
359
  """Ejecuta una consulta SQL y devuelve los resultados como una cadena."""
360
  if not db_connection:
 
364
  with db_connection._engine.connect() as connection:
365
  # Ensure SQLAlchemy receives a SQL expression
366
  if sa_text is not None and isinstance(query, str):
367
+ result = connection.execute(sa_text(query))
368
  else:
369
  result = connection.execute(query)
370
  rows = result.fetchall()
 
545
  logger.info(f"Detected SQL query: {sql_query}")
546
  db_connection, _ = setup_database_connection()
547
  if db_connection:
548
+ query_result = execute_sql_query(sql_query, db_connection)
549
 
550
  # Add the query and its result to the response
551
  response_text += f"\n\n### πŸ” Resultado de la consulta:\n```sql\n{sql_query}\n```\n\n{query_result}"
 
632
  logger.info(f"Second pass SQL detected: {sql_query2}")
633
  db_connection, _ = setup_database_connection()
634
  if db_connection:
635
+ query_result = execute_sql_query(sql_query2, db_connection)
636
  # Append query and result to response_text for transparency
637
  response_text += f"\n\n### πŸ” Resultado de la consulta (2Βͺ pasada):\n```sql\n{sql_query2}\n```\n\n{query_result}"
638
  # Try robust markdown table parse