from transformers import pipeline import gradio as gr # Load Whisper model print("Loading model...") pipe = pipeline(model="jsbeaudry/oswald-large-v3-turbo-m1") print("Model loaded successfully.") # Transcription function def transcribe(audio_path): if audio_path is None: return "Please upload or record an audio file first." result = pipe(audio_path) return result["text"] # Build Gradio interface def create_interface(): with gr.Blocks(title="Oswald Turbo M1 - Haitian Creole") as demo: gr.Markdown("# 🎙️ oswald turbo m1 Creole ASR") gr.Markdown( "Upload an audio file or record your voice in Haitian Creole. " "Then click **Transcribe** to see the result." ) with gr.Row(): with gr.Column(): audio_input = gr.Audio( type="filepath", label="🎧 Upload Audio") with gr.Column(): transcribe_button = gr.Button("🔍 Transcribe") output_text = gr.Textbox(label="📝 Transcribed Text", lines=4) transcribe_button.click(fn=transcribe, inputs=audio_input, outputs=output_text) return demo if __name__ == "__main__": interface = create_interface() interface.launch()