# Import necessary modules import gradio as gr from transformers import pipeline # Load the fine-tuned model from Hugging Face pipe = pipeline("automatic-speech-recognition", model="Futuresony/whisper-small-sw") # Function to transcribe audio def transcribe(audio): if audio is None: return "Please upload or record an audio file." print("Transcribing audio...") result = pipe(audio)["text"] return result # Gradio App with gr.Blocks() as demo: gr.Markdown("# 🎙️ Swahili Speech-to-Text Transcription App") with gr.Row(): audio_input = gr.Audio(source="microphone", type="filepath", label="🎤 Record Audio") file_input = gr.Audio(source="upload", type="filepath", label="📂 Upload Audio File") transcribe_button = gr.Button("Transcribe") output_text = gr.Textbox(label="📝 Transcription Output") transcribe_button.click(transcribe, inputs=[audio_input], outputs=output_text) transcribe_button.click(transcribe, inputs=[file_input], outputs=output_text) # Launch the app demo.launch()