Kr08 commited on
Commit
a314490
·
verified ·
1 Parent(s): 6e73abb

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -1
app.py CHANGED
@@ -1,5 +1,5 @@
1
  import gradio as gr
2
- from audio_processing import process_audio, print_results, load_models
3
  from transformers import AutoTokenizer, AutoModelForSeq2SeqLM, AutoModelForQuestionAnswering
4
  import spaces
5
  import torch
@@ -19,6 +19,7 @@ qa_model = AutoModelForQuestionAnswering.from_pretrained("distilbert-base-cased-
19
  qa_tokenizer = AutoTokenizer.from_pretrained("distilbert-base-cased-distilled-squad")
20
  print("Models loaded successfully.")
21
 
 
22
  @spaces.GPU
23
  def transcribe_audio(audio_file, translate, model_size):
24
  language_segments, final_segments = process_audio(audio_file, translate=translate, model_size=model_size)
@@ -42,6 +43,7 @@ def transcribe_audio(audio_file, translate, model_size):
42
 
43
  return output, full_text
44
 
 
45
  @spaces.GPU
46
  def summarize_text(text):
47
  inputs = summarizer_tokenizer(text, max_length=1024, truncation=True, return_tensors="pt").to(device)
@@ -49,6 +51,7 @@ def summarize_text(text):
49
  summary = summarizer_tokenizer.decode(summary_ids[0], skip_special_tokens=True)
50
  return summary
51
 
 
52
  @spaces.GPU
53
  def answer_question(context, question):
54
  inputs = qa_tokenizer(question, context, return_tensors="pt").to(device)
@@ -58,18 +61,21 @@ def answer_question(context, question):
58
  answer = qa_tokenizer.decode(inputs["input_ids"][0][answer_start:answer_end])
59
  return answer
60
 
 
61
  @spaces.GPU
62
  def process_and_summarize(audio_file, translate, model_size):
63
  transcription, full_text = transcribe_audio(audio_file, translate, model_size)
64
  summary = summarize_text(full_text)
65
  return transcription, summary
66
 
 
67
  @spaces.GPU
68
  def qa_interface(audio_file, translate, model_size, question):
69
  _, full_text = transcribe_audio(audio_file, translate, model_size)
70
  answer = answer_question(full_text, question)
71
  return answer
72
 
 
73
  # Main interface
74
  with gr.Blocks() as iface:
75
  gr.Markdown("# WhisperX Audio Transcription, Translation, Summarization, and QA (with ZeroGPU support)")
 
1
  import gradio as gr
2
+ from audio_processing import process_audio, load_models
3
  from transformers import AutoTokenizer, AutoModelForSeq2SeqLM, AutoModelForQuestionAnswering
4
  import spaces
5
  import torch
 
19
  qa_tokenizer = AutoTokenizer.from_pretrained("distilbert-base-cased-distilled-squad")
20
  print("Models loaded successfully.")
21
 
22
+
23
  @spaces.GPU
24
  def transcribe_audio(audio_file, translate, model_size):
25
  language_segments, final_segments = process_audio(audio_file, translate=translate, model_size=model_size)
 
43
 
44
  return output, full_text
45
 
46
+
47
  @spaces.GPU
48
  def summarize_text(text):
49
  inputs = summarizer_tokenizer(text, max_length=1024, truncation=True, return_tensors="pt").to(device)
 
51
  summary = summarizer_tokenizer.decode(summary_ids[0], skip_special_tokens=True)
52
  return summary
53
 
54
+
55
  @spaces.GPU
56
  def answer_question(context, question):
57
  inputs = qa_tokenizer(question, context, return_tensors="pt").to(device)
 
61
  answer = qa_tokenizer.decode(inputs["input_ids"][0][answer_start:answer_end])
62
  return answer
63
 
64
+
65
  @spaces.GPU
66
  def process_and_summarize(audio_file, translate, model_size):
67
  transcription, full_text = transcribe_audio(audio_file, translate, model_size)
68
  summary = summarize_text(full_text)
69
  return transcription, summary
70
 
71
+
72
  @spaces.GPU
73
  def qa_interface(audio_file, translate, model_size, question):
74
  _, full_text = transcribe_audio(audio_file, translate, model_size)
75
  answer = answer_question(full_text, question)
76
  return answer
77
 
78
+
79
  # Main interface
80
  with gr.Blocks() as iface:
81
  gr.Markdown("# WhisperX Audio Transcription, Translation, Summarization, and QA (with ZeroGPU support)")