vedsadani commited on
Commit
aaee4c9
1 Parent(s): 3e716d4

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -9
app.py CHANGED
@@ -44,12 +44,12 @@ def get_sql_query(description):
44
  {"role": "user", "content": f'{prompt}'},
45
  ]
46
  )
 
47
 
48
  except Exception as e:
49
  print(f'The following error ocurred: {e}\n')
50
- pass
51
 
52
- sql_query = completion.choices[0].message.content.strip().split('```sql')[1].split('```')[0]
53
  return sql_query
54
 
55
  schema = fetch_table_schema(project_id, dataset_id, table_id)
@@ -59,16 +59,18 @@ def execute_sql_query(query):
59
 
60
  try:
61
  result = client.query(query).to_dataframe()
62
- message = f'The query : {query}\n was successfully executed and returned the above result.\n'
63
 
64
  except Exception as e:
65
- result = 'No output returned'
66
- message = f'The query : {query}\n could not be executed due to exception {e}\n'
67
 
68
  return result, message
69
 
70
  def echo(text):
71
  query = get_sql_query(text)
 
 
72
  result, message = execute_sql_query(query)
73
  return result, message
74
 
@@ -79,6 +81,13 @@ def gradio_interface(text):
79
  else:
80
  return result, message
81
 
 
 
 
 
 
 
 
82
  demo = gr.Blocks(
83
  title="Text-to-SQL",
84
  theme='remilia/ghostly',
@@ -101,7 +110,7 @@ with demo:
101
  with gr.Row():
102
  with gr.Column(scale=1):
103
  text_input = gr.Textbox(label="Enter your query")
104
- button = gr.Button("Submit")
105
  gr.Examples([
106
  'Find the correlation between RTT and Jitter for each Market',
107
  'Find the variance in Jitter for each 5G_Reliability_Category',
@@ -117,10 +126,10 @@ with demo:
117
 
118
  def update_output(text):
119
  result, message = gradio_interface(text)
120
- if isinstance(result, pd.DataFrame):
121
- return gr.update(visible=True), result, message
122
  else:
123
- return gr.update(visible=False), result, message
124
 
125
  button.click(update_output, inputs=text_input, outputs=[output_df, output_text])
126
 
 
44
  {"role": "user", "content": f'{prompt}'},
45
  ]
46
  )
47
+ sql_query = completion.choices[0].message.content.strip().split('```sql')[1].split('```')[0]
48
 
49
  except Exception as e:
50
  print(f'The following error ocurred: {e}\n')
51
+ sql_query = None
52
 
 
53
  return sql_query
54
 
55
  schema = fetch_table_schema(project_id, dataset_id, table_id)
 
59
 
60
  try:
61
  result = client.query(query).to_dataframe()
62
+ message = f'The query:{query} was successfully executed.'
63
 
64
  except Exception as e:
65
+ result = None
66
+ message = f'The query:{query} could not be executed due to the following exception:\n{e}'
67
 
68
  return result, message
69
 
70
  def echo(text):
71
  query = get_sql_query(text)
72
+ if query is None:
73
+ return 'No query generated', 'No query generated'
74
  result, message = execute_sql_query(query)
75
  return result, message
76
 
 
81
  else:
82
  return result, message
83
 
84
+ def gradio_interface(text):
85
+ result, message = echo(text)
86
+ if isinstance(result, pd.DataFrame):
87
+ return gr.Dataframe(value=result), message
88
+ else:
89
+ return result, message
90
+
91
  demo = gr.Blocks(
92
  title="Text-to-SQL",
93
  theme='remilia/ghostly',
 
110
  with gr.Row():
111
  with gr.Column(scale=1):
112
  text_input = gr.Textbox(label="Enter your query")
113
+ button = gr.Button("Submit")
114
  gr.Examples([
115
  'Find the correlation between RTT and Jitter for each Market',
116
  'Find the variance in Jitter for each 5G_Reliability_Category',
 
126
 
127
  def update_output(text):
128
  result, message = gradio_interface(text)
129
+ if result and isinstance(result, pd.DataFrame):
130
+ return result, message, gr.update(visible=True)
131
  else:
132
+ return result, message, gr.update(visible=False)
133
 
134
  button.click(update_output, inputs=text_input, outputs=[output_df, output_text])
135