realtime_translation / gradio_app.py
ubiodee's picture
Upload 4 files
58a79e3 verified
raw
history blame
867 Bytes
import gradio as gr
from transformers import pipeline, MarianMTModel, MarianTokenizer
asr = pipeline("automatic-speech-recognition", model="openai/whisper-small")
mt_model_name = "Helsinki-NLP/opus-mt-yo-en"
tokenizer = MarianTokenizer.from_pretrained(mt_model_name)
model = MarianMTModel.from_pretrained(mt_model_name)
def translate_speech(audio):
transcription = asr(audio)["text"]
inputs = tokenizer(transcription, return_tensors="pt", padding=True)
translated = model.generate(**inputs)
translation = tokenizer.decode(translated[0], skip_special_tokens=True)
return transcription, translation
iface = gr.Interface(fn=translate_speech,
inputs=gr.Audio(source="microphone", type="filepath"),
outputs=["text", "text"],
title="Yoruba to English Speech Translator")
iface.launch()