anumaurya114exp commited on
Commit
0d9e5d5
·
1 Parent(s): f4848b6

added fine tuned model tab

Browse files
Files changed (1) hide show
  1. app.py +39 -3
app.py CHANGED
@@ -43,6 +43,17 @@ queryHelper = QueryHelper(gptInstance=gptInstance,
43
  dbEngine=dbEngine,
44
  getSampleDataForTablesAndCols=getSampleDataForTablesAndCols)
45
 
 
 
 
 
 
 
 
 
 
 
 
46
  def checkAuth(username, password):
47
  global ADMIN, PASSWD
48
  if username == ADMIN and password == PASSWD:
@@ -65,12 +76,31 @@ def respond(message, chatHistory):
65
  saveLog(errorMessage, 'error')
66
  raise ValueError(str(e))
67
  queryGenerated = extractSqlFromGptResponse(botMessage)
68
- logMessage = {"userInput":message, "tablesColsSelectedByGpt":str(prospectTablesAndCols) , "queryGenerated":queryGenerated, "completeGptResponse":botMessage}
69
  saveLog(logMessage)
70
  chatHistory.append((message, botMessage))
71
  time.sleep(2)
72
  return "", chatHistory
73
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
 
75
 
76
  def preProcessSQL(sql):
@@ -195,6 +225,13 @@ with gr.Blocks() as demo:
195
  clear = gr.ClearButton([msg, chatbot])
196
  msg.submit(respond, [msg, chatbot], [msg, chatbot])
197
 
 
 
 
 
 
 
 
198
  # screen 2 : To run sql query against database
199
  with gr.Tab("Run Query"):
200
  gr.Markdown("""<h1><center> Run Query </center></h1>""")
@@ -253,5 +290,4 @@ with gr.Blocks() as demo:
253
  refreshLogs = gr.Button("Sync Log files from /data")
254
  refreshLogs.click(onSyncLogsWithDataDir, inputs=None, outputs=fileComponent)
255
 
256
- demo.launch(share=True, debug=True, ssl_verify=False, auth=checkAuth)
257
- dbEngine.connect()
 
43
  dbEngine=dbEngine,
44
  getSampleDataForTablesAndCols=getSampleDataForTablesAndCols)
45
 
46
+
47
+ openAIClient2 = OpenAI(api_key=OPENAI_API_KEY)
48
+ gptInstanceFineTuned = ChatgptManager(openAIClient2, model=GPT_MODEL_FINE_TUNED)
49
+ queryHelperFineTuned = QueryHelper(gptInstance=gptInstanceFineTuned,
50
+ schemaName=SCHEMA_NAME,platform=PLATFORM,
51
+ metadataLayout=metadataLayout,
52
+ sampleDataRows=SAMPLE_ROW_MAX,
53
+ gptSampleRows=GPT_SAMPLE_ROWS,
54
+ dbEngine=dbEngine,
55
+ getSampleDataForTablesAndCols=getSampleDataForTablesAndCols)
56
+
57
  def checkAuth(username, password):
58
  global ADMIN, PASSWD
59
  if username == ADMIN and password == PASSWD:
 
76
  saveLog(errorMessage, 'error')
77
  raise ValueError(str(e))
78
  queryGenerated = extractSqlFromGptResponse(botMessage)
79
+ logMessage = {"userInput":message, "tablesColsSelectedByGpt":str(prospectTablesAndCols) , "queryGenerated":queryGenerated, "completeGptResponse":botMessage, "function":"queryHelper.getQueryForUserInput"}
80
  saveLog(logMessage)
81
  chatHistory.append((message, botMessage))
82
  time.sleep(2)
83
  return "", chatHistory
84
 
85
+ # Function to save history of chat
86
+ def respondFineTuned(message, chatHistory):
87
+ """gpt response handler for gradio ui"""
88
+ global queryHelper
89
+ try:
90
+ if "modify" in message:
91
+ botMessage, prospectTablesAndCols = queryHelperFineTuned.getQueryForUserInput(message, chatHistory)
92
+ else:
93
+ botMessage, prospectTablesAndCols = queryHelperFineTuned.getQueryForUserInput(message, [])
94
+ except Exception as e:
95
+ errorMessage = {"function":"queryHelperFineTuned.getQueryForUserInput","error":str(e), "userInput":message}
96
+ saveLog(errorMessage, 'error')
97
+ raise ValueError(str(e))
98
+ queryGenerated = extractSqlFromGptResponse(botMessage)
99
+ logMessage = {"userInput":message, "tablesColsSelectedByGpt":str(prospectTablesAndCols) , "queryGenerated":queryGenerated, "completeGptResponse":botMessage, "function":"queryHelperFineTuned.getQueryForUserInput"}
100
+ saveLog(logMessage)
101
+ chatHistory.append((message, botMessage))
102
+ time.sleep(2)
103
+ return "", chatHistory
104
 
105
 
106
  def preProcessSQL(sql):
 
225
  clear = gr.ClearButton([msg, chatbot])
226
  msg.submit(respond, [msg, chatbot], [msg, chatbot])
227
 
228
+ with gr.Tab("Query Helper Fine Tuned"):
229
+ gr.Markdown("""<h1><center> Query Helper Fine Tuned</center></h1>""")
230
+ chatbot = gr.Chatbot()
231
+ msg = gr.Textbox()
232
+ clear = gr.ClearButton([msg, chatbot])
233
+ msg.submit(respondFineTuned, [msg, chatbot], [msg, chatbot])
234
+
235
  # screen 2 : To run sql query against database
236
  with gr.Tab("Run Query"):
237
  gr.Markdown("""<h1><center> Run Query </center></h1>""")
 
290
  refreshLogs = gr.Button("Sync Log files from /data")
291
  refreshLogs.click(onSyncLogsWithDataDir, inputs=None, outputs=fileComponent)
292
 
293
+ demo.launch(share=True, debug=True, ssl_verify=False, auth=checkAuth)