File size: 1,500 Bytes
6c226f9
986c28b
5bcf187
c01ffa1
5bcf187
c01ffa1
5bcf187
3c0cd8e
bab1585
 
6c226f9
59659ec
 
6c226f9
13e0565
af85e54
3c0cd8e
85b6c52
59659ec
85b6c52
5bcf187
85b6c52
 
 
59659ec
5bcf187
85b6c52
 
 
 
5bcf187
 
 
6c226f9
5bcf187
 
6c226f9
5208902
5bcf187
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import gradio as gr
from  whisper_cs_dev import generate
from AinaTheme import theme  
import spaces

@spaces.GPU
def transcribe(inputs, model_version):
    if inputs is None:
        raise gr.Error("Cap fitxer d'àudio introduit! Si us plau pengeu un fitxer "\
                       "o enregistreu un àudio abans d'enviar la vostra sol·licitud")

    use_v2_fast = model_version == "v2_fast"
    return generate(audio_path=inputs, use_v2_fast=use_v2_fast)

description_string = "Transcripció automàtica de micròfon o de fitxers d'àudio.\n Aquest demostrador s'ha desenvolupat per"\
              " comprovar els models de reconeixement de parla per a enregistraments estèreo de mòbils."

def clear():
    return None, "v2_fast"

with gr.Blocks() as demo:
    gr.Markdown(description_string)
    with gr.Row():
        with gr.Column(scale=1):
            model_version = gr.Dropdown(label="Model Version", choices=["v2_fast", "v2.0"], value="v2_fast")
            input = gr.Audio(sources=["upload", "microphone"], type="filepath", label="Audio")

        with gr.Column(scale=1):
            output = gr.Textbox(label="Output", lines=8)

    with gr.Row(variant="panel"):
        clear_btn = gr.Button("Clear")
        submit_btn = gr.Button("Submit", variant="primary")

    submit_btn.click(fn=transcribe, inputs=[input, model_version], outputs=[output])
    clear_btn.click(fn=clear, inputs=[], outputs=[input, model_version], queue=False)

if __name__ == "__main__":
    demo.launch()