tricktreat commited on
Commit
9111154
β€’
1 Parent(s): 0431f29

display results

Browse files
Files changed (2) hide show
  1. app.py +17 -8
  2. awesome_chat.py +4 -4
app.py CHANGED
@@ -95,8 +95,8 @@ class Client:
95
 
96
  def bot(self, messages):
97
  if len(self.OPENAI_KEY) == 0 or not self.OPENAI_KEY.startswith("sk-") or len(self.HUGGINGFACE_TOKEN) == 0 or not self.HUGGINGFACE_TOKEN.startswith("hf_"):
98
- return messages
99
- message = chat_huggingface(self.all_messages, self.OPENAI_KEY, self.HUGGINGFACE_TOKEN)["message"]
100
  urls, image_urls, audio_urls, video_urls = self.extract_medias(message)
101
  self.add_message(message, "assistant")
102
  messages[-1][1] = message
@@ -118,9 +118,12 @@ class Client:
118
  messages = messages + [((None, (f"public/{video_url}",)))]
119
  # else:
120
  # messages = messages + [((None, (f"{video_url}",)))]
121
- return messages
122
-
123
- with gr.Blocks() as demo:
 
 
 
124
  state = gr.State(value={"client": Client()})
125
  gr.Markdown("<h1><center>HuggingGPT</center></h1>")
126
  gr.Markdown("<p align='center'><img src='https://i.ibb.co/qNH3Jym/logo.png' height='25' width='95'></p>")
@@ -147,8 +150,14 @@ with gr.Blocks() as demo:
147
  ).style(container=False)
148
  with gr.Column(scale=0.15, min_width=0):
149
  btn3 = gr.Button("Submit").style(full_height=True)
 
 
 
 
 
 
 
150
 
151
- chatbot = gr.Chatbot([], elem_id="chatbot").style(height=500)
152
 
153
  with gr.Row().style():
154
  with gr.Column(scale=0.85):
@@ -173,10 +182,10 @@ with gr.Blocks() as demo:
173
  return state["client"].bot(chatbot)
174
 
175
  openai_api_key.submit(set_key, [state, openai_api_key], [openai_api_key])
176
- txt.submit(add_text, [state, chatbot, txt], [chatbot, txt]).then(bot, [state, chatbot], chatbot)
177
  hugging_face_token.submit(set_token, [state, hugging_face_token], [hugging_face_token])
178
  btn1.click(set_key, [state, openai_api_key], [openai_api_key])
179
- btn2.click(add_text, [state, chatbot, txt], [chatbot, txt]).then(bot, [state, chatbot], chatbot)
180
  btn3.click(set_token, [state, hugging_face_token], [hugging_face_token])
181
 
182
  gr.Examples(
 
95
 
96
  def bot(self, messages):
97
  if len(self.OPENAI_KEY) == 0 or not self.OPENAI_KEY.startswith("sk-") or len(self.HUGGINGFACE_TOKEN) == 0 or not self.HUGGINGFACE_TOKEN.startswith("hf_"):
98
+ return messages, {}
99
+ message, results = chat_huggingface(self.all_messages, self.OPENAI_KEY, self.HUGGINGFACE_TOKEN)
100
  urls, image_urls, audio_urls, video_urls = self.extract_medias(message)
101
  self.add_message(message, "assistant")
102
  messages[-1][1] = message
 
118
  messages = messages + [((None, (f"public/{video_url}",)))]
119
  # else:
120
  # messages = messages + [((None, (f"{video_url}",)))]
121
+ # replace int key to string key
122
+ results = {str(k): v for k, v in results.items()}
123
+ return messages, results
124
+
125
+ css = ".json {height: 527px; overflow: scroll;} .json-holder {height: 527px; overflow: scroll;}"
126
+ with gr.Blocks(css=css) as demo:
127
  state = gr.State(value={"client": Client()})
128
  gr.Markdown("<h1><center>HuggingGPT</center></h1>")
129
  gr.Markdown("<p align='center'><img src='https://i.ibb.co/qNH3Jym/logo.png' height='25' width='95'></p>")
 
150
  ).style(container=False)
151
  with gr.Column(scale=0.15, min_width=0):
152
  btn3 = gr.Button("Submit").style(full_height=True)
153
+
154
+
155
+ with gr.Row().style():
156
+ with gr.Column(scale=0.6):
157
+ chatbot = gr.Chatbot([], elem_id="chatbot").style(height=500)
158
+ with gr.Column(scale=0.4):
159
+ results = gr.JSON(elem_classes="json")
160
 
 
161
 
162
  with gr.Row().style():
163
  with gr.Column(scale=0.85):
 
182
  return state["client"].bot(chatbot)
183
 
184
  openai_api_key.submit(set_key, [state, openai_api_key], [openai_api_key])
185
+ txt.submit(add_text, [state, chatbot, txt], [chatbot, txt]).then(bot, [state, chatbot], [chatbot, results])
186
  hugging_face_token.submit(set_token, [state, hugging_face_token], [hugging_face_token])
187
  btn1.click(set_key, [state, openai_api_key], [openai_api_key])
188
+ btn2.click(add_text, [state, chatbot, txt], [chatbot, txt]).then(bot, [state, chatbot], [chatbot, results])
189
  btn3.click(set_token, [state, hugging_face_token], [hugging_face_token])
190
 
191
  gr.Examples(
awesome_chat.py CHANGED
@@ -839,21 +839,21 @@ def chat_huggingface(messages, openaikey = None, huggingfacetoken = None, return
839
  logger.info(task_str)
840
 
841
  if "error" in task_str:
842
- return {"message": str(task_str)}
843
  else:
844
  task_str = task_str.strip()
845
 
846
  if task_str == "[]": # using LLM response for empty task
847
  record_case(success=False, **{"input": input, "task": [], "reason": "task parsing fail: empty", "op": "chitchat"})
848
  response = chitchat(messages, openaikey)
849
- return {"message": response}
850
  try:
851
  tasks = json.loads(task_str)
852
  except Exception as e:
853
  logger.debug(e)
854
  response = chitchat(messages, openaikey)
855
  record_case(success=False, **{"input": input, "task": task_str, "reason": "task parsing fail", "op":"chitchat"})
856
- return {"message": response}
857
 
858
 
859
  tasks = unfold(tasks)
@@ -908,4 +908,4 @@ def chat_huggingface(messages, openaikey = None, huggingfacetoken = None, return
908
  answer = {"message": response}
909
  record_case(success=True, **{"input": input, "task": task_str, "results": results, "response": response, "during": during, "op":"response"})
910
  logger.info(f"response: {response}")
911
- return answer
 
839
  logger.info(task_str)
840
 
841
  if "error" in task_str:
842
+ return str(task_str), {}
843
  else:
844
  task_str = task_str.strip()
845
 
846
  if task_str == "[]": # using LLM response for empty task
847
  record_case(success=False, **{"input": input, "task": [], "reason": "task parsing fail: empty", "op": "chitchat"})
848
  response = chitchat(messages, openaikey)
849
+ return response, {}
850
  try:
851
  tasks = json.loads(task_str)
852
  except Exception as e:
853
  logger.debug(e)
854
  response = chitchat(messages, openaikey)
855
  record_case(success=False, **{"input": input, "task": task_str, "reason": "task parsing fail", "op":"chitchat"})
856
+ return response, {}
857
 
858
 
859
  tasks = unfold(tasks)
 
908
  answer = {"message": response}
909
  record_case(success=True, **{"input": input, "task": task_str, "results": results, "response": response, "during": during, "op":"response"})
910
  logger.info(f"response: {response}")
911
+ return response, results