awacke1 commited on
Commit
1551d11
·
verified ·
1 Parent(s): 310f839

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +49 -41
app.py CHANGED
@@ -313,6 +313,55 @@ def extract_title(text):
313
  title = re.sub(r'[^a-zA-Z0-9_\-]', ' ', text[-200:])
314
  return title[-200:]
315
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
316
  #@st.cache_resource
317
  def process_image(image_input, user_prompt):
318
  SaveNewFile=True
@@ -392,47 +441,6 @@ def create_audio_file(filename, audio_data, should_save):
392
  else:
393
  st.warning("Audio file not saved.")
394
 
395
- def process_audio(audio_input, text_input=''):
396
- if audio_input:
397
- transcription = client.audio.transcriptions.create(
398
- model="whisper-1",
399
- file=audio_input,
400
- )
401
- st.session_state.messages.append({"role": "user", "content": transcription.text})
402
- with st.chat_message("assistant"):
403
- st.markdown(transcription.text)
404
-
405
- SpeechSynthesis(transcription.text)
406
- filename = generate_filename(transcription.text, "wav")
407
-
408
- create_audio_file(filename, audio_input, should_save)
409
-
410
- #SpeechSynthesis(transcription.text)
411
-
412
- filename = generate_filename(transcription.text, "md")
413
- create_file(filename, transcription.text, transcription.text, should_save)
414
- #st.markdown(response.choices[0].message.content)
415
-
416
- def process_audio_for_video(video_input):
417
- if video_input:
418
- try:
419
- transcription = client.audio.transcriptions.create(
420
- model="whisper-1",
421
- file=video_input,
422
- )
423
- response = client.chat.completions.create(
424
- model=MODEL,
425
- messages=[
426
- {"role": "system", "content":"""You are generating a transcript summary. Create a summary of the provided transcription. Respond in Markdown."""},
427
- {"role": "user", "content": [{"type": "text", "text": f"The audio transcription is: {transcription}"}],}
428
- ],
429
- temperature=0,
430
- )
431
- st.markdown(response.choices[0].message.content)
432
- return response.choices[0].message.content
433
- except:
434
- st.write('No transcript')
435
-
436
  def save_video(video_file):
437
  # Save the uploaded video file
438
  with open(video_file.name, "wb") as f:
 
313
  title = re.sub(r'[^a-zA-Z0-9_\-]', ' ', text[-200:])
314
  return title[-200:]
315
 
316
+ def process_audio(audio_input, text_input=''):
317
+ if audio_input:
318
+
319
+ # Check type - if it is a file we need bytes
320
+ if isinstance(audio_input, str):
321
+ with open(audio_input, "rb") as file:
322
+ audio_input = file.read()
323
+ SaveNewFile=False # file is there and this is just prompt inference
324
+ st.write(audio_input)
325
+
326
+ transcription = client.audio.transcriptions.create(
327
+ model="whisper-1",
328
+ file=audio_input,
329
+ )
330
+ st.session_state.messages.append({"role": "user", "content": transcription.text})
331
+ with st.chat_message("assistant"):
332
+ st.markdown(transcription.text)
333
+
334
+ SpeechSynthesis(transcription.text)
335
+ filename = generate_filename(transcription.text, "wav")
336
+
337
+ create_audio_file(filename, audio_input, should_save)
338
+
339
+ #SpeechSynthesis(transcription.text)
340
+
341
+ filename = generate_filename(transcription.text, "md")
342
+ create_file(filename, transcription.text, transcription.text, should_save)
343
+ #st.markdown(response.choices[0].message.content)
344
+
345
+ def process_audio_for_video(video_input):
346
+ if video_input:
347
+ try:
348
+ transcription = client.audio.transcriptions.create(
349
+ model="whisper-1",
350
+ file=video_input,
351
+ )
352
+ response = client.chat.completions.create(
353
+ model=MODEL,
354
+ messages=[
355
+ {"role": "system", "content":"""You are generating a transcript summary. Create a summary of the provided transcription. Respond in Markdown."""},
356
+ {"role": "user", "content": [{"type": "text", "text": f"The audio transcription is: {transcription}"}],}
357
+ ],
358
+ temperature=0,
359
+ )
360
+ st.markdown(response.choices[0].message.content)
361
+ return response.choices[0].message.content
362
+ except:
363
+ st.write('No transcript')
364
+
365
  #@st.cache_resource
366
  def process_image(image_input, user_prompt):
367
  SaveNewFile=True
 
441
  else:
442
  st.warning("Audio file not saved.")
443
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
444
  def save_video(video_file):
445
  # Save the uploaded video file
446
  with open(video_file.name, "wb") as f: