Spaces:
Sleeping
Sleeping
| import whisper | |
| import gradio as gr | |
| from transformers import pipeline | |
| # Force the model to run on CPU | |
| device = "cpu" | |
| print("Running on CPU") | |
| # Load the tiny Whisper model | |
| model = whisper.load_model("base") | |
| # Load the text summarization model from Hugging Face | |
| summarizer = pipeline(task="summarization", model="facebook/bart-large-cnn") | |
| # Function to transcribe and summarize the audio file | |
| def transcribe_and_summarize(audio): | |
| # Step 1: Transcribe the audio using Whisper | |
| transcription_result = whisper_model.transcribe(audio) | |
| transcription = transcription_result['text'] | |
| # Step 2: Summarize the transcription | |
| summary = summarizer(transcription, min_length=10, max_length=100) | |
| summary_text = summary[0]['summary_text'] | |
| return transcription, summary_text | |
| # Create the Gradio interface | |
| demo = gr.Interface( | |
| fn=transcribe_and_summarize, # The function to be called for transcription | |
| inputs=gr.Audio(type="filepath", label="Upload your audio file"), # Input audio field | |
| outputs=gr.Textbox(label="Transcription"), # Output transcription | |
| title="Whisper Speech-to-Text", # Title of the interface | |
| description="Record audio using your microphone and get a transcription using the Whisper model." | |
| ) | |
| # Launch the Gradio interface | |
| demo.launch() | |