Spaces:
Sleeping
Sleeping
import gradio as gr | |
import spaces | |
import torch | |
import io | |
import os.path | |
import urllib.request | |
import whisper | |
os.makedirs("/home/user/.cache/whisper") | |
urllib.request.urlretrieve( | |
"https://openaipublic.azureedge.net/main/whisper/models/d7440d1dc186f76616474e0ff0b3b6b879abc9d1a4926b7adfa41db2d497ab4f/medium.en.pt", | |
"/home/user/.cache/whisper/medium.en.pt" | |
) | |
writer = whisper.utils.get_writer("srt", "/dev/null") | |
def generate(file, progress=gr.Progress(track_tqdm=True)): | |
# get file to type bytes somehow | |
model = whisper.load_model("medium.en", device="cuda") | |
audio = whisper.load_audio(file) | |
result = model.transcribe(audio, verbose=False) | |
out = io.StringIO() | |
writer.write_result(result, out) | |
return out.getvalue() | |
gr.Interface(fn=generate, inputs=gr.File(type="filepath"), outputs=gr.Text()).launch() |