gerasdf commited on
Commit
c038d5b
·
1 Parent(s): 0594bb7

enabled-disable play last while generating

Browse files
Files changed (1) hide show
  1. query.py +15 -4
query.py CHANGED
@@ -192,7 +192,7 @@ def chat(message, history, state, request:gr.Request):
192
  answer = ''
193
  for response in llm.stream(messages):
194
  answer += response.content
195
- yield answer
196
  else:
197
  add_history(state, request, "user", message)
198
 
@@ -200,8 +200,9 @@ def chat(message, history, state, request:gr.Request):
200
  answer = ' '
201
  for word in msg.split():
202
  answer += f' {word}'
203
- yield answer
204
  time.sleep(0.05)
 
205
 
206
  add_history(state, request, "ai", answer)
207
 
@@ -234,6 +235,15 @@ def play_last(history, state):
234
  response = lab11.generate(text=text, voice=whatson, stream=True)
235
  yield from response
236
 
 
 
 
 
 
 
 
 
 
237
  TEXT_TALK = "🎤 Talk"
238
  TEXT_STOP = "⏹ Stop"
239
 
@@ -296,12 +306,13 @@ def gr_main():
296
  waveform_options=gr.WaveformOptions(sample_rate=16000, show_recording_waveform=False))
297
 
298
  start_stop_rec = gr.Button(TEXT_TALK, size = "lg")
299
- play_btn = gr.Button("🔊 Play last", size = "lg", interactive=True)
300
 
301
- play_btn.click(
302
  play_last,
303
  [chatbot, state], player)
304
 
 
305
  start_stop_rec.click(
306
  lambda x:x,
307
  inputs=start_stop_rec,
 
192
  answer = ''
193
  for response in llm.stream(messages):
194
  answer += response.content
195
+ yield answer+'…'
196
  else:
197
  add_history(state, request, "user", message)
198
 
 
200
  answer = ' '
201
  for word in msg.split():
202
  answer += f' {word}'
203
+ yield answer+'…'
204
  time.sleep(0.05)
205
+ yield answer
206
 
207
  add_history(state, request, "ai", answer)
208
 
 
235
  response = lab11.generate(text=text, voice=whatson, stream=True)
236
  yield from response
237
 
238
+
239
+ def chat_chage(history):
240
+ if history:
241
+ if not history[-1][1]:
242
+ return gr.update(interactive=False)
243
+ elif history[-1][1][-1] != '…':
244
+ return gr.update(interactive=True)
245
+ return gr.update()
246
+
247
  TEXT_TALK = "🎤 Talk"
248
  TEXT_STOP = "⏹ Stop"
249
 
 
306
  waveform_options=gr.WaveformOptions(sample_rate=16000, show_recording_waveform=False))
307
 
308
  start_stop_rec = gr.Button(TEXT_TALK, size = "lg")
309
+ play_last_btn = gr.Button("🔊 Play last", size = "lg", interactive=False)
310
 
311
+ play_last_btn.click(
312
  play_last,
313
  [chatbot, state], player)
314
 
315
+ chatbot.change(chat_chage, inputs=chatbot, outputs=play_last_btn)
316
  start_stop_rec.click(
317
  lambda x:x,
318
  inputs=start_stop_rec,